Skip to content
Agentmart
Submit a tool

game-bootstrap

Godot 4 project scaffolding — project.godot, architecture notes, script stubs, scene builders, build order.

Skill by dragoscirjan

IndexedMIT
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/dragoscirjan-game-bootstrap

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Godot 4 project scaffolding — project.godot, architecture notes, script stubs, scene builders, build order. Load after game decomposition.

Use cases: productivity

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/game-bootstrap

What's inside

Skill name
game-bootstrap
Description
Godot 4 project scaffolding — project.godot, architecture notes, script stubs, scene builders, build order. Load after game decomposition.
License
MIT
Instructions
286 lines in SKILL.md · view on GitHub

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Game Bootstrap — Architecture & Scaffolding

Design game architecture and produce a compilable Godot project skeleton: `project.godot`, architecture notes (written to a draft via `draft-create`), script stubs, and scene builder stubs. Defines _what exists and how it connects_ — not behavior.

Works for both fresh projects and incremental changes.

## Workflow

1. **Read `reference.png`** — camera angle, distance, FOV, lighting, environment structure, scene layout. Informs node hierarchy, camera setup, lighting rig.
2. **Read input** — game description (fresh) or change request (incremental).
3. **Assess project state:**
   - No project → create from scratch.
   - Existing project, fresh start → delete existing scenes/scripts.
   - Existing project, incremental → read existing architecture notes and scripts. Identify what to add/replace. Preserve unchanged files.
4. **Design/update architecture** — scenes, scripts, signals, input actions.
5. **Write/update `project.godot`.**
6. **Write architecture notes** to the draft path — always complete, not a diff.
7. **Write script stubs** — for new scripts and explicitly replaced ones.
8. **Import assets** — `timeout 60 godot --headless --import 2>&1`. Ensures all assets (`.glb`, `.png`) are imported before scene builders reference them.
9. **Build scenes** — for each new/changed scene, write builder to `scenes/build_{name}.gd`, then run in dependency order (leaf scenes first): `timeout 60 godot --headless --script scenes/build_{name}.gd`

> **MCP alternative (when `godot_editor` is enabled — see `mcp-tools-godot` skill):** For trivial scenes (a root node + a few children, no complex transforms), use `create_scene` + `add_node` + `load_sprite` + `save_scene` instead of writing a scene builder script. For scenes with scripts attached, custom properties, precise transforms, or sub-scene instantiation — always use scene builder scripts. Use `godot_analyze_scene` from `godot_forge` to check `.tscn` files for antipatterns after building.

10. **Verify** — `timeout 60 godot --headless --quit 2>&1`. No `ERROR` or `Parser Error` lines. RID warnings are benign.
11. **Git commit** — `git add -A && git commit -m "scaffold: project skeleton"`

## Output Files

### 1. project.godot

```ini
; Engine configuration file
; Do not edit manually

[application]

config/name="{ProjectName}"
run/main_scene="res://scenes/main.tscn"

[display]

window/size/viewport_width=1280
window/size/viewport_height=720
window/stretch/mode="canvas_items"
window/stretch/aspect="expand"

[physics]

common/physics_ticks_per_second=120
common/physics_interpolation=true
; 3D only — omit for 2D projects:
3d/physics_engine="Jolt Physics"

[rendering]

; 3D games:
lights_and_shadows/directional_shadow/soft_shadow_filter_quality=3
anti_aliasing/quality/msaa_3d=2
; 2D pixel art (instead of above):
; textures/canvas_textures/default_texture_filter=0
; 2d/snap/snap_2d_transforms_to_pixel=true

[layer_names]

; Name collision layers used by the game:
2d_physics/layer_1="player"
2d_physics/layer_2="enemies"

[autoload]

; Singletons — asterisk prefix means script (not scene):
; GameManager="*res://scripts/game_manager.gd"

[input]

move_forward={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":119)]
}
```

**Key physical keycodes:** W=87, A=65, S=83, D=68, Up=4194320, Down=4194322, Left=4194319, Right=4194321, Space=32, Enter=4194309, Escape=4194305, Shift=4194325, Ctrl=4194326, Alt=4194328.

**Mouse buttons** use InputEventMouseButton with button_index (1=left, 2=right) and matching button_mask:

```ini
fire={
"deadzone": 0.2,
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":1,"position":Vector2(0,0),"global_position":Vector2(0,0),"factor":1.0,"button_index":1,"canceled":false,"pressed":true,"double_click":false)]
}
```

### 2. Architecture Notes (draft)

Complete architecture reference. Written to a draft path provided by the orchestrator. Always written in full, even for incremental updates.

```markdown
# {Project Name}

## Dimension: {2D or 3D}

## Input Actions

| Action       | Keys  |
| ------------ | ----- |
| move_forward | W, Up |
| jump         | Space |

## Scenes

### Main

- **File:** res://scenes/main.tscn
- **Root type:** Node3D
- **Children:** Player, Enemy

### Player

- **File:** res://scenes/player.tscn

From dragoscirjan/opencode-config, MIT.

More from dragoscirjan/opencode-config

Signals

Stars
0
Forks
0
Open issues
3
Last commit (this folder)
May 28, 2026 (5 months ago)
Last release
Jun 2, 2026 (4 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from dragoscirjan

Cite this page

game-bootstrap skill. Agent Mart. https://agentmart.dev/skills/dragoscirjan-game-bootstrap (last updated 2026-10-24)