Skip to content
cccskills
FreePublished on GitHub

godomaster

GodoMaster — Godot 4.x game development intelligence: GDScript, nodes/scenes, 2D/3D rendering, physics, animation, UI, audio, input, shaders, networking, performance, export, file I/O, testing, localization, AI behavior, asset pipeline, and architecture tooling. Complete workflow for indie and professional game development based on official Godot documentation.

The English summary is being prepared. Showing the original description.

Run score Not tested

See how to install

Files included (22)

  • SKILL.md8.1 KB
  • references/01-godot-project-setup.md5.6 KB
  • references/02-godot-editor-mastery.md5.1 KB
  • references/03-gdscript-pro.md14.1 KB
  • references/04-godot-nodes-scenes.md8.3 KB
  • references/05-godot-2d-fundamentals.md9.8 KB
  • references/06-godot-3d-fundamentals.md13.5 KB
  • references/07-godot-physics.md8.8 KB
  • references/08-godot-animation.md9.6 KB
  • references/09-godot-ui-design.md11.5 KB
  • references/10-godot-audio.md10.4 KB
  • references/11-godot-input-system.md11.7 KB
  • references/12-godot-export-deploy.md9.9 KB
  • references/13-godot-performance.md9.4 KB
  • references/14-godot-file-io.md13.3 KB
  • references/15-godot-shaders.md11.5 KB
  • references/16-godot-networking.md14.3 KB
  • references/17-godot-testing.md8.8 KB
  • references/18-godot-architecture-tooling.md13.5 KB
  • references/19-godot-localization.md13.1 KB
  • references/20-godot-ai-behavior.md18.3 KB
  • references/21-godot-asset-pipeline.md15.0 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

GodoMaster

Complete Godot 4.x game development skill: project setup, GDScript, scene architecture, 2D/3D, physics, animation, UI, audio, input, shaders, networking, performance, export, data persistence, localization, AI behavior, and asset pipeline.

When to Use

This Skill should be used when the task involves Godot game development — writing GDScript, designing scenes, implementing gameplay systems, debugging, or optimizing.

Must Use

This Skill must be invoked in the following situations:

  • Creating or configuring a Godot project (renderer, settings, folder structure)
  • Writing, reviewing, or debugging GDScript code
  • Designing node hierarchies and scene composition
  • Implementing 2D or 3D gameplay (sprites, tilemaps, meshes, cameras)
  • Setting up physics (collisions, rigid bodies, raycasting)
  • Creating animations (AnimationPlayer, Tween, AnimationTree)
  • Building UI (menus, HUD, dialogs, themes)
  • Adding audio (music, SFX, spatial audio, audio buses)
  • Handling input (keyboard, mouse, gamepad, touch, remapping)
  • Writing shaders (2D effects, 3D materials, post-processing)
  • Implementing multiplayer/networking
  • Exporting to platforms (Windows, Mac, Linux, Web, Mobile)
  • Optimizing performance (profiling, draw calls, memory)
  • Implementing save/load and file I/O
  • Implementing localization or multi-language support (tr(), TranslationServer)
  • Building AI behavior systems (state machines, behavior trees, utility AI)
  • Working with the asset import pipeline (ResourceImporter, EditorImportPlugin, addons)
  • Creating GDExtension modules (C++ integration, godot-cpp)

Sub-skill Routing

TaskReferenceDetails
New project, renderer, .gitignorereferences/01-godot-project-setup.mdProject creation, folder structure, autoloads
Editor navigation, debug toolsreferences/02-godot-editor-mastery.mdShortcuts, panels, profiler, remote tree
GDScript code, patterns, typesreferences/03-gdscript-pro.mdType system, signals, movement, state machine
Scene tree, node types, compositionreferences/04-godot-nodes-scenes.mdNode reference, lifecycle, component pattern
Sprites, tilemaps, 2D lightingreferences/05-godot-2d-fundamentals.mdAnimatedSprite, TileMapLayer, parallax, camera
3D models, materials, environmentreferences/06-godot-3d-fundamentals.mdImport, PBR, lighting, sky, fog, navigation
Collision, physics bodies, raycastreferences/07-godot-physics.mdCharacterBody, RigidBody, Area, joints
Animation, tweens, state machinesreferences/08-godot-animation.mdAnimationPlayer, Tween, AnimationTree
Menus, HUD, themes, layoutsreferences/09-godot-ui-design.mdControl nodes, anchors, dialog system
Music, SFX, audio busesreferences/10-godot-audio.mdAudioStreamPlayer, effects, spatial audio
Input mapping, gamepad, touchreferences/11-godot-input-system.mdInput actions, remapping, virtual joystick
Export, CI/CD, store publishingreferences/12-godot-export-deploy.mdPlatform presets, optimization, distribution
Profiling, FPS, draw callsreferences/13-godot-performance.mdMonitors, batching, pooling, culling
Save/load, JSON, config filesreferences/14-godot-file-io.mdSaveManager, ConfigFile, encryption
Shaders, visual effectsreferences/15-godot-shaders.mdCanvasItem, Spatial, fog, post-processing
Multiplayer, RPC, syncreferences/16-godot-networking.mdENet, WebSocket, WebRTC, lobby, matchmaking
Unit tests, integration tests, CIreferences/17-godot-testing.mdGdUnit4, mocking, scene tests, headless CLI
Custom Resources, @tool, plugins, GDExtensionreferences/18-godot-architecture-tooling.mdResource-based architecture, @tool, GDExtension, EditorPlugin
Localization, tr(), TranslationServerreferences/19-godot-localization.md.po/.csv import, plural rules, pseudolocalization, RTL
AI, behavior trees, utility AIreferences/20-godot-ai-behavior.mdState machines, BT pattern, navigation AI, LimboAI
Asset pipeline, import plugins, addonsreferences/21-godot-asset-pipeline.mdResourceImporter, EditorImportPlugin, AssetLib distribution

