This content originally appeared on DEV Community and was authored by John
🧾 Dev Log: Legacy Reboot — From Chaos to Clarity
Date: 9–10 September 2025 Scene: Layout Foundation, Registry Integration, Studio-Grade Pivot Mood: Focused, relieved, and finally respected by the pipeline
đź§± The Grind
Started this project with no Unity UI experience — just a concept and a little spare time. It’s now been around three months, give or take. I’ve been brute-forcing my way through learning by doing, with an AI assistant helping me navigate the chaos. It’s been an interesting journey so far.
I’ve struggled like crazy, especially with layout compatibility across devices. I made a noob mistake — a huge one. I didn’t use anchors, pivots, or layout tools properly. I built everything in simulation mode using a Galaxy S7, thinking its simple screen layout would be safe. I used that setup for weeks.
I assumed a SafeAreaHandler.cs script would fix everything across mobile devices. It didn’t. Game View lied. Prefabs betrayed me. Layout drifted across devices like a bad dream. But I kept going — auditing anchors, pivots, and overrides scene by scene. Every fix was a ritual. Every breakthrough, a closure.
âś… SafeAreaHandler: validated
âś… Pixel 5 & iPhone X simulated: revealed the truth after two days of struggle
âś… Anchor/Pivot Audit: thought it was complete across key scenes
Then came the pivot. I made the call to drop mobile support entirely. I couldn’t get it to work. Frustrated by weeks of trial and error, I shifted focus to desktop. The final plan: a Steam version. No Play Store. No Apple Store. No adjusting for a hundred devices. Just one solid layout.
đź”§ The Pivot
âś… Mobile support archived
âś… Resolution locked to 1920Ă—1080
âś… Touch input deprecated
âś… Mouse + keyboard logic scaffolded
âś… Canvas scaler set to Constant Pixel Size
✅ Background images expanded via AI — now widescreen, atmospheric, layout-ready
âś… UI zones defined: header, main panel, sidebar, footer
âś… All canvases and panels adjusted
âś… Scene-wide prefab safety enforced
✅ Environmental registry integrated — 50+ modular objects imported, schema-safe, runtime-ready
đź§ The Lessons
Game View is a liar. Device Simulator is truth.
Anchors and pivots are sacred. Use them from the start.
Prefab overrides must be earned, not assumed.
Layout is not cosmetic — it’s narrative.
Every technical fix is a story beat in the myth of development.
Learning by experience is more fun than tutorials — and just as important, if not more important.
If you can’t fix the problem, change the goal. In this case, it worked.
đź”® The Future
Survivor Selection Panel: next in line for scaffolding
Steam Demo Prep: vertical slice incoming
Coming Soon Page: assets and copy to be drafted
Rights Delegation: monetization handoff ritualized, futureproofed, tax-safe
Studio Identity: if the game succeeds, rights reclaimed, legacy formalized
Discord: to be set up for community engagement if/when needed
This wasn’t about money — it was about making something I wanted to play. A game I haven’t seen done like this before. Something with depth, story, and replayability. Something unique. Something that could outlive me.
With the layout locked, the registry sealed, and the pipeline finally respecting me, I’m ready to build forward. Slow progress — but solid progress.
Registry Status:
âś… Environmental objects imported
âś… Layout reborn
âś… SafeAreaHandler archived
âś… Legacy preserved
âś… Future unlocked
🧾 Dev Log — 10 Sept 2025
Milestone: Trait-aware branching system activated
Completed most of the UI and layout issues. Now mirroring the updated player profile scene for character 1 across the others — mostly copy/paste and data tweaks.
Able to playtest the start of the game now, at least the basics, with the first couple of story choices.
Summary: Narrative engine now supports gear-based conditions, slot presence checks, and environmental hazard gating. StoryNodeLoader resolves conditional text variants using PlayerStats.HasCondition(), interpreting traits like waterproof, gasResistant, and negated forms (notWaterproof, bareFeet).
Variant 1 matched and rendered correctly in node_0004, confirming full system integration. Debug logs confirmed match and previewed output. Fallback story text added as a failsafe.
Changes:
âś… PlayerStats.cs: slot-aware trait checks, negation support, fallback logic
âś… StoryNodeLoader.cs: hardened variant selection, environment gating, debug previews
âś… JSON schema: standardized condition format (["waterproof"], ["notWaterproof"])
âś… Console settings: stack trace verbosity reduced
Validation:
Variant 1 matched: Conditions=[bareFeet, notWaterproof]
Text rendered successfully in UI
No runtime errors or deserialization issues
Debug preview confirmed non-empty output
Next Steps:
đź§ Extend condition system to support contaminated, quiet, fireResistant, etc.
đź§ Add visual trait indicators to gear slots (considered)
đź§ Write trait validator to scan gear registry for missing tags (fallback auto-tagging already in place)
Status:
âś… Simulation-grade branching logic online
âś… Gear traits influence narrative flow
âś… Environment hazards respected
🔜 Ready for deeper survival logic and encounter gating
đź§ Reflection
This wasn’t a test. It was a ritual. The system matched the player’s gear state, interpreted negation, and delivered the correct narrative beat. No hacks. No overrides. Just clean branching logic, flowing from registry to runtime.
The layout issues disheartened me temporarily — but now I head in a new direction, armed with lessons earned the hard way.
Quote of the Day: "The system didn’t crash. It bowed."
This content originally appeared on DEV Community and was authored by John

John | Sciencx (2025-09-10T10:47:43+00:00) Dev Log 19 – Chaos To Clarity. Retrieved from https://www.scien.cx/2025/09/10/dev-log-19-chaos-to-clarity/
Please log in to upload a file.
There are no updates yet.
Click the Upload button above to add an update.