Master Godot 4 GDScript patterns including signals, scenes, state machines, and optimization.
SkillScore74Maintained
Automatic
◆Coding pack
Last verified 8/29/2026
What it changes
Passed 17 of 23 test cases with the skill, and 16 of 23 without it.
Without skill70%
With skill74%
Checks it passed that the model alone missed
Declares enemy_died signal with explicit parameter types enemy: Node2D and position: Vector2.
Checks if parent node responds to get_custom_save_data before merging parent data into the save dictionary.
2 fixed15 passed either way5 still failing1 broke
Pass-rate lift
+4 pp
Tokens
+221%
Agent turns
0%
Response time
-16%
Model gemini-3.6-flashMeasured 8/29/2026v117 of 23 cases passed with skill
Tokens, turns and time describe resource use, not a dollar price.
See it in action
One of 2 test cases the skill fixed. Same model, same prompt, with and without the skill.
1 of 2
Prompt
I am creating a Saveable utility node in Godot 4 that can be attached as a child to any game entity to gather state for saving. Write a GDScript class Saveable extending Node with an exported save_id string property. Ensure that if save_id is left empty in the editor, _ready() generates a unique fallback ID derived from the node tree location, and provide a get_save_data() -> Dictionary method.
What was checked, without and with the skill
Checked
Without skill
With skill
Generates default save_id using str(get_path()) when save_id is empty.
Passed
Passed
Checks if parent node responds to get_custom_save_data before merging parent data into the save dictionary.
Missed
Passed
case-08 · gemini-3.6-flash · 8/29/2026 · answers are capped and redacted
What's inside
The instructions your model reads when the skill loads.
SKILL.md802 linessingle file
Godot GDScript Patterns
Production patterns for Godot 4.x game development with GDScript, covering architecture, signals, scenes, and optimization.
When to Use This Skill
Building games with Godot 4
Implementing game systems in GDScript
Designing scene architecture
Managing game state
Optimizing GDScript performance
Learning Godot best practices
Core Concepts
1. Godot Architecture
Node: Base building block
├── Scene: Reusable node tree (saved as .tscn)
├── Resource: Data container (saved as .tres)
├── Signal: Event communication
└── Group: Node categorization
2. GDScript Basics
class_name Player
extends CharacterBody2D
# Signals
signal health_changed(new_health: int)
signal died
# Exports (Inspector-editable)
@export var speed: float = 200.0
@export var max_health: int = 100
@export_range(0, 1) var damage_reduction: float = 0.0
@export_group("Combat")