Expert blueprint for simulation and tycoon games (SimCity, RollerCoaster Tycoon, Factorio, Two Point Hospital) covering economy management, time progression, interconnected systems, NPC simulation, and feedback loops. Use when building management sims, tycoon games, city builders, or resource optimization games. Keywords tycoon, economy system, resource management, time scale, feedback loop, progression unlock, simulation tick.
npx skills add https://github.com/thedivergentai/GD-Agentic-Skills --skill godot-genre-simulation
Optimization, systems mastery, and satisfying feedback loops define management games.
_process(); strictly use a Tick Manager to batch updates or process entities in rotating pools.Base * pow(1.15, Level)) to maintain challenge and strategic tension.duplicate() to avoid unintentionally updating every building of that type._physics_process() or delta accumulators for deterministic simulation results.RefCounted or Data Resources to avoid the memory/CPU overhead of the SceneTree.OS.low_processor_usage_mode; strictly enable it for stationary management screens to save massive CPU/Battery life.call_deferred() for thread-safe UI updates..res formats.is_equal_approx() to prevent floating-point jitter failures in logic gates.> MANDATORY reads before implementing the matching system:
> 1. tycoon_economy.gd — integer cents / discrete stocks
> 2. sim_tick_manager.gd — _physics_process tick accumulator
> 3. simulation_tick_controller.gd — speed / pause control surface
| Need | Action |
|------|--------|
| Money / wallets | MANDATORY tycoon_economy.gd — integer cents, never float primary |
| Sim clock | MANDATORY sim_tick_manager.gd — accumulator on _physics_process |
| Speed UI | simulation_tick_controller.gd |
| Entity / load | Strategy |
|---------------|----------|
| < ~200 entities | Tick signal → direct update; UI via resource_changed only |
| Hundreds of agents | Rotate pools per tick; npc_schedule_agent.gd |
| Heavy graph / path logistics | Offload with WorkerThreadPool; call_deferred UI — see simulation_patterns.gd / economy_graph_manager.gd |
| Stationary management screens | Enable OS.low_processor_usage_mode |
Do not re-inline TycoonEconomy / SimulationTime / Worker tutorials — load the scripts.
| Phase | Skills | Purpose |
|-------|--------|---------|
| 1. Data | resources, godot-economy-system | Stocks / sinks |
| 2. Time | tick manager | Deterministic hours |
| 3. Agents | schedules / nav | NPCs & logistics |
| 4. Perf | WorkerThreadPool | Heavy ticks |
| 5. Balance | godot-monte-carlo-balancer | Bankruptcy / growth bands |
| Pitfall | Solution |
|---------|----------|
| Float money | Integer cents in tycoon_economy |
| _process sim step | Physics accumulator tick manager |
| UI every frame | Signal on resource_changed only |
| Topic | Reference / script |
|-------|-------------------|
| Economy & wallets | economy-design.md + tycoon_economy.gd |
| Sim clock / speed | time-system.md + sim_tick_manager.gd |
| Workers & facilities | entity-management.md + npc_schedule_agent.gd |
| Demand & customers | customer-demand.md |
| Feedback & dashboards | feedback-systems.md |
| Unlock progression | progression-unlocks.md |
| Production graphs / CSV bake | elite-technical-patterns.md + simulation_patterns.gd |
> Progressive disclosure: open Official Documentation links only when researching a specific API; load Related Skills when routing to a peer domain — do not preload the whole lattice.
delta (or a dedicated tick), never frame-count assumptions..tres Resources so designers retune chains without code edits.@export build costs, wages, and growth bases so balance sheets stay Inspector-driven.user:// across platforms.WorkerThreadPool, not the main-thread UI loop.Tree requires call_deferred / main-thread SceneTree rules.OS.low_processor_usage_mode on stationary management UIs to cut CPU/battery burn.NavigationServer3D.map_get_path queries for schedule-driven NPCs without per-agent node overhead.is_equal_approx, and fixed-point-safe math for currency and needs..tres assets, not hard-coded Node trees.resource_changed buses must drive UI without Labels mutating the simulation wallet.store_var, and threaded save/load.Tree/VBoxContainer layouts bound to throttled signals..tres balance sheets exist, Monte Carlo career sims prove minutes-to-milestone and bankruptcy bands before shipping growth factors.A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).
Extracts and analyzes competitors' ads from ad libraries (Facebook, LinkedIn, etc.) to understand what messaging, problems, and creative approaches are working. Helps inspire and improve your own ad campaigns.
Identifies high-quality leads for your product or service by analyzing your business, searching for target companies, and providing actionable contact strategies. Perfect for sales, business development, and marketing professionals.
Analyzes your recent Claude Code chat history to identify coding patterns, development gaps, and areas for improvement, curates relevant learning resources from HackerNews, and automatically sends a personalized growth report to your Slack DMs.
Complete App Store Optimization (ASO) toolkit for researching, optimizing, and tracking mobile app performance on Apple App Store and Google Play Store
NGS analysis toolkit. BAM to bigWig conversion, QC (correlation, PCA, fingerprints), heatmaps/profiles (TSS, peaks), for ChIP-seq, RNA-seq, ATAC-seq visualization.
Materials science toolkit. Crystal structures (CIF, POSCAR), phase diagrams, band structure, DOS, Materials Project integration, format conversion, for computational materials science.
Transforms vague UI ideas into polished, Stitch-optimized prompts. Enhances specificity, adds UI/UX keywords, injects design system context, and structures output for better generation results.
Take thedivergentai/godot-genre-simulation from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.