Skip to content
Back to skills

Build Scene

ASecurity

Pattern-based Godot scene construction with node hierarchy templates and companion node rules

  • 4 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 2, 2026
ai-agentsgonode

Security analysis

A100/100

Scanned September 2, 2026

npx -y skills add n24q02m/claude-plugins --skill build-scene --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Build Scene?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Build Scene
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/n24q02m-build-scene/badge)](https://www.skillsdirectory.com/skills/n24q02m-build-scene)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: build-scene
description: Pattern-based Godot scene construction with node hierarchy templates and companion node rules
argument-hint: "[scene type: platformer character, UI screen, projectile, etc.]"
---

# Build Scene

Construct Godot scenes from proven patterns. Each pattern includes REQUIRED companion nodes that LLMs commonly forget.

## Scene Patterns

### Platformer Character
```
CharacterBody2D "Player"
  CollisionShape2D          # REQUIRED -- CharacterBody2D without this = no collisions
  Sprite2D                  # Visual representation
  AnimationPlayer           # Idle, run, jump, fall animations
  Camera2D                  # Follow camera
    position_smoothing_enabled = true
    position_smoothing_speed = 5.0
```
Companion rule: `CharacterBody2D` MUST have a `CollisionShape2D` child. Without it, `move_and_slide()` works but detects zero collisions.

### Top-Down Character
```
CharacterBody2D "Player"
  CollisionShape2D          # REQUIRED
  Sprite2D
  NavigationAgent2D         # Pathfinding (if AI/NPC)
    path_desired_distance = 4.0
    target_desired_distance = 4.0
```

### UI Screen
```
Control "MenuScreen"
  MarginContainer           # Prevents content touching edges
    VBoxContainer           # Vertical layout for menu items
      Label "Title"
      Button "StartButton"
      Button "OptionsButton"
      Button "QuitButton"
```
Companion rule: Always wrap UI content in `MarginContainer` first. Direct children of `Control` have no automatic margins.

### Projectile
```
Area2D "Bullet"
  CollisionShape2D          # REQUIRED -- Area2D signals need this to detect overlaps
  Sprite2D
  VisibleOnScreenNotifier2D # Auto-cleanup when off-screen (connect screen_exited -> queue_free)
```
Companion rule: `Area2D` without `CollisionShape2D` will never emit `body_entered` or `area_entered` signals.

### Pickup Item
```
Area2D "Coin"
  CollisionShape2D          # REQUIRED
  Sprite2D
  AudioStreamPlayer         # Pickup sound effect
```

### Tilemap Level
```
Node2D "Level"
  TileMapLayer              # Godot 4.3+ (NOT TileMap -- deprecated)
  Camera2D
    limit_left = 0
    limit_top = 0
```
Note: `TileMap` node is deprecated in Godot 4.3+. Use `TileMapLayer` instead.

## Implementation Steps

1. **Identify pattern** from user description. Map to the closest template above.

2. **Create scene**:
   ```
   scenes(action="create", scene_path="scenes/<name>.tscn", root_type="<RootType>")
   ```

3. **Add nodes top-down** (parent before children):
   ```
   nodes(action="add", scene_path="scenes/<name>.tscn", parent=".", type="CollisionShape2D", name="CollisionShape2D")
   nodes(action="add", scene_path="scenes/<name>.tscn", parent=".", type="Sprite2D", name="Sprite2D")
   ```

4. **Configure properties**:
   ```
   nodes(action="set_property", scene_path="scenes/<name>.tscn", name="Camera2D",
         property="position_smoothing_enabled", value="true")
   ```

5. **Attach script** (create from template in add-mechanic skill if needed):
   ```
   scripts(action="create", script_path="res://scripts/<name>.gd", content="...")
   ```

6. **Verify scene tree**:
   ```
   scenes(action="info", scene_path="scenes/<name>.tscn")
   ```

## Common Mistakes to Prevent

- Missing `CollisionShape2D` on physics bodies/areas (most frequent LLM error)
- Using `TileMap` instead of `TileMapLayer` in Godot 4.3+
- Forgetting `Camera2D` smoothing (causes jarring camera movement)
- Putting UI elements directly under `Control` without layout containers
- Using `RigidBody2D` when `CharacterBody2D` is needed (characters need `move_and_slide`)

## When to Use

- Creating a new game entity (character, enemy, projectile, pickup)
- Setting up a UI screen (menu, HUD, dialog)
- Building a level structure
- Prototyping a scene with correct node hierarchy

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.