All skills
thedivergentai avatar

/godot-save-load-systems

@9d6e91e

Expert blueprint for save/load systems using JSON/binary serialization, PERSIST group pattern, versioning, and migration. Covers player progress, settings, game state persistence, and error recovery. Use when implementing save systems OR data persistence. Keywords save, load, JSON, FileAccess, user://, serialization, version migration, PERSIST group.

Use this Skill: https://skilld.dev/gh/thedivergentai/gd-agentic-skills/godot-save-load-systems

This session only. Nothing lands on disk.

referencesmigration-notes.md

≈794 tokens on demand. Your agent reads this file only when SKILL.md points to it.

Migration notes: godot-save-load-systems

Incremental upgrade for topics this skill covers. Apply one hop, stabilize/test, then next. Never skip hops.

If the project is < 4.0, follow godot-version-migration era bridges (legacy → 3→4) until 4.0, then these hops. Official 3→4: Upgrading from Godot 3 to Godot 4.

3.x → 4.0

Official: Upgrading from Godot 3 to Godot 4

  • File/Directory → FileAccess/DirAccess (often static APIs).
  • ResourceSaver.save argument order swapped (resource, path).
  • Time via Time singleton (not OS); JSON helpers differ from 3.x Dictionary.to_json patterns.
  • Keep save schema versioning separate from engine hops — still bump save version when fields change.

4.0 → 4.1

Official: Upgrading to Godot 4.1

No skill-relevant breaking changes for this hop.

4.1 → 4.2

Official: Upgrading to Godot 4.2

No skill-relevant breaking changes for this hop.

4.2 → 4.3

Official: Upgrading to Godot 4.3

  • Scripted Object / typed Array binary serialization changed — round-trip all save Resource schemas.
  • Large PackedByteArray compact storage may not open in older editors — avoid downgrading save files.

4.3 → 4.4

Official: Upgrading to Godot 4.4

  • FileAccess.store_var() / store_buffer() return bool — handle write failures; never assume success.
  • @export_file Inspector values may store uid:// — resolve UIDs when loading designer-assigned default save paths.
  • Curve enforces configured min/max — remapping curves in save-slot metadata may clamp unexpectedly.

4.4 → 4.5

Official: Upgrading to Godot 4.5

  • Resource.duplicate(true) deep-copies internal resources only — use duplicate_deep(DEEP_DUPLICATE_ALL) when cloning save templates with external sub-resources.

4.5 → 4.6

Official: Upgrading to Godot 4.6

  • TSCN unique node IDs on first 4.6 save — do not key saves on ephemeral node instance ids from .tscn order.

4.6 → 4.7

Official: Upgrading to Godot 4.7

  • Packed array element assignment no longer invokes custom setters — typed-array save caches may stop emitting change signals.
  • Typed-return overrides must explicitly return — audit save-manager methods with typed returns.

Source: SKILL.md on GitHub

1 alert17d4 checks · Risk HIGH
  • Gen Agent Trust Hub17d

    The skill provides comprehensive Godot save/load patterns with strong security advice regarding RCE prevention. However, it contains a hardcoded encryption key in a script, which is a security risk if not replaced by developers.

  • Socket17d

    No alerts

  • Snyk17d

    Risk: MEDIUM · 1 issue

  • Runlayer7mo

    3/3 files flagged

Signed by skilld at 9d6e91e. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 3 weeks ago.

Activeupdated 2 months ago

README badge

README badge for thedivergentai/gd-agentic-skills/godot-save-load-systems