DS4: Experimental Shooter (Updated to v0.3)

A little rapid prototyping project I did over the last couple of weeks.

Arrow keys and ‘Z’ to shoot, but real points come from missile lockons triggered with ‘X’… wait as long as you can before you get hit, allowing missile locks to add up for a huge bonus. You cannot shoot while locking on, and your movement is slowed down considerably. More info at my blog.

Play it now: Windows version and Java WebStart link.

http://www.the2bears.com/images/ds4.png

http://www.the2bears.com/images/ds4_1.png

http://www.the2bears.com/images/ds4_2.png

Wow this is really cool. Love the music, fits the game perfectly. I feel like the challenge is a bit inversed though. When I first played it I (obviously not having read the directions) was expecting something along the lines of not firing bullets allowing me to lock on, but I’d still be able to move (and then the first firing of bullets would release them). I was kinda disappointed when I found out you stand still to launch missiles. Because you have to stand still, it gets really hard to dodge later on (since you can’t really dodge at all) and what ends up being the best strategy is to sit in the corner and move every 2 or 3 rows.

I think you should experiment with being able to move during lockon… and maybe go from faster —> slower instead of slower —> faster for the lockon (but perhaps much more points for a bigger combo, i.e. a multiplier based on 10% per target or something). To counteract it being too easy to spam the lockon, maybe add a 2 second delay before lockon starts? Or maybe just keep a constant lockon speed after 2 seconds; not sure what would be best.

And bullets should probably be more powerful. Like you said, missiles are the way to get a lot of points. It should also be harder to kill the enemies with them (currently it’s much much easier to wipe them out with missiles than to spread random fire).

I love the graphics, enemies, and whole feel of the game, but I just feel like the game is pushing me to do something relatively boring when there’s much more exciting stuff in this game. I’ll applaud you for trying something different (standing still) but I’d really suggest changing at least that mechanic.

nva225, some great points. I think you’re right, I’ve had a few others suggest movement (or some movement) to be allowed while locking on. I think switching to a very slow movement, requiring some deft dodging, while locking is the right approach.

I’ll probably take one more pass at the game, then call it quits. It was intended as a rapid prototype to test out that approach, and somehow tweaking it indefinitely seems out of character for that style of development ;D I’d like to do more quick games in this manner, gaining ideas (right or wrong) for more long-term projects.

Thanks again for your comments,

Bill

Hey can you explain how you did the sound? Is it embedded in something or generated on the fly somehow?

Well, I didn’t create the sounds of course. Simply using OpenAL through the LWJGL library to play .ogg files.

Bill

Well ok that was a stupid question and I actually figured out where it was shortly after posting. I guess what I really want to know is what you used to make the music file. Wouldn’t happen to be a freeware program would it?

What I meant to say was I didn’t make the music either… it’s by Lupin (you can check out his post at shmup-dev.com) . I used Audacity to convert to .ogg format.

Bill

Updated with some of the suggestions from here. Biggest change is how missiles lockon. You need to trigger this by holding down ‘X’, and you can move while doing it.

Thanks nva225 for your help.

Bill

Hmm definitely much more challenging and “game-like”, but I have to say I miss the incremental missile lock (I do like the current state better than the previous though). Could you experiment with getting something of that back in? I’m not exactly sure how you could do it and keep the game balanced but there’s something fun about holding out really long and knowing you’re getting more and more powerful as a result. Reward the stupid risks type thing. Maybe start it a tiny bit slower than it starts locking now, then max out at 2x speed over 5 seconds or something. I’m just throwing numbers out into the air though. Perhaps all it really needs is a better indicator that I’m getting crazy points by holding out longer. Whatever you do, ultimately go with what you think feels right though. I’m only guessing what I think will feel better.

Also does the movement speed of the aliens ever increase? It’s already pretty challenging, but having some sort of progression would be nice.

Got about 446k :slight_smile: could probably do better (and I might have and forgot my score) but I spent enough time playing already, heh.

Yeah, I kind of liked that about the original… the whole “just wait a bit more” thing, especially if things were out of control and the screen was full of enemies. Perhaps a smaller curve like you suggest.

The speed of the aliens never changes, but the rate at which they spawn increases as does the rate at which they fire. I really should add hiscores as well so we don’t have to remember our best :slight_smile:

Thanks for continuing to try this out.

Bill

New highscore, easier to remember this time.

Exactly 600000

Hmm…got this exception
java.lang.NullPointerException
at com.the2bears.ds4.DS4.cleanup(DS4.java:669)
at com.the2bears.ds4.DS4.main(DS4.java:187)
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)

That appears to be an error when exiting due to something else. Have you run LWJGL or other OpenGL games before?

Bill

Sure a lot of jogl games…not sure about lwjgl though…:S

Is there any more information printed out when you run ds4.bat from an already open console? There’s some initial error that triggers a shutdown, then I’m guilty of not checking for a null in the cleanup. But the stack trace you posted is a result of some different error.

Thanks,

Bill

A small update to this, fixed a couple nagging little bugs and the screen clears of enemies now upon your death. Makes it a bit easier to recover from getting killed.

Bill

Fails to launch on Mandriva 2007.1, Sun’s Java 1.6u1. Oddly, it seems to take down the Java Control Panel too, so I cannot see the stack trace. It looks like there’s a message about a missing resource, but it flits away too quickly for me to catch.

Hmmm… I haven’t been able to test the Linux one’s properly, so it’s certainly possible I missed something. I’ll take a look, and thanks for trying it out.

Bill

same error as above, could be a case problem in one of the filenames, since linux file system is case sensitive.

Just to let u know, that it works perfectly on my desktop. Maybe there is some issue with my laptop. I ll check again and repost.

NICE work!

Btw, are those explosions particle engine effects or something else? Could u share code perhaps?