Shit! It's evolving by fruitfly
A raycasting-based software renderer driving a very short first-person-shooter.
Story (if you need one): Security Officer Barneby gets back from vacation to Mars City's Research Facility for Slimy Slime (RFSS). What he finds is... well, you have to find out yourself.
UPDATE: Added a no-audio version as there is a problem for some people when loading the game. If the normal Web-version does not work, try this one.
UPDATE 2: Thanks for the tip entrusC. I guess the audio-bug during loading could be fixed now.
The JAR file contains the sources.
If you don't want to use the web-link. Download the JAR file and start from the commandline with "java -jar LD24.jar".
Story (if you need one): Security Officer Barneby gets back from vacation to Mars City's Research Facility for Slimy Slime (RFSS). What he finds is... well, you have to find out yourself.
UPDATE: Added a no-audio version as there is a problem for some people when loading the game. If the normal Web-version does not work, try this one.
UPDATE 2: Thanks for the tip entrusC. I guess the audio-bug during loading could be fixed now.
The JAR file contains the sources.
If you don't want to use the web-link. Download the JAR file and start from the commandline with "java -jar LD24.jar".
Ratings
| Coolness | 79% | 2 |
| Overall | 3.32 | 191 |
| Audio | 2.21 | 437 |
| Fun | 3.20 | 173 |
| Graphics | 3.55 | 150 |
| Humor | 3.32 | 64 |
| Innovation | 2.28 | 603 |
| Mood | 3.21 | 114 |
| Theme | 2.90 | 373 |
I really want to play this game, it looks great and I want to check out your bespoke raycasting engine.
[shititsevolving]$ java -jar LD24.jar
Initializing game...
Initializing Input...
Initializing Textures...
Initializing Screen...
Initializing Renderer...
Initializing AudioManager...
Exception in thread "Thread-1" java.lang.RuntimeException: java.io.IOException: mark/reset not supported
at fruitfly.ld24.audio.Audio.<init>(Audio.java:16)
at fruitfly.ld24.audio.AudioManager.init(AudioManager.java:10)
at fruitfly.ld24.Game$1.run(Game.java:85)
at java.lang.Thread.run(Thread.java:679)
Caused by: java.io.IOException: mark/reset not supported
at java.util.zip.InflaterInputStream.reset(InflaterInputStream.java:286)
at java.io.FilterInputStream.reset(FilterInputStream.java:217)
at com.sun.media.sound.SoftMidiAudioFileReader.getAudioInputStream(SoftMidiAudioFileReader.java:135)
at javax.sound.sampled.AudioSystem.getAudioInputStream(AudioSystem.java:1111)
at fruitfly.ld24.audio.Audio.<init>(Audio.java:12)
... 3 more
To be on the same side, I have recompile it with Java 1.5 compatibility level.
Initializing AudioManager...
Exception in thread "Thread-14" java.lang.RuntimeException: java.io.IOException: mark/reset not supported
at fruitfly.ld24.audio.Audio.<init>(Audio.java:16)
at fruitfly.ld24.audio.AudioManager.init(AudioManager.java:10)
at fruitfly.ld24.Game$1.run(Game.java:87)
at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: mark/reset not supported
at java.util.zip.InflaterInputStream.reset(Unknown Source)
at com.sun.media.sound.SoftMidiAudioFileReader.getAudioInputStream(Unknown Source)
at javax.sound.sampled.AudioSystem.getAudioInputStream(Unknown Source)
at fruitfly.ld24.audio.Audio.<init>(Audio.java:12)
... 3 more
Will come back later to see if this has been fixed. The screenshots look great!
Like the shadows on the walls when firing, the controls were easy and worked well. I did get stuck in a few places and had to shimmy my way out. I did like it, a good old Doom throw back. Sweet!
Loved the title, the graphics, the light from the gun and the enemies.
Simple good old style shootem up!
PS You've left a comment my game was crashing, can you please try it again? I've added a missing dll into archive and now it seems to work! Thanks!
I gotta say, the dynamics are good, the collisions are good, the idea is good, but the controls are awful. A and D usually strafe, so you can keep aiming at what you're shooting at. Instead, I get eaten 10% of the time, which would be fine except you have to start all over. Overall, good game.
Exception in thread "Thread-1" java.lang.RuntimeException: javax.sound.sampled.LineUnavailableException: line with format PCM_SIGNED 44100.0 Hz, 16 bit, stereo, 4 bytes/frame, little-endian not supported.
at fruitfly.ld24.audio.Audio.<init>(Audio.java:16)
at fruitfly.ld24.audio.AudioManager.init(AudioManager.java:11)
at fruitfly.ld24.Game$1.run(Game.java:87)
at java.lang.Thread.run(Thread.java:662)
...
Overall nice game - reminds me a lot of the old doom times. Did you also write the raytracer within the 48h? If so this is really astonishing!!! Btw: where is the source? ;)
I change the code according to the top-answer in the post. I hope it will help.
Regarding your questions: Yes, everything was done within the 48 hours; including the raycaster. And der sources can be found in the jar together with the binaries. For the non-java people: A jar is just a renamed zip-file.