Stands up the CODE_REPO the rewrite is written into (D-049, D-058). Godot 4.7.2 /
.NET 8 / Godot.NET.Sdk 4.7.2. Nothing is generated, meshed, or ported — this is the
shell and the two data contracts.
Four layers, each with its boundary stated in a directory README:
Core/ math + data only, and engine-free — depends on nothing above it
Server/ authoritative logic (empty this phase)
Client/ rendering (empty this phase)
Tools/ the offline generator — may NOT reference Client (Phase 1 fills it)
Contracts (compiling stubs, no algorithms):
- Column model (D-053): a 2D grid of columns, each a stack of (material, thickness)
runs, any material at any depth. Air is the TOP RUN — there is no air-vs-solid
height branch, and no surface-height accessor exists to reintroduce one. Water is
not a band; it stays an overlay.
- Material schemas (D-054): terrain and building as two append-only registries,
bridged by a recipe seam that is deliberately EMPTY. Identity is a registry key,
never a serialized ordinal. Mesh style is per-ORIGIN and is not a material field.
Rails, so Phase 1 inherits them rather than rediscovering them:
- GenerationScale: MapSize is a parameter, everything derives from it, nothing uses
a raw pixel number. Tightening over the reference — decorrelation offsets are
declared in map widths, not pixels (chat1/00 §4.2).
- ToolingPaths: config/blueprint/output paths all env-overridable, resolved in one
place, so a batch cannot touch the developer's live files.
- FileSafety: the permanent no-deletion rules as throws rather than sentences.
user:// isolation: project name and use_custom_user_dir both pin the runtime dir to
~/.local/share/islaApocalypse-v2/, away from the old prototype's preserved seeds and
batches. Tools/Scenes/UserDirProbe.tscn confirms it rather than assuming it.
18 lines
1 KiB
Text
18 lines
1 KiB
Text
Microsoft Visual Studio Solution File, Format Version 12.00
|
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "islaApocalypse-v2", "islaApocalypse-v2.csproj", "{6E4C1B2A-9A3D-4C7E-8B21-0D5F4A1C7E90}"
|
|
EndProject
|
|
Global
|
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
Debug|Any CPU = Debug|Any CPU
|
|
ExportDebug|Any CPU = ExportDebug|Any CPU
|
|
ExportRelease|Any CPU = ExportRelease|Any CPU
|
|
EndGlobalSection
|
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
{6E4C1B2A-9A3D-4C7E-8B21-0D5F4A1C7E90}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
|
{6E4C1B2A-9A3D-4C7E-8B21-0D5F4A1C7E90}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
|
{6E4C1B2A-9A3D-4C7E-8B21-0D5F4A1C7E90}.ExportDebug|Any CPU.ActiveCfg = ExportDebug|Any CPU
|
|
{6E4C1B2A-9A3D-4C7E-8B21-0D5F4A1C7E90}.ExportDebug|Any CPU.Build.0 = ExportDebug|Any CPU
|
|
{6E4C1B2A-9A3D-4C7E-8B21-0D5F4A1C7E90}.ExportRelease|Any CPU.ActiveCfg = ExportRelease|Any CPU
|
|
{6E4C1B2A-9A3D-4C7E-8B21-0D5F4A1C7E90}.ExportRelease|Any CPU.Build.0 = ExportRelease|Any CPU
|
|
EndGlobalSection
|
|
EndGlobal
|