Quick Reference

GDScript Essentials

# File structure
extends CharacterBody2D
class_name Player

const SPEED := 300.0
signal health_changed(new_health: int)

@export var max_health := 100
@export_range(0, 100) var start_health := 100
@export_storage var internal_state: int = 0  # 4.4+ serialized but hidden

@onready var sprite := $Sprite2D
@onready var animation := $AnimationPlayer

var health: int
var velocity := Vector2.ZERO

func _ready() -> void:
    health = start_health

func _physics_process(delta: float) -> void:
    if not is_on_floor():
        velocity.y += gravity * delta
    if Input.is_action_just_pressed("jump") and is_on_floor():
        velocity.y = jump_velocity
    var direction := Input.get_axis("move_left", "move_right")
    velocity.x = direction * speed
    move_and_slide()

Localization Quick Pattern

# Localization
func _ready() -> void:
    label.text = tr("KEY_GREETING")
    count_label.text = tr_n("1 enemy", "%d enemies", count) % count
    TranslationServer.set_locale("zh_CN")

AI Quick Pattern

# Behavior tree tick pattern
func _physics_process(delta: float) -> void:
    behavior_tree.tick(self, blackboard)

# NavigationAgent avoidance (4.4+)
nav_agent.avoidance_enabled = true
nav_agent.set_velocity(desired_velocity)

Scene Composition Patterns

Player (CharacterBody2D)
├── CollisionShape2D
├── Sprite2D / AnimatedSprite2D
├── AnimationPlayer
├── Camera2D
├── Hitbox (Area2D) → CollisionShape2D
├── Hurtbox (Area2D) → CollisionShape2D
└── AudioStreamPlayer2D

Enemy (CharacterBody2D)
├── CollisionShape2D
├── Sprite2D
├── AnimationPlayer
├── NavigationAgent2D
├── DetectionArea (Area2D) → CollisionShape2D
└── StateMachine → IdleState, ChaseState, AttackState

HUD (CanvasLayer)
├── MarginContainer
│   ├── TopBar (HBoxContainer) → ScoreLabel, TimerLabel
│   ├── HealthBar (TextureProgressBar)
│   └── BottomBar (HBoxContainer) → HotbarSlots

Node Lifecycle Order

_init()           → Object created (before tree)
_enter_tree()     → Enters scene tree
_ready()          → All children ready (bottom-up)
_process()        → Every frame
_physics_process()→ Every physics tick
_exit_tree()      → Leaves scene tree

Collision Layers

Layer 1: Player    Mask: 2,3,4
Layer 2: Walls     Mask: (none)
Layer 3: Enemies   Mask: 1,2
Layer 4: Pickups   Mask: 1
Layer 5: Proj(PLY) Mask: 2,3
Layer 6: Proj(ENM) Mask: 1,2

Common Autoloads

GameManager  → res://scripts/core/game_manager.gd
AudioManager → res://scripts/core/audio_manager.gd
SaveManager  → res://scripts/core/save_manager.gd
SignalBus    → res://scripts/core/signal_bus.gd

Project Folder Structure

project/
├── scenes/  (world/, ui/, actors/, effects/)
├── scripts/ (core/, systems/, components/, ui/)
├── resources/ (data/, themes/, materials/)
├── art/ (sprites/, tiles/, audio/, vfx/)
└── addons/

Renderer Selection

RendererBest For
Forward+Desktop, high-end visuals
MobileMid-range, balanced
CompatibilityLow-end, web, old hardware

Input Actions (configure early)

move_up/down/left/right → WASD + Left Stick
jump → Space / Gamepad A
attack → Left Click / Gamepad X
interact → E / Gamepad Y
pause → Escape / Start

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

Report a problem with this skill