Greetings, Operators!
It's hard to believe it's already been three/four months since we first revealed our project on Steam. Time is moving so fast it sometimes feels like it all started just a week ago... Back then, Nick and I thought we'd post a devlog every 1K wishlists β roughly once every two months. Not only did we miss the first one by about five thousandβ¦ now, as we're writing the second devlog, we've just crossed 20,000!

Commissar, record their names.
Mark every recruit who was among the first to summon the courage and answer the call to mobilization.
They stood when others hesitated.
They stepped forward when silence was safer.
Glory to them.
Glory to the sons.
Glory to the fathers.
Glory to the brothers who stand here united.
~ High Command
β β β Previously, I promised that this devlog would be more technical and since I mainly handle marketing, Nick has prepared something for you! β β β
Nick: When I first started prototyping IRON NEST, (Which was the 5th "big gun" prototype game I made this summer and the 1st one, which was not a hot pile of poop) I wanted missions to feel grounded, like you're actually running an artillery gun, not just ticking off objectives.
So instead of a "go here, shoot this" checklist, I'm building everything around a living map: bearings, distances, impact points, and intel all stack together so you can piece together what's happening out there, even though you're stuck inside the turret.
I could've gone with fixed target spots and scripted situations, but that would've murdered replayability, and replayability is a huge pillar of IRON NEST. Honestly because I need to playtest it for 1000s of hours, and I would go insane replaying the same missions that many times.

The first real headache was honestly just⦠space. Unity's UI has a bunch of different coordinate modes, and they all have slightly different opinions on where "here" actually is.
My solution ended up being pretty simple: I decided to base the whole map system on the local space of a world-space UI.
That means the map is basically a flat 2D "plane" in the world, and I can treat it like real space: 1 Unity unit = 1km. Everything on the map: targets, impacts, recon markers, etc. lives on that same plane, so all bearings and distances come straight from that. I could move that plane around, rotate it, scale it, etc. and the system still works.

Next up was figuring out rules and outcomes. Different shell types, sometimes a target may need a single hit, sometimes a full salvo, plus all the Success / Failure / Bonus stuff⦠and I really didn't want that turning into a giant pile of if-statements.
So I kept it data-driven.
Each target/location has a small list of rules (my ShellEffectRules) that say, this shell type + this many hits = this result. Then when a shell lands, the location checks the rules and decides what that impact actually means: blow something up, disable a system, give you credit, trigger visuals, whatever.
The nice part is the "decision" happens right at the impact, and everything else just reacts to it. Clean cause-and-effect, no less hardcoded spaghetti.

Then I moved on to intel. Stuff like bearing lines (083Β°), distance readouts (1.25 km), grid coordinates (B9 4:2), etcβ¦
Because every target/ally/enemy token is being resolved live inside the same shared map space, I'm not locked into fixed positions or scripted moments. I can set up a situation, let the pieces land where they land, and the map intel still makes sense. The mission can evolve, i.e. units moving, dying, arriving, and every new bit of intel can react to it.

This is where the replayability really starts to show up.
Missions aren't locked to one "correct" layout. Spawn zones can pick different positions, stuff can show up mid-mission, and the intel you get is generated from what's actually happening right now.
So even with the same mission template, you can end up with a different map setup. And the same shot can lead to different followup intel depending on who's still alive, what recon/correction level you're working with, and what shells you're using.

Impacts are the single source of truth. When a shell lands, anything inside the blast radius checks its shell rules and decides what happens: damage, rewards, disabling systems, whatever that location is set up to do. Intel comes in with a rhythm. I've got a queued, typewriter-style printer that feeds you info through triggers (like entering an area), so stuff doesn't just instantly pop onto the UI. It shows up when it makes sense in the moment. From the player's side, it ends up feeling coherent but still unpredictable. You do something and the world reacts. Bearings actually point where they should. Distances line up. Unit locations are only visually revealed when recon photographs overlap with their actual positions. And the whole narration / intel flow keeps the right cadence even when the mission layout and outcomes change run to run.

