
Godot Gdscript Patterns
Solid patterns for anyone building games in Godot 4 who wants to write maintainable GDScript instead of spaghetti code. Shows you proper state machine architecture, signal-based communication, and resource management patterns that actually scale beyond prototypes. The autoload singleton examples are especially useful for game managers and event buses. Covers the specific GDScript syntax you need like @export decorators, @onready variables, and proper typing. If you're coming from other engines or just starting with Godot, this will save you from common architectural mistakes that make refactoring painful later.
- install copies · 90 days. Times the install command was copied on this site in the last 90 days, bots filtered.
- 39
- skills.sh installs
- 18.3K
- GitHub stars
- 42.4K
- last updated
- Aug 21, 2026
Install
$ npx -y skills add wshobson/agents --skill godot-gdscript-patterns --agent claude-codeInstalls into .claude/skills of the current project.
Files
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")
@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
Sponsors
Details
- Repository
- github.com/wshobson/agents
- Category
- Game Development
More from wshobson/agents
All 174- Github Actions Templates18.1K
- Database Migration18K
- Data Storytelling17.6K
- Backtesting Frameworks17.5K
- Kpi Dashboard Design17.2K
- Python Code Style17.1K
- Openapi Spec Generation17K
- Interaction Design17K
- Design System Patterns16.7K
- Terraform Module Library16.1K
- React Native Design16.1K
- React State Management15.9K
- Solidity Security15.8K
- Uv Package Manager15.7K
- React Native Architecture15.6K
- Gdpr Data Handling15.4K
- Python Project Structure15.4K
- Accessibility Compliance15.2K
- K8s Security Policies15.1K
- Monorepo Management15K
- Python Error Handling14.7K
- Rag Implementation14.4K
- Deployment Pipeline Design14.2K
- Changelog Automation14.2K