GoatEngine is a 2D cross-platform opiniated Java game developpement engine based on the libGDX framework. Being based on libGDX it works on Windows, Linux, Mac OS X, Android, WebGL enabled browsers and iOS.
It was first developped as an extension of a school project in order to help me create more games quickly in a structured manner. It is based on a Entity-Component-System (ECS) architecture. For more information see the documentation
- 2D
- Cross-platform
- OpenGL
- Entity-Component-System
- Box2D physics integrated
- Lua Scriptable
- Particle System
- Entity Prefab
- prefab config in lua based DSL (supporting inheritance)
- AI
- Behaviour trees
- A* pathfinding
- Utilities (Game Framework)
- Premade Components
- Premade scripts
- Premade entities
The game Framework is a set of foundation components, scripts and classes that provide basic structure and functions to a game. It is a core library aimed to help the dev of a game for its paticular needs in order to hide as much as possible the lower-level details of the game engine. It helps to solve tricky problems in game dev (entity movement, user/ai input, etc.) and reduce boilerplate code. for more info see the documentation.
The documentation is available in the wiki.
To report issues, use the issue tracker of this repo.