This is a small Minimalistic Game project , based on a master Game Java class, with some subclasses to let keep the code ass short as possible.
This Mini'mal project propose an exploration of structure and services required by a 2D platformer.
GameObject & Scene with Behavior, Particle System with effects, Ambient and Spot Light, Resource and Manager, Renderer with plugin, PhysicEngine, World and Material, all the game ingredients are design in their simplest flavour to let understand the complexity of 2D platform game.
The future coming evolution will be Water simulation with Influencer, addon to the PhsyicEngine, Collision detection and resolution, evolution of already defined Behavior.
Based on standard Maven tooling, a simple command line will provide a JAR:
$ mvn clean install
To run the produced artifact, multiple solution :
- Execute from maven command
$ mvn exec:java
- execute the produced jar from the target directory:
$ java -jar target/game-0.0.1-SNAPSHOT-shaded.jar
After starting the latest jar file, the following picture may appear:
figure 1 - Latest enhanced minimal game framework
You can interact with the demo with the following keys :
Key | Description |
---|---|
ESCAPE | Exit from demo |
D | Switch debug display mode from level 0 to 4 (O=off) |
UP | move character up |
DOWN | move character down |
LEFT | move character left |
RIGHT | move character right |
PAGE_UP | Add more coins |
PAGE_DOWN | remove some coins |
DELETE | remove all coins |
P or PAUSE | Pause the update physic engine phase |
R | Switch rain (demonstrate particles effects) |
B | Switch background image/stars (show background possibilities) |
G | Switch gravity (show the PhysicEngine World context effect) |
if you want to contribute to the experiment, just contact me via github
McG.