Quick answer: Hammer icon → build. Confirm dotnet on PATH. Script attached to a node. GD.Print, not Console.WriteLine.
You write GD.Print("hi") in _Ready. Run scene. Output panel empty. Build never happened or script not attached.
The Fix
// Player.cs
using Godot;
public partial class Player : Node2D {
public override void _Ready() {
GD.Print("Player ready"); // editor Output
}
}
// Build steps:
// 1. Hammer icon top-right (or Build menu)
// 2. Confirm `dotnet --version` works in shell
// 3. Editor reload (Ctrl+Shift+R) after build
// 4. Script attached to Player node in scene
If the build panel shows errors, fix those first — the assembly didn’t produce, no scripts run.
Verifying
Run scene. Output panel: Player ready. Drop GD.PrintErr for red logs; both routes write to the same panel.
“Build green. Script attached. GD.Print lands.”
Related Issues
For C# Export flags, see flags. For C# signal emit, see signal.
Build first. Print second.