Expert blueprint for survival games (Minecraft, Don't Starve, The Forest, Rust) covering needs systems, resource gathering, crafting recipes, base building, and progression balancing. Use when building open-world survival, crafting-focused, or resource management games. Keywords survival, needs system, crafting, inventory, hunger, resource gathering, base building.
npx skills add https://github.com/thedivergentai/GD-Agentic-Skills --skill godot-genre-survival
Resource scarcity, needs management, and progression through crafting define survival games.
is_equal_approx() or <= to prevent 0.0 precision misses.MeshInstance3D nodes for foliage; strictly use MultiMeshInstance3D for batched draw calls.ResourceLoader.load_threaded_request() to prevent hitches.ConfigFile or JSON for easy balancing and modding.> MANDATORY: Prefer these scripts over inline stubs. Do not paste pass architectures into scenes.
MANDATORY first read — Activity-scaled vitals, MultiMesh populate, threaded chunk load, WorkerThreadPool noise chunks (generate_noise_chunk_async), GridMap snap/place, Persist collect, deep duplicate(true).
MANDATORY for needs — Activity-scaled hunger/thirst in _physics_process (aligns with NEVER: no constant decay).
Core Resource-based grid inventory: stack limits, metadata, add/remove.
Lightweight UI↔logic slot DTO.
Serializable slot Resource with durability tracking.
Controller wiring inventory data to UI signals.
Universal harvest / pickup / world-trigger interface.
Ingredient check → consume → grant result (discovery-friendly).
| Need | Route |
|------|-------|
| Item / recipe / durability data | Custom Resource + inventory_slot_resource.gd |
| Bag / stack / weight | inventory_data.gd + modular_inventory_controller.gd — weight caps / drag-drop UI → godot-inventory-system (Do NOT re-teach grid UI here) |
| Hunger / thirst | status_depletion_manager.gd — set sprinting from movement |
| Harvest / open / pickup | interactable.gd |
| Craft | crafting_recipe_processor.gd |
| Base build snap | survival_patterns.gd place_if_empty / GridMap |
| Forest foliage | MultiMesh via populate_nature — never 10k MeshInstance3D |
| Chunk stream | load_world_chunk threaded path in survival_patterns |
| Procedural noise / biomes at scale | generate_noise_chunk_async in survival_patterns — or MANDATORY godot-procedural-generation when terrain exceeds chunk helpers |
| Phase | Peer skills | Purpose |
|-------|-------------|---------|
| 1. Data | godot-resource-data-patterns | Item/recipe Resources |
| 2. UI | godot-ui-containers, godot-inventory-system | Grid + drag/drop |
| 3. World | godot-procedural-generation, godot-3d-world-building | Noise, GridMap |
| 4. Logic | godot-signal-architecture, godot-state-machine-advanced | Needs + interaction |
| 5. Save | godot-save-load-systems | World + inventory + recipes |
Wire movement → StatusDepletionManager.sprinting. Empty vitals → gradual HP drain + warnings (never instant death). See script — do not reintroduce constant decay_rate in _process.
Stone Axe 1 yield / Steel Axe 5 yield / proximity Auto-Saw — encode as item Resource metadata, not hardcoded harvest scripts.
Re-roll spawn points outside bed/player_beds radius before enabling threat spawners.
TileMap APIs.> MANDATORY when starting base-building snap or biome/noise work: read elite-technical-patterns.md. Do NOT Load for first-pass needs/inventory/crafting — use the script catalog above.
| Topic | Reference / script |
|-------|-------------------|
| Needs / crafting / tools | key-mechanics.md + bundled survival scripts |
| Base build grid snap | elite-technical-patterns.md + base_builder.gd |
| Biome / spawn safety | elite-technical-patterns.md + biome_generator.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 in _physics_process (or _process) so vital drain stays frame-rate independent.ResourceLoader.load_threaded_request() to avoid hitching while exploring.GridMap.local_to_map / set_cell_item.is_equal_approx, Resource duplicate(true), and delta-scaled timers are foundational before vital and inventory logic.Develop React Native, Flutter, or native mobile apps with modern architecture patterns. Masters cross-platform development, native integrations, offline sync, and app store optimization. Use PROACTIVELY for mobile features, cross-platform code, or app optimization.
Serves as a reviewer of the codebase with instructions on looking for Apple App Store optimizations or rejection reasons.
Track physical units and propagate measurement uncertainty in scientific calculations using pint and uncertainties. Use for unit conversion and dimensional checking, GUM uncertainty budgets, Type A and Type B evaluation, coverage factors and expanded uncertainty, Monte Carlo propagation, significant-figure and plus-minus reporting, error propagation through curve fits, CODATA constants, auditing Python code for stripped units or broken uncertainty propagation, and order-of-magnitude plausibility checks using dimensionless groups (Reynolds, Peclet, Damkohler, Knudsen, Biot, Womersley), characteristic scales such as diffusion time or Debye length, and observed magnitude ranges. Trigger on "is this number physically reasonable", "sanity check these units", "what regime is this flow in", or a result that looks off by orders of magnitude.
Master AngularJS to Angular migration, including hybrid apps, component conversion, dependency injection changes, and routing migration.
Build, read, validate, modify SBML biological network models via the libSBML Python API. SBML Levels 1–3, reactions/kinetic laws, species, rules, FBC extension for flux balance, conversion. Interoperates with COBRApy, Tellurium/RoadRunner, COPASI. Use when programmatically constructing ODE or constraint-based metabolic/signaling models in SBML.
Use when you need to run a binary, trace execution, or observe runtime behavior. Runtime analysis via QEMU emulation, GDB debugging, and Frida hooking - syscall tracing (strace), breakpoints, memory inspection, function interception. Keywords - "run binary", "execute", "debug", "trace syscalls", "set breakpoint", "qemu", "gdb", "frida", "strace", "watch memory
Use when reverse engineering tools are missing, not working, or need configuration. Installation guides for radare2 (r2), Ghidra, GDB, QEMU, Frida, binutils, and cross-compilation toolchains. Keywords - "install radare2", "setup ghidra", "r2 not found", "qemu missing", "tool not installed", "configure gdb", "cross-compiler
Use when first encountering an unknown binary, ELF file, executable, or firmware blob. Fast fingerprinting via rabin2 - architecture detection (ARM, x86, MIPS), ABI identification, dependency mapping, string extraction. Keywords - "what is this binary", "identify architecture", "check file type", "rabin2", "file analysis", "quick scan
Take thedivergentai/godot-genre-survival 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.