"First successful Play: what to verify after the skeleton"
Skeleton "exists" but Play is black, silent, or you're not sure what "done" means for day-one setup.
A new project has several independent gates (manifest, scene, compile, input, logs). Passing one doesn't prove the others. The knowledge-base startup checklist is the minimum sequence that actually boots a game.
Day-one sequence
- Folders —
Assets/,Code/,ProjectSettings/,Editor/, optionaltools/(sbox-project-folder-layout). .sbproj— setTitle/Ident/StartupScene;Org: "local"(sbproj-title-ident-startup).Assembly.cs— globals + razor namespace (assembly-cs-globals-setup).- 4-object scene + Bootstrap (four-object-scene-bootstrap).
dotnet build Code/<proj>.csproj— green before anything else.- Optional — art generators under
tools/(see art-pipeline articles). - Play — console shows your tagged logs.
Every Play session
Prefix all Log.Info with a project tag, e.g. [yourgame] …, and start by scanning the console for those lines. Engine noise to ignore: missing citizen_clothes, sfm sounds, menu-main.scene refs, prop gib materials; Vulkan QueuePresentAndWait / VK_TIMEOUT on alt-tab.
Also verify
- Camera is main; sun + sky present (not a black void).
- Bootstrap skipped in editor (
Scene.IsEditor) but runs on Play. - WASD →
Input.AnalogMoveif you bound Forward/Back/Left/Right (input-config-bindings). - Remember: green
dotnet build≠ whitelist OK (dotnet-build-vs-whitelist).
Build an admin/debug panel early once gameplay exists — it pays for itself on the first playtest.
Each step removes a different failure class (wrong scene, missing types, no compile, no input, silent runtime). Tagged logs turn "did anything run?" into a one-glance console check.