In This Tutorial
1 What is Claude Code?
Claude Code is Anthropic's AI coding assistant that can read, write, and execute code in your development environment. When combined with CLAUDIUS, Claude Code can directly control Unreal Engine through natural language commands.
Instead of manually writing JSON commands or clicking through menus, you can simply tell Claude what you want:
CLAUDIUS includes a CLAUDE.md file that Claude Code automatically reads. This file contains complete documentation of all 130+ commands, so Claude knows exactly how to translate your requests into the correct JSON format.
2 Setting Up the Connection
Step 2.1: Install Claude Code
If you haven't already, install Claude Code from Anthropic. It works as a VS Code extension or standalone application.
Step 2.2: Open Your Project
Open your Unreal project folder in Claude Code. Make sure CLAUDIUS is installed and the editor is running with your project loaded.
# Open your project folder in Claude Code cd C:\Projects\MyUnrealProject claude-code . # Or in VS Code with Claude extension: code C:\Projects\MyUnrealProject
Step 2.3: Copy CLAUDE.md to Project Root (Required!)
For Claude Code to understand CLAUDIUS commands, you must copy the CLAUDE.md file from the plugin folder to your project's root directory. This is the most important step!
# The CLAUDE.md file is located in the plugin folder: YourProject/Plugins/Claudius/CLAUDE.md # Copy it to your project root: YourProject/CLAUDE.md # Your project structure should look like this: YourProject/ ├── Content/ ├── Config/ ├── Plugins/ │ └── Claudius/ │ └── CLAUDE.md # Original file (keep this) ├── claudius_request.json ├── claudius_response.json └── CLAUDE.md # ← Copy here for Claude Code!
Claude Code automatically reads CLAUDE.md files from your project root to learn about available tools and commands. Without this file in your root directory, Claude won't know about CLAUDIUS commands. Make sure to copy (not move) the file so you always have the original in the plugin folder.
Step 2.4: Test the Connection
Ask Claude to verify the setup by listing actors:
If Claude doesn't recognize CLAUDIUS commands, check these common issues:
- CLAUDE.md not in project root – Copy it from
Plugins/Claudius/CLAUDE.mdto your project root - Unreal Editor not running – Make sure the editor is open with your project loaded
- Plugin not enabled – Check Edit > Plugins and ensure CLAUDIUS is enabled
3 Understanding CLAUDE.md
The CLAUDE.md file is the key to making Claude understand CLAUDIUS. It contains:
- Command format: How to structure JSON commands
- All categories: Level, Editor, Console, Sequencer, AI, and 12 more
- Command documentation: Every command with parameters and examples
- Response format: How to interpret results
# CLAUDIUS Command Reference ## File-Based Communication Write commands to `claudius_request.json`, responses appear in `claudius_response.json`. ## Command Format ```json { "command_id": "unique_id", "category": "level|editor|console|...", "command": "command_name", "params": { ... } } ``` ## Level Commands ### spawn_actor Spawns an actor in the current level. Parameters: - class_path (string, required): Actor class path - location (object): {x, y, z} - rotation (object): {pitch, yaw, roll} - actor_label (string): Display name Example: ```json { "command_id": "spawn_1", "category": "level", "command": "spawn_actor", "params": { "class_path": "/Script/Engine.PointLight", "location": {"x": 0, "y": 0, "z": 300} } } ```
Claude Code reads CLAUDE.md automatically when you open the project. You don't need to tell Claude about it—just start asking for things and Claude will know what commands to use.
4 Natural Language Commands
With CLAUDIUS + Claude Code, you can express commands naturally. Claude translates your intent into the correct JSON format. Here are examples across different categories:
Level Operations
// You say: "Spawn a point light at 0, 0, 500" // Claude writes: { "command_id": "spawn_light_001", "category": "level", "command": "spawn_actor", "params": { "class_path": "/Script/Engine.PointLight", "location": { "x": 0, "y": 0, "z": 500 } } }
Editor Operations
// "Select the actor named PlayerStart" { "category": "editor", "command": "select_actor", "params": { "actor_name": "PlayerStart" } } // "Take a screenshot of the viewport" { "category": "viewport", "command": "take_screenshot", "params": {} } // "Compile all blueprints" { "category": "build", "command": "compile_blueprints", "params": {} }
Complex Multi-Step Tasks
Claude can chain multiple commands together for complex operations:
5 Real-World Examples
Example 1: Setting Up a Character Test Scene
Example 2: Debugging AI Behavior
Example 3: Asset Pipeline
6 Tips & Best Practices
Be Specific with Positions
When specifying locations, use concrete numbers. Claude understands coordinates in Unreal's coordinate system (X forward, Y right, Z up).
Good: "Spawn a light at 0, 0, 300"
Vague: "Put a light somewhere above the scene"
Use Actor Labels
Ask Claude to name actors when spawning them. This makes it easier to reference them later.
Chain Related Commands
Don't hesitate to ask for multi-step operations. Claude will execute them in the correct order and report the results.
Check Responses
Claude will tell you if a command failed. If something doesn't work, ask Claude to check the response file for error details.
CLAUDIUS commands modify your level! Use version control (Git, Perforce) so you can revert changes if needed. Consider testing in a separate level before modifying important content.