Fleet Game

Flat Fleet is a game prototype I made in Java with lwjgl. It’s an open ended action game in the style of old vector graphics game.
I had some time between jobs to make this and I had a lot of fun with it. No one has really played it except my son, so I know there are some bugs and probably other problems that I would love to get feedback on.

www.backyardrobots.com/fleet/fleet.html

http://www.backyardrobots.com/fleet/fleet1.png

I am interested in playing this, but can’t because I run a Linux box :emo: Could you package a Linux version, and I am sure all the Mac users here would enjoy a Mac version.

Sure. I have tested a mac version but I havent tried a Linux one. It shouldn’t be too bad to make those versions. I will try that and post when they are up.

Nice game. I like this style of graphics.

So that explains the “FLEET COMMAND XXX CAPTAIN SPENCER DO YOUR HOMEWORK XXX REPEAT DO YOUR HOMEWORK” message . : )

The game has exited abruptly at two points. Once when I just left a port after having bought a new ship (it was being dragged behind me). The second time was when I was in port and clicked “Inspect”. There were no error messages, the game just quit. I am on Windows 7.

EDIT:

If you are looking for some feedback, it would be good to make the corner buttons a little more descriptive (it’s not obvious that an upward arrow would show a map). I didn’t even realize I could click on them at first. Might not be a bad idea to group them together too.

I spent a lot of time sailing aimlessly because i wasn’t sure where to go or where the action was. It would be nice to have some sort of mini-map? or something that would give you an indication of where you are, etc. as you are sailing.

Actual- thank you for trying this. I will see if I can recreate those bugs. You are supposed to drag guns and other components into the inspect box which I am sure is totally confusing.

The ‘M’ key has a map of the world. You can also click in the lower right corner to get the map. Clicking on an island will target it. Clicking on the top right is missions/ objectives.

I added a Mac and Linux version now. I have tested the Mac and I will try the Linux soon.

I fixed the bug when you click on the ‘inspect’ box. You are supposed to click on the guns on your ship and drag them to the inspection box to see their properties. Or you can click on the available components and put them into the inspection box to see if you want to buy them and put them on your ship.

Thank you for finding that bug.

Wait wait wait! I don’t think thaat’s what ray-tracing means.

Nice game though. :slight_smile:

I’ve heard it referenced as Vector Graphics.

I’d go with vector graphics, sure. I’m fairly sure ray tracing is quite different, though.

semantics, semantics.

I just downloaded the Linux version and ran it, here is the exception and stack trace:

Exception in thread “main” java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(Unknown Source)
Caused by: java.lang.UnsatisfiedLinkError: no lwjgl in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1738)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1028)
at org.lwjgl.Sys$1.run(Sys.java:73)
at java.security.AccessController.doPrivileged(Native Method)
at org.lwjgl.Sys.doLoadLibrary(Sys.java:66)
at org.lwjgl.Sys.loadLibrary(Sys.java:95)
at org.lwjgl.Sys.(Sys.java:112)
at org.lwjgl.opengl.Display.(Display.java:135)
at FourExample.main(Unknown Source)
… 5 more

so the libraries are not linked correctly on the build path.

It might be easier (both for the player to understand and for you to code) if simply clicking on the component brings up the stats in the inspect box.

I was able to figure that out but it it would make it easier on the player if they were labelled.

Two more things:

  1. A small but nice enhancement would there to be a game over screen along with the option to start a new game when a player dies, instead of just exiting.

  2. It seems like you should be able to collect floating cargo but I couldn’t figure out how to do it. I tried driving over it, stopping over it, clicking on it.

That is a great idea about the inspection box. I will try that.

In every port there is a component called ‘cargo’ You can put this in ships instead of guns. You can actually make a lot of money moving crates from one island to another but then the blue pirates attack you.

I agree also about a game over screen. Really I wanted to do more ( I don’t have to have islands for example, I was thinking about having missions that are like in mazes, and sea monsters, submarines etc. ) but I had to cut off at some point to get some feed back.

Zngga-
Thank you for trying this on Unix. I am also having trouble running the package on my computer with Ubuntu on it. I can build the project and run it in eclipse on my Ubuntu compurter, but when I export it as a ‘runable jar’ I get a folder, not an executable. I am just not that familiar with this so I am going to have to figure it out. Since it works in the IDE in Ubuntu I am pretty sure I can get it to work like it does in Mac & PC, I just have to figure out how to package it correctly. Or something.

Ah, instead of a hard game over, perhaps something like an ‘escape pod’ or the like, which can be used as an option?

Also, some sort of collision mechanic that goes beyond ‘bouncing’ off of enemies would be nice. When make a high speed escape and you just come to a dead halt when you hit a stationary enemy would nice.

When I was about to be destroyed:

Exception in thread "main" java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(Unknown Source)
Caused by: java.lang.NullPointerException
        at e.b(Unknown Source)
        at FourExample.a(Unknown Source)
        at FourExample.main(Unknown Source)
        ... 5 more

JVM’s trying to save you…

I just put up an updated version. I believe I fixed the bug where you crash sometimes when you are near death, and the crash when you click on an empty inspection box. I also implemented actual’s excellent suggestion to have the inspection box populate when you click on a component of your ships, or a component you want to buy.

I agree that I can do a better ship/ ship collision physics, but that will take a little more time then fixing the bugs. I really appreciate the suggestions and I am sorry for the bugs.

This is all very helpful to me. Thank you.

I’m just happy to see someone do a game like this, it reminds me of the old Escape Velocity games (Which were space faring rather than see faring). I mean over all? It looks great. And I honestly love the graphics style.

Another suggestion, as an alternative (Since I tend to end up getting on the bad side of the pirates really fast), is to have some option for ship-to-ship communications so that you can offer brides/buy things off close-by ships, things like that. It might be far off, but from what you’ve gotten up so far it doesn’t look as though it would be too difficult to arrange.

Thanks. That is a really interesting idea to communicate with ships. I think it is kind of confusing which ships are doing what (green/ blue / red) so some communication / status system would help. I would like to have a way to win new ship components. Once you by a component, it is available at all ports, but you have to find the ‘plan’ at a port. It would be great if you could buy or steal a gun plan from somebody, or buy it.

One problem with the vector style is that you can’t true to it and have windows. That means you can’t have pop ups, but maybe I am being too much of a purist.

Nobody seems to be having performance problems. I could make the world like 10x as big on my computer but I was worried someone would get a bad framerate. The other problem is that I don’t have enough variety in geography. I need continents or rivers or something. I think I could figure that out though.