This is a 2D shoot'em up game done in KTX. The main purpose of this project is simply to play around with some ideas and homemade graphics. Don't expect anything too fancy or polished here.
Work in progress.
- Uses Ashley as its ECS
- Basic movement system with acceleration and friction
- Smooth camera movement by simple asymptotic average
- Smooth translational + rotational camera shake based on trauma
- Custom prefab system (using JSON)
- Including entity hierarchy
- Components can reference other entities/components in same prefab file
- Controller support with relatively smooth aiming
- Basic support for tiled maps
- Particle system relying on LibGdx's particle system
- Supports Spine animations and skeletons
- Uses LibGdx's Box2D as physic engine
- Simple damage system with critical hits and floating damage text
- Simple loot system
- Bullet impact effects using dynamic spawning of particles
- Finite State Machines
- Aim Assist
This project uses Gradle as its build management tool. Simply run
./gradlew build
and check your /build folder for the newly generated jar files at /build/libs/client-VERSION.jar
.
Please note that (even when run from within your IDE) you need to add the VM option flag -XstartOnFirstThread
to make the application window appear on macOS.
Feel free to open up pull-requests or discuss issues with us on GitHub.
I used the Quilly-Crawler game as reference on how to get started with KTX. Also, I found Sioncore to be a good read on how to develop modular LibGdx/KTX games.
For the creation of the bullet shell effects, I found Rowdy Lemon's Youtube tutorial on shell casings extremely valuable.
For creating particle effects, I use the brilliant open-source Talos Particle Engine.
For the ideas of FSM in ECS, I found Richard Lord's view worth the read.
GNU General Public License v3.0 except for the Spine Runtime.
Please note that since the Spine Runtime dependency is used, this part of the project is licenced under the Spine Runtime Licence instead.
Some audio files (namely gun_fire-01.ogg
, gun_fire-02.ogg
and gun_fire-03.ogg
) are converted versions of the Teeworlds' Sound Effects which are licenced under the CC-BY-SA 3.0
- The "gun shell hitting the floor" and the "ka-ching" sounds are licenced under the Creative Commons Attributive Licence:
The used banger font is licenced under the SIL Open Font Licence (OFL).