thedivergentai/godot-mechanic-revival
Expert blueprint for player mortality loops: progress-index checkpoints, soul graves, ghost/spirit layers, I-frame restitution, world-progress persistence, and death analytics. Use when implementing respawn, shrine checkpoints, corpse-run retrieval, or second-chance mechanics. Keywords revival, respawn, checkpoint, soul grave, ghost mode, I-frames, death analytics, progress index.
npx skills add https://github.com/thedivergentai/GD-Agentic-Skills --skill godot-mechanic-revival
Mortality beyond Game Over: progress-index checkpoints, soul graves, ghost/spirit collision layers, I-frame restitution, world-progress bitmasks, and death analytics (Sekiro / Hades / Souls-like).
MANDATORY script order (read before improvising):
Player.user://.Optional layers: revival_soul_grave.gd, revival_ghost_mode.gd, revival_death_analytics.gd.
velocity and angular_velocity in revival_state_reset_guard.gd or the player will fly into a wall upon respawning.revival_checkpoint_validator.gd). Players in non-linear games may wander back to the start area; don't downgrade their respawn point.revival_checkpoint_persistence.gd to write to user:// immediately.Marker3D or Area3D nodes in the scene. Hardcoded coords break as soon as level geometry changes.queue_free()ing the player breaks UI refs and references from enemies. Disable processing, hide the mesh, and 'Revive' the existing instance instead.> MANDATORY: Read the appropriate script before implementing the corresponding pattern.
Expert singleton for the global respawn loop. Autoload boot: register as RevivalGlobalManager before level scenes. Resolves the living body with get_tree().get_first_node_in_group("Player") — put the player in group Player (exact name). Owns player_died / player_respawned; levels and UI must not queue_free() the player.
Resource-based system for saving last checkpoint and world state to disk.
Professional I-frame and health replenishment logic for post-revive stability.
Expert 'Soul Retrieval' mechanic for spawning graves at death coordinates.
Progress-aware shrine/Area3D gate. Export progress_index + checkpoint_id; on enter, call RevivalGlobalManager.set_active_checkpoint(...) only if progress_index >= RevivalGlobalManager.get_progress(). Group the detector / player interact area so backtracking cannot downgrade the active shrine. Pair with revival_checkpoint_persistence.gd for durable writes.
Professional respawn delay manager with UI and animation hooks.
Expert 'Spirit World' transition logic involving collision layer swapping.
Essential utility for purging velocity and state locks upon player respawn.
Material-swapping logic for providing clear 'Active' feedback to players.
Automatic save-trigger logic for ensuring checkpoint persistence.
Translucent, glowing "ghost" effect for downed players.
Smooth stat restoration logic using Tweens for organic recovery.
Persistent logging of death telemetry (cause, location, time) for balancing.
Don't just hide the player. Use a Spectral Shader to communicate the "Downed" state.
ShaderMaterial with additive blending and a pulsing ALPHA to the player mesh.ColorRect post-process effect to sell the "Spirit Realm" transition.Use Death Analytics to find "Difficulty Spikes".
global_position and cause_of_death to a JSON file.> 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.
FileAccess saves with an immediate write on shrine activation.user:// for checkpoint and death-analytics files so saves work outside the project folder and across platforms.last_checkpoint_id, position, triggered events) as Resource data with ResourceSaver/ResourceLoader, not ad-hoc globals.queue_free() the player.player_died / player_respawned / true_death so HUD, graves, and analytics subscribe without coupling into the Character script.Player group for respawn teleports and soul-grave pickup without brittle node paths.velocity (and clear angular impulse) on revive or residual momentum throws the body into walls.create_timer / one-shot timers so fades and UI can finish before restore.user:// for heatmaps and balancer input.ALPHA/EMISSION pulses instead of hiding the mesh.user://) so progress survives crashes mid-run.died / health-zero signals are the usual entry into revival charges, true death, and corpse-run drops.revival_death_analytics cause/position logs into Monte Carlo runs to prove difficulty spikes and I-frame TTK bands before shipping.Take thedivergentai/godot-mechanic-revival 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.