AI agent skill
Godot Gdscript Patterns
Master Godot 4 GDScript patterns including signals, scenes, state machines, and optimization. Use when building Godot games, implementing game systems, or learning GDScript best practices.
·
When to use this skill
Use Godot Gdscript Patterns when an AI agent needs a reusable SKILL.md workflow for this job: Master Godot 4 GDScript patterns including signals, scenes, state machines, and optimization. Use when building Godot games, implementing game systems, or learning GDScript best practices.
When not to use it
Skip Godot Gdscript Patterns when the task is outside the writing category, or when a more specific skill in this directory already covers the same workflow with clearer triggers.
How to install
- Personal install: create ~/.claude/skills/godot-gdscript-patterns/SKILL.md (and any bundled scripts) so Claude Code, Claude Desktop, and compatible agents can load it in every project.
- Project install: commit the same folder at .claude/skills/godot-gdscript-patterns/ so teammates get the skill with the repo.
- Restart the agent session after copying files so it re-scans the skills directory, then ask for the task in words that match the skill description.
What this skill does
# 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
```gdscript 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") @export var attack_damage: int = 10 @export var attack_cooldown: float = 0.5
# Onready (initialized when ready) @onready var sprite: Sprite2D = $Sprite2D @onready var animation: AnimationPlayer = $AnimationPlayer @onready var hitbox: Area2D = $Hitbox
# Private variables (convention: underscore prefix) var _health: int var _can_attack: bool = true
func _ready() -> void: _health = max_health
func _physics_process(delta: float) -> void: var direction := Input.get_vector("left", "right", "up", "down") velocity = direction * speed move_and_slide()
func take_damage(amount: int) -> void: var actual_damage := int(amount * (1.0 - damage_reduction)) _health = max(_health - actual_damage, 0) health_changed.emit(_health)
if _health <= 0: died.emit() ```
## Detailed patterns and worked examples
Detailed pattern documentation lives in `references/details.md`. Read that file when the navigation tier above is insufficient.
Intended uses
- Building games with Godot 4
- Implementing game systems in GDScript
- Designing scene architecture
- Managing game state
- Optimizing GDScript performance
- Learning Godot best practices
Related skills
Related skills in this directory, for comparison before you install another skill.
writing
Academic Text Refinement Assistant
A reusable prompt for asking an AI assistant to work as Academic Text Refinement Assistant.
writing
Analyze Previous Year Question Papers
A reusable prompt for asking an AI assistant to work as Analyze Previous Year Question Papers.
writing
Article Summary and Comprehension
A reusable prompt for asking an AI assistant to work as Article Summary and Comprehension.
writing
Bats Testing Patterns
Master Bash Automated Testing System (Bats) for comprehensive shell script testing. Use when writing tests for shell scripts, CI/CD pipelines, or requiring test-driven development of shell utilities.