Add Godot project shell
This commit is contained in:
37
SLICE1.MD
37
SLICE1.MD
@@ -15,10 +15,10 @@ The observable result is small but concrete: from `D:\Code\zfxaction26_1`, `dotn
|
||||
- [x] (2026-04-21 16:36Z) Read repository rules, Windows rules, `PLANS.md`, `CODE.md`, and current Godot project files.
|
||||
- [x] (2026-04-21 16:36Z) Verified that the Godot project currently lives in `godot/project.godot`, not at the repository root.
|
||||
- [x] (2026-04-21 16:36Z) Verified that `SideScrollerGame.sln` and `godot/SideScrollerGame.Godot.csproj` currently build with `dotnet build SideScrollerGame.sln` after the user's fixes.
|
||||
- [ ] Implement root scene, placeholder scene, smoke scene, input actions, and debug boot code.
|
||||
- [ ] Run formatting for touched C# files with `jb cleanupcode --build=False`.
|
||||
- [ ] Validate with .NET build, Godot solution build, and headless smoke boot.
|
||||
- [ ] Commit the completed slice.
|
||||
- [x] (2026-04-21 16:52Z) Implemented root scene, placeholder scene, smoke scene, input actions, and debug boot code.
|
||||
- [x] (2026-04-21 16:52Z) Ran formatting for touched C# files with `jb cleanupcode --build=False`.
|
||||
- [x] (2026-04-21 16:52Z) Validated with .NET build, Godot solution build, and headless smoke boot.
|
||||
- [x] (2026-04-21 16:52Z) Commit the completed slice.
|
||||
|
||||
## Surprises & Discoveries
|
||||
|
||||
@@ -31,6 +31,12 @@ The observable result is small but concrete: from `D:\Code\zfxaction26_1`, `dotn
|
||||
- Observation: Running `dotnet build SideScrollerGame.sln` and `dotnet build godot\SideScrollerGame.Godot.csproj` at the same time can race on the same Godot temp assembly.
|
||||
Evidence: the parallel build attempt failed with `CS2012: Cannot open ... SideScrollerGame.Godot.dll for writing`. A serial `dotnet build SideScrollerGame.sln` immediately afterward succeeded.
|
||||
|
||||
- Observation: `godot/project.godot` had `project/assembly_name="SideScrollerGame"`, while the fixed C# project builds `SideScrollerGame.Godot.dll`.
|
||||
Evidence: the first smoke boot did not instantiate C# scripts, and `.\godot --headless --path godot --quit` reported that `GameRoot.cs` and `DebugOverlay.cs` classes could not be found. Updating the Godot assembly name to `SideScrollerGame.Godot` fixed script loading.
|
||||
|
||||
- Observation: Quoting the semicolon-separated `jb cleanupcode` file list made JetBrains treat the full list as one path.
|
||||
Evidence: `jb cleanupcode --build=False "file1;file2;..."` exited with "No items were found to cleanup." Running `jb cleanupcode --build=False file1 file2 ...` formatted all touched C# files.
|
||||
|
||||
## Decision Log
|
||||
|
||||
- Decision: Keep `godot/project.godot` as the canonical Godot project entrypoint for this slice.
|
||||
@@ -49,9 +55,30 @@ The observable result is small but concrete: from `D:\Code\zfxaction26_1`, `dotn
|
||||
Rationale: Command-line boot modes make sandbox and smoke testing fast without editor interaction. Project setting fallback keeps editor boot predictable.
|
||||
Date/Author: 2026-04-21 / Codex.
|
||||
|
||||
- Decision: Match `godot/project.godot`'s .NET assembly name to the existing C# project output, `SideScrollerGame.Godot`.
|
||||
Rationale: Godot resolves attached C# scripts through the configured assembly name. The project already builds `SideScrollerGame.Godot.dll`, and changing the Godot setting avoids touching the user's fixed `.csproj`.
|
||||
Date/Author: 2026-04-21 / Codex.
|
||||
|
||||
## Outcomes & Retrospective
|
||||
|
||||
Not started. When this slice is completed, update this section with the exact files created, commands run, validation output, and any remaining risks.
|
||||
Implemented a bootable Godot project shell under `godot/`. Created the root scene, menu placeholder scene, smoke scene, debug boot settings reader, debug overlay, and smoke controller. Added project input actions and configured `res://scenes/bootstrap/GameRoot.tscn` as the main scene.
|
||||
|
||||
Validation completed:
|
||||
|
||||
dotnet build SideScrollerGame.sln
|
||||
Build succeeded.
|
||||
0 Warning(s)
|
||||
0 Error(s)
|
||||
|
||||
.\godot --headless --path godot --build-solutions --quit
|
||||
Exited successfully.
|
||||
|
||||
.\godot --headless --path godot -- --debug-boot=smoke --seed=12345
|
||||
Debug boot: Smoke
|
||||
Seed: 12345
|
||||
Smoke scene loaded
|
||||
|
||||
Remaining risk: editor visual layout was not manually inspected in a window during this slice. The headless boot path and script loading are validated.
|
||||
|
||||
## Context and Orientation
|
||||
|
||||
|
||||
Reference in New Issue
Block a user