I've written a tower defense engine in Java 6 using the GTGE library as game engine, and LWJGL as rendering engine.
Below are the specs of the engine :
- LWJGL rendering
- Tested on windows XP and various flavours of Linux (might even try solaris/x86 soon. LWJGL does not work with Solaris/SPARC.. too bad)
- Windowed or fullscreen modes
- Screen resolution & ratio independence
- Little JFC/Swing window at game startup to select resolution and windowed/fullscreen mode
- Full SVG graphics EVEN FONTS (SVG files are rendered in-memory at game startup depending on resolution)
- Black bars are added to top/bottom or left/right when playing fullscreen on non-16:9 screens
- .properties files based game-content (no need to recompile to add/modify levels and tweak towers and enemies; possibility to easily create an add-on system)
- Particles systems (flamethrower and laser beam)
- One level featuring 10 waves of enemies
- A clone level to test the multi-level capabilities
- A third level to try out the multi-spawn-points capabilities
- A main menu with level selection and start/quit buttons
- An incredible amount of different enemies (two of them !)
- 4 different towers : Plasma tower (shoots fast and straight); Missile tower (shoots homing missiles); Laser tower (Laser beam with nice VFX); Flame tower (flamethrower)
- Each tower can be upgraded 2 times
- The player starts manually each wave of enemies
- If one of the enemies reaches the end of the level, it's "game over folks" and return to main menu
- I drew the sprites myself in Inkscape very quickly, and I suck as CG artist (meh is teh coderz), so they look ugly artistically speaking.
- The game as-is is cheated as the two most powerful towers cost 1$ to build and upgrade (testing purposes) while the weakest one is 50$ to build, 100$ for lv2, and 200$ for lv3. Can be changed in .properties text files.
Basically, anyone able to draw pretty sprites with inkscape, and able to use a text editor, could "skin" the game to their likings, create new enemies, and use those in their own levels.
You can download it as a .zip file here : http://www.mediafire.com/?ymd2a3g8w5jdupx
Once unzipped, click TDV.bat or TDV.sh depending on your OS (Windows, or Linux. Mac users can modify the .sh to have it work on their systems).
If it doesn't work, it probably means that java is not in your PATH. Edit TDV.bat to replace the word java
by (for example) "C:\Program Files\Java\jre6\bin\java.exe"
, keeping the quotes.