diff --git a/AGRARIAN_DEVELOPMENT_ROADMAP.md b/AGRARIAN_DEVELOPMENT_ROADMAP.md index 7e7a9e6..4dea512 100644 --- a/AGRARIAN_DEVELOPMENT_ROADMAP.md +++ b/AGRARIAN_DEVELOPMENT_ROADMAP.md @@ -825,7 +825,7 @@ Target deliverable: A small group can join a server, spawn into one biome, gathe - [x] Replace the placeholder Ground Zero environment presentation with investor-facing biome dressing: believable terrain material, grass, brush, shrubs, bushes, trees, rocks, water visuals, and local coastal-scrub color variation. Upgraded the repeatable Ground Zero setup to require denser investor-facing foliage counts and twenty-three labeled variation actors covering trees, brush, shrubs, dry grass mats, rock slabs, water-bank pieces, reeds, and freshwater surface material variation, then extended the verifier/docs so the map no longer qualifies if the visual dressing falls back to sparse placeholder presentation. - [x] Add a real water-source visual pass with surface material, edge treatment, scale, and placement that reads as collectable freshwater instead of a placeholder plane. Formalized the MVP freshwater presentation around the native `AAgrarianWaterSource` water-surface, stone-bank, and collect-marker proxies, documented the Ground Zero drainage-candidate placement and nearby water-bank/reed dressing, and added an Unreal verifier that checks surface material, edge treatment, scale, placement, and nearby dressing actors in the actual map. - [x] Add density and sightline tuning so grasses, shrubs, trees, and resource clusters are visible enough to sell the world without hiding gameplay-critical objects. Added protected foliage clearances around early survival targets and biome resource nodes, sampled first-look sightline corridors from the player start to wood, fiber, campfire, shelter, wildlife, and freshwater, plus a dedicated Unreal verifier/documentation gate so investor-facing density cannot regress into object-hiding clutter. -- [ ] Preserve realism as the target: use assets, materials, lighting, and environmental dressing that can survive toward MVP production rather than cosmetic throwaways where practical. +- [x] Preserve realism as the target: use assets, materials, lighting, and environmental dressing that can survive toward MVP production rather than cosmetic throwaways where practical. Added MVP realism target rules to the shared art/UX/code/asset standards, tied current 0.1.O visual passes to production-directed proxy expectations, and added a verifier that requires Ground Zero materials, water, density/sightline, character, and survival-object docs to point toward production realism instead of cosmetic throwaways. - [ ] Define default, recommended, and cinematic investor rendering presets, with ray tracing available only as an optional high-end/cinematic mode and never required for baseline visual credibility. - [ ] Verify the non-ray-traced compatibility/default path still looks credible on common investor, tester, and remote-session hardware. - [ ] Add packaged-demo visual QA screenshots or short clips for startup credits, character selection, first spawn, terrain, vegetation, water, campfire, shelter, pause menu, and save/quit before each investor build is called ready. diff --git a/Docs/ArtUxCodeAndAssetStandards.md b/Docs/ArtUxCodeAndAssetStandards.md index cf70415..9cdb5ca 100644 --- a/Docs/ArtUxCodeAndAssetStandards.md +++ b/Docs/ArtUxCodeAndAssetStandards.md @@ -52,6 +52,36 @@ Ground Zero target: region-appropriate materials, vegetation, rocks, shoreline treatment, and weathered survival props. +## MVP Realism Target Rules + +Investor-facing art work should move the project toward grounded realism even +when the current asset is still an MVP proxy. A proxy is acceptable when it +locks down gameplay scale, silhouette, material family, biome placement, or +interaction readability that can survive into production. A cosmetic throwaway +is not acceptable when it creates a style, color language, or object read that +will have to be discarded before MVP. + +Realism preservation rules: + +- use real-world biome references for terrain color, vegetation density, water, + rock, weather, shelter, tools, wildlife, and clothing decisions; +- prefer Agrarian-owned proxy meshes and materials over engine template assets + so replacements can be staged without changing gameplay contracts; +- keep survival objects readable through practical construction logic: fuel, + stone, ash, fabric, branches, stored goods, water edges, and worn surfaces; +- use lighting and fog that imply Pacific coastal conditions without requiring + cinematic hardware settings; +- document any visible proxy that remains in investor builds, including what + production-quality asset family should replace it; +- avoid cosmetic-only changes that make the world prettier while moving it away + from the long-term realistic tone. + +Current 0.1.O visual passes are production-directed proxies, not final art: +character bodies, survival objects, foliage silhouettes, water-source dressing, +and Ground Zero biome materials are expected to be replaced with higher-fidelity +assets, but their scale, placement, material families, and gameplay readability +should survive. + ## Character Direction MVP character selection should support realistic male and female young-adult diff --git a/Scripts/verify_mvp_realism_target.py b/Scripts/verify_mvp_realism_target.py new file mode 100644 index 0000000..ff4df25 --- /dev/null +++ b/Scripts/verify_mvp_realism_target.py @@ -0,0 +1,66 @@ +from pathlib import Path + + +ROOT = Path(__file__).resolve().parents[1] + + +REQUIRED_SNIPPETS = { + "Docs/ArtUxCodeAndAssetStandards.md": [ + "## MVP Realism Target Rules", + "production-directed proxies, not final art", + "avoid cosmetic-only changes", + "real-world biome references", + ], + "Docs/CharactersAndObjects/MvpReadableSurvivalObjectProxies.md": [ + "Final realistic art should replace these proxies", + "without changing survival", + ], + "Docs/Terrain/GroundZeroNaturalEnvironmentPass.md": [ + "coastal scrub", + "drive density and shape selection from land-cover", + ], + "Docs/Terrain/GroundZeroWaterSourceVisualPass.md": [ + "production water material", + "bank geometry", + ], + "Docs/Terrain/GroundZeroDensitySightlineTuning.md": [ + "coastal scrub biome", + "without hiding the first playable survival loop", + ], + "Scripts/setup_ground_zero_demo_map.py": [ + 'M_AGR_GZ_Terrain_CoastalScrub', + 'M_AGR_GZ_Tree_CoastalOak', + 'M_AGR_GZ_Shrub_CoyoteBrush', + 'M_AGR_GZ_Grass_DryCoastal', + 'M_AGR_GZ_Stone_Sandstone', + 'SIGHTLINE_TUNING_CONFIG', + ], + "AGRARIAN_DEVELOPMENT_ROADMAP.md": [ + "[x] Preserve realism as the target", + "production realism", + "cosmetic throwaways", + ], +} + + +def main(): + failures = [] + for relative_path, snippets in REQUIRED_SNIPPETS.items(): + path = ROOT / relative_path + if not path.exists(): + failures.append(f"missing {relative_path}") + continue + + text = path.read_text(encoding="utf-8") + for snippet in snippets: + if snippet not in text: + failures.append(f"{relative_path} missing snippet: {snippet}") + + if failures: + raise SystemExit("MVP realism target verification failed:\n" + "\n".join(failures)) + + print("PASS: MVP realism target standards are documented and wired to 0.1.O visual gates.") + + +if __name__ == "__main__": + main()