Tooluck logoTooluck
SKILL.md

godot-csharp

Agent skill fromgamedev-skills/awesome-gamedev-agent-skills

Use C#/.NET in Godot 4.7: partial classes extending nodes, the PascalCase lifecycle (_Ready/_Process/_PhysicsProcess), [Export] fields, [Signal] delegates as C# events, type-safe node lookup, and calling between C# and GDScript. Use when writing Godot game code in C# (.cs files, .csproj), needing the Godot .NET build, converting GDScript patterns to C#, or wiring Godot signals as C# events.

How to install godot-csharp

install godot-csharp
# install the awesome-gamedev-agent-skills pack with the skills CLI
npx skills add gamedev-skills/awesome-gamedev-agent-skills

# or add only this skill to Claude Code: copy the folder

skills/godot/godot-csharp/

# into

~/.claude/skills/godot-csharp/ (all projects)

.claude/skills/godot-csharp/ (one project)

skills/godot/godot-csharp/SKILL.md

Apache-2.0Full file
1# Godot C# / .NET (4.x)
2
3Write Godot game code in C#: node subclasses, the engine lifecycle, exports, signals as
4events, and GDScript interop. Targets **Godot 4.7 (.NET / C#)** and **.NET 8**.
5
6## When to use
7
8- Use when scripting a Godot game in C# (`.cs` + `.csproj`), translating GDScript idioms
9 to C#, exposing `[Export]` fields, or wiring `[Signal]` delegates and GetNode<T>.
10
11**When *not* to use:** GDScript-specific syntax → `godot-gdscript`; engine concepts that
12are language-neutral (scenes, physics, animation) → the relevant `godot-*` skill. You need
13the **Godot .NET build** + the .NET SDK installed; the standard build can't run C#.
14
15## Core workflow
16
171. **Use the Godot .NET editor build** and install a .NET SDK: 8 or later, and 9 or later if
18 you export to Android. Creating the first C#
19 script generates a `.csproj`/`.sln`. Build with the editor or `dotnet build`.
202. **Every node script is a `partial` class** extending a Godot type (the source generator
21 relies on `partial`). The file/class name should match the node script.
223. **Override lifecycle methods in PascalCase** with `double` delta: `_Ready()`,
23 `_Process(double delta)`, `_PhysicsProcess(double delta)`.
244. **Expose tunables with `[Export]`**; they show in the Inspector like GDScript `@export`.
255. **Declare signals as `[Signal]` delegates** named `XxxEventHandler`; emit with
26 `EmitSignal(SignalName.Xxx, ...)` and subscribe with the generated C# `event`.
27…

Excerpt shown under the repository's Apache-2.0 license.

More skills in awesome-gamedev-agent-skills

Keep exploring

Similar skill repositories

Newsletter

Join the Community

Subscribe to our newsletter for the latest news and updates