last update
Apr 8, 2026
license
MITv1.0.0
format
SKILL.md
- Install
// Downloads SKILL.md into ~/.claude/skills/godot-game-builder/
$ curl -fsSL --create-dirs -o ~/.claude/skills/godot-game-builder/SKILL.md https://claudeskil.com/skills/godot-game-builder/SKILL.md - Invoke
// Inside Claude Code, type the skill name as a slash command
> /godot-game-builder give my landing page a hero treatment - Or just ask
// Claude loads the skill by itself when a request matches its description
> give my landing page a hero treatment
- name:
- Godot Game Builder
- slug:
- godot-game-builder
- version:
- v1.0.0
- license:
- MIT
- author:
- @chiragthummar16
- categories:
- tags:
- #godot#gdscript#game-dev#2d#3d
- description:
Build 2D and 3D games in Godot. GDScript, scene composition, state machines, export pipelines.
README.md
Godot Game Builder
A senior Godot engineer available as a skill. It designs node trees, writes idiomatic GDScript (or C# if that's your stack), wires input maps, handles scene transitions, and configures export presets for desktop, web, and mobile. Built for solo devs and small teams using Godot 4.x who want correct architecture instead of copy-pasted tutorial code.
When to use it
- You're starting a project and need a sane scene/node structure rather than one giant
Mainscript. - You have a player that needs movement, gravity, and animation states and want a clean state machine instead of a tangle of
ifflags. - A scene won't transition, a signal isn't firing, or
_physics_processmath is off. - You're ready to ship and need
export_presets.cfgset up for Windows, Linux, the web (WASM), or Android.
How it works
It works in real Godot terms. For 2D it reaches for CharacterBody2D with move_and_slide() and velocity; for 3D, CharacterBody3D and Node3D hierarchies. It connects signals (button.pressed.connect(_on_pressed)), defines actions in the Input Map and reads them via Input.is_action_pressed("jump"), and loads scenes through get_tree().change_scene_to_file("res://levels/level_2.tscn") or change_scene_to_packed() for preloaded PackedScenes. State machines are typically modeled as child Nodes with enter()/exit()/update(delta) methods, or an enum plus match. It respects @onready, @export, class_name, and _ready()/_process()/_physics_process() conventions, and keeps assets under res:// with .tscn/.tres resources.
Example
curl -fsSL --create-dirs -o ~/.claude/skills/godot-game-builder/SKILL.md https://claudeskil.com/skills/godot-game-builder/SKILL.md
# then, in your project:
"Add a double-jump and coyote time to my CharacterBody2D player,
driven by a state machine, and export a web build."
extends CharacterBody2D
const SPEED := 200.0
const JUMP_VELOCITY := -380.0
func _physics_process(delta: float) -> void:
if not is_on_floor():
velocity += get_gravity() * delta
if Input.is_action_just_pressed("jump") and is_on_floor():
velocity.y = JUMP_VELOCITY
velocity.x = Input.get_axis("move_left", "move_right") * SPEED
move_and_slide()
Tips & gotchas
- Put movement in
_physics_process, not_process— physics runs at a fixed tick, so frame-rate-independent motion lives there. - Godot 4 renamed plenty: it's
get_gravity(),change_scene_to_file(), andTweenis created viacreate_tween(). The skill targets 4.x and will flag 3.x snippets. - For web exports, your HTTP host must send the
Cross-Origin-Opener-PolicyandCross-Origin-Embedder-Policyheaders or threads/WASM will fail to load. - Prefer composition (small reusable scenes) over deep inheritance; instance scenes with
preload()+instantiate().
FAQ
GDScript or C#? Either. GDScript is the default and fastest to iterate; ask for C# and it uses the .NET (Mono) workflow with [Export] and [Signal] attributes.
Does it cover 3D? Yes — CharacterBody3D, cameras, lighting, and navigation, not just 2D platformers.
Which Godot version? Godot 4.x. APIs and exports assume 4.x defaults.
$ cat reviews/