Great Gunner

Ok here it is all, for those of you who helped me with all my trouble getting it web started thanks.
So the first game i did was kevs space invaders with java 2d. This game is where I took it next. It is your basic vertical scrolling shooter. It contains 5 levels, 5 different enemies, and 4 gun upgrades for the player ship.

http://www.theonlineimage.com/mike/web4.jnlp

Like i said before it’s my first web start and i had it running on a few different computers using different browsers but if you have any issues please tell me and i will try to get it resolved.

Hope you guys enjoy it. Next game will include sound for sure, a proper menu using a state based system and porbably levels or spawn patterns read from files.
Mike

Maybe there’s something wrong with your JNLP file…


java.lang.Exception
	at com.sun.javaws.Launcher.continueLaunch(Unknown Source)
	at com.sun.javaws.Launcher.handleApplicationDesc(Unknown Source)
	at com.sun.javaws.Launcher.handleLaunchFile(Unknown Source)
	at com.sun.javaws.Launcher.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)

Works for me, but the islands are moving faster than the enemy planes. That makes no sense unless the planes are flying backwards, which they don’t.

Riven what OS are you running because it works no problem with windows xp for 3 computers in my house ill look over the jnlp and see if i can see something wrong.

After all the things i looked for that was one of the small details I didn’t check ill adjust the island speed tonight. Nice catch Egon lol

My shots are coming too slow for the speed that the enemies are coming at me. Other than that, good job.

Works fine here, good job! Mandriva Linux 2007 with Firefox.

you’re missusing lists somewhere, after I pressed enter to restart once I got

java.util.ConcurrentModificationException
at java.util.AbstractList$Itr.checkForComodification(Unknown Source)
at java.util.AbstractList$Itr.next(Unknown Source)
at java.util.AbstractCollection.removeAll(Unknown Source)
at Game.gameLoop(Game.java:900)
at Game.main(Game.java:1114)
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 com.sun.javaws.Launcher.executeApplication(Unknown Source)
at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

As Egon pointed out, the island should move slower than the planes. A suggestion is to have clouds under the planes that move faster than the islands, but slower than the planes. The clouds speed could vary. This would give a depth illusion.

I think the enemies are to fast. It becomes hard very fast.

If you die a bit into the game, the gun resets to the first level (I was immediately toast). Maybe it could go back one level (or two instead).

Some of the planes seem to be antialiased against white. Is it gifs? If you really need transclucent sprites, use png. But I think that for the planes, simple binary transparency work fine.

Slow the islands (and those other brown things???) down to 10% of their current speed.

(I found myself dodging the islands more than dodging enemy planes… :stuck_out_tongue: )

totally agree with the island thing, clouds also would be nice

It is also kind of fun killer when you die and in next second you die 5 more times… if a formation of planes hit you you respawn and just hit another plane in formation, or if multiple rapid shots are fired and you hit one…

Also, it would be nice if some planes move faster/slower then others, player would need to think more and improve skill more.

It’s a nice start as a 1942 clone and it works great but apart from the flying islands, why is the background not scrolling?
I’d really fix that before adding more stuff.

Nice game. Some more things which need improvement:

  • I died many times because the plane stops moving when it hits the screen edge. When I press down+right and the plane reachers the bottom of the screen, the plane should continue moving right (now it just stops and becomes cannon fodder). The same thing when hitting the left/right edges of the screen.

  • When you die, the plane should be invincible for one or two seconds (combined with a suitable visual effect - blinking or something). Otherwise you will just die right away if an enemy plane happens to be in the bottom middle of the screen.

  • The levels go up too fast and there is no feeling of progress or accomplishment. How about an end boss at the end of each level?

  • No sounds.

put in a pause also

EDIT: just to brag a little, I’ve made 14769 score :slight_smile: … I hope there was a submit high score option :slight_smile:

great first attempt, thought it was pretty cool, however would agree with the comment

you really should get the water to scroll too, apart from that its pretty good.

p.s. just a gameplay balance opinion the planes are moving too fast for the shooting, either slow down the planes (and background scrolling) or increase the firing rate of the bullets. I’d try both until it feels right.

Thanks guys for all the input. I’m going to try and fix as much as possible. First of all the islands don’t hit you i used them to give a feel that u were moving but as you said there speed is a bit off. Also i agree with the invincibility thing I’m going to implement that I didn’t have much issue with it but i see you guys are so it will go in. Other then that ill tweak speeds a bit try to add a high score online so everyone can brag (btw you beat my score and any idea how to do that would help. i thinking a .txt file online that i download, edit and upload) I don’t think I’m going to do a boss battle i kind of like the randomness but your right something needs to happen on a level up maybe nice animation. Ill post up in a day or two when i update the jar

and about
-Some of the planes seem to be anti aliased against white. Is it gifs? If you really need transclucent sprites, use png. But I think that for the planes, simple binary transparency work fine.
They were initially sprites from a game maker tutorial. They had blue backgrounds and i lazily used the wand in photo shop to make it transparent gifs. Some the wand just selected better.

Once again thanks for all the input.
MIke

Simplest way is to game connect to a script on some hosted server that will update the high scores in database… there is a good tutorial from our own woogley here:
http://www.woogley.net/misc/Highscore/

0-5: set trace level to <n>
----------------------------------------------------
java.lang.UnsupportedClassVersionError: Bad version number in .class file
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(Unknown Source)
	at java.security.SecureClassLoader.defineClass(Unknown Source)
	at com.sun.jnlp.JNLPClassLoader.defineClass(Unknown Source)
	at com.sun.jnlp.JNLPClassLoader.access$100(Unknown Source)
	at com.sun.jnlp.JNLPClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at com.sun.jnlp.JNLPClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at com.sun.jnlp.JNLPClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at com.sun.javaws.Launcher.continueLaunch(Unknown Source)
	at com.sun.javaws.Launcher.handleApplicationDesc(Unknown Source)
	at com.sun.javaws.Launcher.handleLaunchFile(Unknown Source)
	at com.sun.javaws.Launcher.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
#### Java Web Start Error:
#### null

Using Java 1.5 on Vista here.

Bill

To make it work for you: upgrade to 1.6.

To make it work for everyone:

  • compile the game with -target 1.5
  • specify in the JNLP where to fetch 1.6, which will then happen automaticly (slow, bad user-experience)

Ok Riven thanks will do that. Some time early next week im going to release a full screen version, I’ll it compile it with -target 1.5 and also change then jnlp. It will also have many of the updated features people are mentioning.
Mike

Cool!
except the new version…