Official v1 game project template for AeThex GameForge — planned
- GDScript 100%
| src | ||
| .gitignore | ||
| LICENSE | ||
| project.godot | ||
| README.md | ||
| template.json | ||
AeThex GameForge Template v1
The official v1 project template for AeThex GameForge. This is what gets used when you click New Project in AeThex Studio.
Unlike the starter kit (which is minimal and educational), this template is fully opinionated and production-ready. It includes a complete core architecture: event bus, scene manager, multiplayer, authentication, and a loading screen.
What's Included
| System | File | Description |
|---|---|---|
| Bootstrap | src/core/bootstrap.gd |
Initializes all systems in the correct order |
| Event Bus | src/core/event_bus.gd |
Decoupled signal-based messaging between systems |
| Scene Manager | src/core/scene_manager.gd |
Async scene transitions with loading screen |
| World | src/gameplay/world.gd |
Base class for all game worlds/levels |
| Entity | src/gameplay/entity.gd |
Base class for all game objects |
| Multiplayer | src/network/aethex_multiplayer.gd |
AeThex cloud multiplayer stub |
| Auth | src/network/aethex_auth.gd |
AeThex Passport integration |
| Loading Screen | src/ui/loading_screen.gd |
AeThex-branded loading screen |
| Main Menu | src/ui/main_menu.gd |
Play, Settings, Credits, Quit |
Prerequisites
- AeThex Engine 4.2.0-aethex or later — studio.aethex.tech/engine
- An AeThex Studio account for cloud features
How to Use This Template
In AeThex Studio, click New Project and select GameForge Template v1. The Studio will clone this template and open it in the engine.
Or manually:
git clone https://git.aethex.tech/aethex/gameforge-template-v1.git my-game
cd my-game
# Remove the git history so you start fresh
rm -rf .git
git init
git add .
git commit -m "init: start from gameforge-template-v1"
How to Customize
- Rename the project — change
config/nameinproject.godot - Replace the main menu — edit
src/ui/main_menu.gdand its scene - Add your game world — create a new scene extending
Worldinsrc/gameplay/world.gd - Add entities — create classes extending
Entityinsrc/gameplay/entity.gd - Implement cloud features — fill in the TODOs in
src/network/aethex_auth.gdandsrc/network/aethex_multiplayer.gd
Architecture Notes
Event Bus
All cross-system communication uses EventBus signals. This avoids tight coupling between systems. Example:
# Player takes damage — emit event
EventBus.player_damaged.emit(10)
# HUD listens for it — no direct reference needed
EventBus.player_damaged.connect(_on_player_damaged)
Scene Manager
Never call get_tree().change_scene_to_file() directly. Use SceneManager.go_to():
SceneManager.go_to("res://src/gameplay/world_1.tscn")
This plays the loading screen and handles the async load.
Version History
| Version | Date | Notes |
|---|---|---|
| v1.0.0 | 2025-01 | Initial release — core architecture, auth, multiplayer stubs |
Getting Help
#game-devon the AeThex Discord- docs.aethex.tech/gameforge/template