A datacenter tycoon and security-defense game for tablets. Build racks, power, and cooling; sign paying customers who run insecure services; defend against criminals (DDoS, ransomware, intrusion, credential theft). Breaches cost cash and reputation.
Think SimCity for a server hall — but every "dumb" tenant you sign is also attack surface.
Status: Roadmap P0–P6 complete. Emulator-verified, untested on real hardware. Built with Godot 4.7, GDScript, 2D. Offline, touch-first.
Floor with placed racks, the Tenants/Defenses panels, and the live economy + security HUD.
Main menu with the four scenario presets.
Economy — Place racks ($5k), fill with servers (8U/rack), pay for grid power and CRAC cooling. Sign customer leads (revenue scales with reputation). Overheat or brown-out → SLA breach → penalties, reputation loss, churn. Go bankrupt below the floor → game over.
Security — Each tenant runs a service (web/db/mail/dns/storage/game/pci/crypto) with a
misconfiguration level. Exposure = fame + misconfig + tenant count drives a daily
ThreatDirector roll that targets your softest high-value tenant. Buy defenses
(firewall, WAF, DDoS scrubbing, IDS, backups, segmentation). IDS turns silent breaches into
detected ones. Harden cuts misconfig; posture = 100 − avg misconfig.
Events — EventDirector fires random events (hardware failure, heatwave, power spike,
grid fault, investor grant, audit, archetype-driven viral spike / crypto crash) applying
temporary modifiers to cooling, grid, and power cost. Attack chance ramps with game day.
Meta — 10 achievements (persist across runs), first-run tutorial, settings (mute), 4 scenario presets (Startup / Hardened / Under Siege / Bootstrap), JSON save + autosave.
- Engine: Godot 4.7-stable (GDScript, 2D
Node2D_draw+CanvasLayerHUD) - Target: Android APK (arm64-v8a + x86_64) + Windows Desktop (x86_64 single-file
.exe), offline, portrait/landscape touch - Autoloads:
GameState(sim core),SimClock(tick/pause/speed),AudioManager(procedural UI tones built asAudioStreamWAVat runtime — zero audio assets) - Save: JSON in
user://(format v3), ConfigFile for settings/achievements - Assets: code-drawn graphics + generated audio. CC0/OSS policy in
ASSETS.md.
autoload/ game_state.gd sim_clock.gd audio_manager.gd
world/ main.gd main.tscn # grid floor, tap-place, pan/zoom
ui/ hud.gd # all UI built in code
tests/ sec_test event_test ach_test scenario_test # headless
Requires Godot 4.7 + Android export templates, Android SDK (build-tools 34), JDK 17.
# import + export signed debug APK
godot --headless --import
godot --headless --export-debug "Android" build/racksim.apk
# export single-file Windows .exe
godot --headless --export-release "Windows Desktop" build/RackSim.exe
# headless tests (all PASS)
godot --headless -s res://tests/sec_test.gd
godot --headless -s res://tests/event_test.gd
godot --headless -s res://tests/ach_test.gd
godot --headless -s res://tests/scenario_test.gdEmulator note: must use ANGLE (emulator @<avd> -gpu swangle_indirect). SwiftShader
caps GL_MAX_FRAGMENT_UNIFORM_VECTORS too low and Godot's canvas shader fails → blank screen.
Prebuilt Windows .exe and Android APK: see Releases. On
Windows, download RackSim-*-windows-x86_64.exe and run it directly — no install.
Full player's guide: MANUAL.md — every screen, control, number, and system, plus a strategy guide and numbers cheat-sheet.
| Phase | Built |
|---|---|
| P0 | Skeleton — grid, tap-place racks, clock, economy |
| P1 | Servers, power, cooling, customers, save/load, bankruptcy |
| P2 | Services, misconfig, support tickets, harden, posture |
| P3 | ThreatDirector, 4 attack types, 6 defenses, IDS, incidents |
| P4 | EventDirector — random events, temporary modifiers, difficulty ramp |
| P5 | Achievements, tutorial, settings, procedural audio |
| P6 | Main menu, 4 scenario presets |
Backlog: balancing pass · modding refactor (const → JSON) · prestige/campaign · real CC0 art/audio · on-device testing.
Built by CisoDiagonal. Security loop draws on real SOC / honeypot work.

