A top-down 2D arena survival game built with Godot 4 and GDScript.
You are a lone survivor in a dark arena. Enemies keep pouring in from the edges and they only get faster. Dodge them, grab the coins scattered around the floor, and survive as long as you can. Three hits and it is game over.
- Top-down arena survival with a
CharacterBody2Dplayer. - WASD / arrow-key movement.
- Enemies that spawn at random edges and home in on the player.
- Score-based difficulty ramp: enemies spawn faster and move faster over time.
- Coins to collect, score, and a live HUD.
- Game over / restart flow with a persisted best score.
- GUT unit tests for scoring and difficulty.
Install Godot 4.7+ (see AGENTS.md), then:
godot --path . # play the gamegodot --headless -s addons/gut/gut_cmdln.gd -gdir=res://tests -gexitUnit tests cover the scoring rules and the difficulty ramp.
| Action | Keys |
|---|---|
| Move | WASD / Arrow keys |
| Start | Enter (title screen) |
| Restart | R (on game-over screen) |
project.godot project config: window, main scene, input map
scenes/ .tscn scenes (arena, player, enemy, coin, hud)
scripts/ GDScript, one script per scene root
tests/ GUT unit tests for pure logic
assets/ art and sound (self-drawn or CC0 packs)
- AGENTS.md - dev environment, commands, architecture, gotchas
- CONSTRAINTS.md - coding rules
- CONTRIBUTING.md - git workflow
- PLAN.md - roadmap
- CHANGELOG.md - release history
- godotengine.org - engine home and docs
- Godot docs - manual and reference
- GUT - unit test framework
- Kenney - CC0 game assets
MIT. See LICENSE.