From godot-ai-builder
Genre-specific game templates with complete file manifests. Use when creating a game from a genre prompt. Each template lists every file to create, the node hierarchy, and the key mechanics to implement.
npx claudepluginhub hubdev-ai/godot-ai-builderThis skill uses the workspace's default tool permissions.
Before writing gameplay scripts for any template:
Constructs Godot scenes from patterns like platformer characters, top-down chars, UI screens, projectiles, pickups, tilemaps with required companion nodes (e.g., CollisionShape2D).
Provides Godot 4 GDScript patterns for architecture, signals, scenes, state machines, and optimization. Useful for building games, game systems, and best practices.
Guides design of Godot 4.3+ features/systems: clarifies requirements, proposes 2-3 architectures with trade-offs, plans scene trees/signals/data flow, prepares implementation.
Share bugs, ideas, or general feedback.
Before writing gameplay scripts for any template:
godot_generate_asset_pack with the closest preset and style.res://assets/sprites/.ColorRect entity visuals in full-game builds.| File | Type | Purpose |
|---|---|---|
scripts/main.gd | Script | Score, health, spawning, game loop |
scripts/player.gd | Script | WASD + mouse aim + click to shoot |
scripts/bullet.gd | Script | Move in direction, destroy enemies |
scripts/enemy.gd | Script | Chase player, damage on contact |
scenes/main.tscn | Scene | Minimal root (5 lines) |
scenes/Bullet.tscn | Scene | Bullet prefab (Area2D) |
scenes/Enemy.tscn | Scene | Enemy prefab (CharacterBody2D) |
Main (Node2D + main.gd)
├── Background (Sprite2D using bg_arena + optional gradient shader)
├── Player (CharacterBody2D + player.gd)
│ ├── CollisionShape2D (rect 32x32)
│ └── Visual (Sprite2D: player + glow/outline shader)
├── SpawnTimer (Timer, 1.5s)
├── Camera2D (follows player)
└── UI (CanvasLayer)
├── HudPanel (TextureRect/Sprite2D from ui_hud_panel)
├── ScoreLabel (+ icon_score)
└── HealthBar (+ icon_heart)
player, enemy_chaser, enemy_ranged, enemy_charger, bullet_player, pickup_health, icon_heart, icon_score, bg_arena, ui_hud_panel| File | Type | Purpose |
|---|---|---|
scripts/main.gd | Script | Level setup, coins, goal |
scripts/player.gd | Script | Move, jump, coyote time |
scripts/coin.gd | Script | Collectible, score +1 |
scripts/spike.gd | Script | Hazard, instant death |
scripts/level_builder.gd | Script | Procedural level from array |
scenes/main.tscn | Scene | Root |
Main (Node2D + main.gd)
├── Level (Node2D + level_builder.gd)
│ ├── [StaticBody2D platforms, generated]
│ ├── [Coin Area2Ds, generated]
│ └── [Spike Area2Ds, generated]
├── Player (CharacterBody2D + player.gd)
│ ├── CollisionShape2D (capsule)
│ ├── Visual (Sprite2D: player_runner or layered procedural fallback)
│ └── Camera2D
└── UI (CanvasLayer)
├── CoinLabel (+ icon_life or coin icon)
└── LivesLabel
# level_builder.gd
const TILE = 64
var level_data = [
".....................",
".....................",
"...C..........C.....",
"...####....####.....",
".....................",
"........C...........",
"......#####.........",
".....S......S.......",
"#####################",
]
# P=player start, #=platform, C=coin, S=spike, .=empty
func build():
for y in range(level_data.size()):
for x in range(level_data[y].length()):
var ch = level_data[y][x]
var pos = Vector2(x * TILE, y * TILE)
match ch:
"#": _make_platform(pos)
"C": _make_coin(pos)
"S": _make_spike(pos)
player_runner, enemy_patrol, enemy_flyer, pickup_coin, tile_ground, tile_platform, tile_hazard, bg_platform_sky| File | Type | Purpose |
|---|---|---|
scripts/main.gd | Script | Game state, score |
scripts/board.gd | Script | Grid logic, matching, gravity |
scripts/piece.gd | Script | Individual piece (visual + click) |
scenes/main.tscn | Scene | Root |
Main (Node2D + main.gd)
├── Board (Node2D + board.gd)
│ └── [Piece nodes, grid of NxM]
└── UI (CanvasLayer)
├── ScoreLabel
└── MovesLabel
Array[Array] (model)| File | Type | Purpose |
|---|---|---|
scripts/main.gd | Script | World state, transitions |
scripts/player.gd | Script | 4-direction movement, interact |
scripts/npc.gd | Script | Dialog trigger |
scripts/dialog.gd | Script | Dialog box UI |
scripts/inventory.gd | Script | Item management |
scenes/main.tscn | Scene | Root |
| File | Type | Purpose |
|---|---|---|
scripts/main.gd | Script | Waves, economy, game state |
scripts/enemy_td.gd | Script | Follow path, health bar |
scripts/tower.gd | Script | Target nearest enemy, shoot |
scripts/tower_bullet.gd | Script | Homing projectile |
scripts/tower_placer.gd | Script | Click to place tower |
scenes/main.tscn | Scene | Root with Path2D |
Given user prompt, pick template: