Sector survey · observation deck
ASHLIGHT
Frontier of Intelligence
ASH — mentor, on approach

We came a long way for a place this quiet.

Everything you can see from here is non-synthetic. It grew. Nobody specified it. That is the entire reason we are standing on this deck instead of running the numbers from home — you cannot synthesise the thing we came to measure, and we have tried.

There is an accord back on Earth, and it wants data. Not simulation output. Observed life, observed weather, observed failure. Everything we send back becomes something else's understanding.

Something else is already here, and it wants the same herd we do. It just doesn't intend to give them back.

— Ash · onboarding, sector approach
The premise

We found a way through the event horizon. What came back was a survey job.

Anomalous regions, far enough out that the exotic testing nobody would permit at home is simply the local weather. Traversable, if you accept that what you find on the other side has been running a very long time without you.

You are dropped into a sector with a starting allocation and a mentor. You explore it, you set up, you get to work. Terrain has real height and real water. Animals hunt, eat, breed and starve on their own schedule across a real calendar. Fog resists differently over different ground. Nothing here is set dressing — the simulation runs whether or not you are looking at it.

What the accord wants is coherence: understanding, extracted from things that were never designed. You get it by scanning what is alive. Which means the herd grazing past your perimeter is not scenery, and not livestock. It is the data source.

The rogue intelligence operating in this sector has reached the same conclusion. It does not destroy the animals. It takes them — lifts them out through a beam and leaves with them, because the same thing that makes them valuable to you makes them valuable to it.

The whole game, in one sentence

You and the thing hunting you want exactly the same resource, and only one of you needs it alive.

Non-synthetic life

The most valuable thing in the sector is a large animal that does not know it.

A large horned herbivore, rendered in the Ashlight style
Subject class: large herbivore. Species load from JSON content bundles as prototypes — geometry, material, scatter rules, hunger profile, combat stats. Populations are seeded at world generation, capped per species, and thereafter left alone. Every animal in a sector is running the same needs loop: find food, avoid predators, survive the season.

The creature layer is not a spawner. It is a small ecology with a tabletop heart — encounters between animals resolve on a d20 roll against real combat stats, so a predator's attempt on a herbivore can genuinely fail. Herbivores search for the nearest viable food tile; predators search for the nearest viable prey; both are affected by season, and both leave the tile yield different than they found it.

Which is why losing one to abduction costs more than a point. Remove a breeding herbivore and the predator that fed on it starves later. That changes what the tile produces. That changes your stockpile two turns from now. The defence layer is load-bearing on the economy, through the food chain.

The loop

Explore. Set up shop. Get to work. Then the anomaly calls something in.

01
Arrive
A sector generates with terrain tiers, water, resource seeding and a live population. Fog holds everything past your landing clarity.
02
Scout
Take direct control of a drone and fly it into the fog. Clarity is continuous, not a switch, and different ground resists differently.
03
Extract
Vent taps, drill rigs, bore pumps, greenhouses. Place them where the terrain actually supports them — a geothermal building needs a geothermal tile.
04
Study
Science drones and the Research Annex turn observed life into coherence — the one resource you cannot dig up.
05
Fortify
Sockets first, weapons second. A mount is built once and armed separately, and every turret on the map traces its power back to something you built earlier.
06
Defend
The anomaly aligns. Something comes through. Real-time, wave-structured, and it is coming for the herd.
07
Report
What survived, what was taken, what you learned. The sector closes at turn 25 — forward only, from wherever the next one begins.

Steps 05 and 06 are the encounter. They are not a separate game — they are what the anomaly does to a sector that has become worth visiting. The rest of the loop is why you care who wins.

The anomaly is the event system

Every sector has one, and it is the most unusual system in the build: it can snapshot the world, rewind it to a baseline, and commit a branch as real — over a random number generator built to be restorable, so a rewind doesn't quietly desynchronise everything downstream of it.

Mechanically that is a transaction model over reality. Narratively it is the thing that makes a sector eventful: rift alignments, environmental shifts, and — when the alignment favours something other than you — an incursion. The rogue intelligence doesn't wander in. It is called in, by the same instrument you are using to study the place.

The perimeter

Every weapon sits on something you built first.

A turret mounted on a stepped rock outcrop
Turret Socket + mounted battery. The socket is a real structure with its own cost, its own footprint and its own power draw — a bare, obviously-grounded mount. Nothing is armed until something sits on it. Larger structures bring their own sockets: a Forward Base declares three, a Multi-Socket Platform four, and the Turret Deployment Vehicle carries one on its back.

Three weapon families, each with a genuinely different job rather than a damage number. EMP disables without damaging terrain — control, not destruction. Missile is heavy burst on a slow reload, for things that must not survive. Laser is fast, light and accurate, for things that must not get close. Each exists at three tiers, and at the top tier the EMP stops pulsing and becomes a sustained field that anything inside simply stops working in.

During an encounter, turrets can be promoted in the field — an upgraded mount unlocks module slots, and modules are real objects you bought, carried and socketed: ammunition types that trade damage for tracking, a plasma lock that gives up burst damage for a beam that never misses, shield generators that absorb until they are destroyed and free the slot.

And you can climb into one. Possession puts you in the turret's own sights with a reticle lock, a missile camera and in-cockpit ammunition cycling — the same mechanic that lets you fly the scout drone into the fog, pointed at something with a gun.

A shield generator that has been invested in — bought, upgraded, watched absorb hits over several waves — creates the kind of attachment a flat HP number never does. Losing it should feel like losing something, not resetting a stat. — design note, Sandbox Protocol
What actually exists

Two live builds. 29,000 lines. No engine, no build step, no asset store.

Everything described above is running code, in two single-file applications that open in a browser with nothing installed. This section is the honest inventory — including what is still rough.

14,830
Frontier simulation
247 functions. Terrain, water, seasons, ecology, fog, drones, buildings, economy, anomaly, weather, blueprints.
14,290
Encounter engine
453 functions. Waves, abduction, claims, cards, credits, shop, modules, power, mothership, scoring, sound.
60
Catalogue entries
20 structures and 5 units, each at three tiers — costed, gated by dependency, with declared power draw and stats.
14
Sourced sound events
Weapons, impacts, destruction, abduction, cloak and power — with a 32-voice pool, spatial falloff and priority stealing.

The sector build list

CategoryEntriesWhat they do
Extraction11Drone Greenhouse, Auto-Mill, Drill Rig, Vent Tap, Bore Pump, Containment Spire, Aquaculture Cradle, Evaporator Flat, Electrolysis Cell, Vent Harvester, Kelp Harvester
Infrastructure4Forward Base, Research Annex, Drone Assembly Bay, Drone Maintenance Bay
Defense5Turret Socket, Multi-Socket Platform, EMP Emitter, Missile Battery, Laser Lance
Units5Engineer Drone, Mule Drone, Science Drone, Scout Drone, Turret Deployment Vehicle

Each entry declares where it can sit (sitsOn: "geothermal", "fertile", "turret_socket"), what it costs across five materials, what power it draws or generates, and what it depends on. Placement checks fog clarity, tile match and stockpile — the same rule everywhere, no shortcuts.

The power system — the natural spine

This is the piece that already works identically on both sides, and it is the strongest argument that these were never really two games.

Every structure declares powerDraw or powerGenerated. In the encounter engine that is already live: draw is summed per frame against generated capacity, and when demand outruns supply the allocator decides who loses power. Unpowered turrets get a visible icon, the meter drops into a warning band, and the audio changes. The brownout threshold is deliberately set so "critical" appears while most of the bar still looks calm — it is a warning instrument, not a fuel gauge.

The simulation side declares exactly the same fields on every one of its 60 catalogue entries and simply doesn't read them yet. Connecting them requires no design decision at all — and it works before power lines, hydro lines or any grid topology exists, because a shared pool is a legitimate first model and both halves already assume one.

The join

There is a resource in the build with no way to produce it.

The stockpile carries five materials: alloy, polymer, energy, circuits and coherence. Four of them are mined, pumped, milled or generated. Coherence starts at zero, is required by nothing except the highest tier of every structure, and — checked entry by entry through the whole catalogue — is produced by nothing at all.

The pipe is plumbed at both ends. The turn loop reads coherenceGenerated and adds it to the stockpile. The output schema lists it as a known field, right beside researchByproduct. There is a Science Drone in the roster and a Research Annex in the build list, neither with a mechanic behind them. The encounter engine has a compute meter and a research meter, driven by Data Centres and Tech Labs, with no fiction attached to either.

Every one of those holes is the same shape

Coherence is not something you extract from the ground. It is what understanding something alive converts into. You scan non-synthetic life, you learn something that was never specified, and that becomes the currency the accord actually wants — the only input a superintelligence cannot generate for itself.

Which makes the highest tier of every structure in the game gated behind studying the world rather than stripping it — and makes the rogue intelligence's abductions a direct attack on your tech tree, not just your score.

The dependency graph is already there to receive it. Every turret entry declares deps: ["turret_socket"], every drone deps: ["drone_prefab"], every Forward Base deps: ["anomaly"]. Three gate keys, fully wired as data, with no unlock mechanism anywhere in the simulation — while the encounter engine has spent a month proving out exactly such a mechanism in its card system.

The wave runner was never only a combat test. It was a technology tree, proven at small scale, waiting for the tree that already exists.

Where it actually is

A real game environment with an unfinished face.

Being straight about this is more useful than a trailer. The systems are further along than the presentation, and the presentation is what someone sees first.

Sound engine32-voice pool · spatial · held voices
shipped
Encounter combatwaves · claims · abduction · boss
shipped
Terrain & ecologytiers · water · seasons · d20 encounters
solid
Building & economy60 entries · placement · turn income
solid
Anomaly & rewindsnapshot · restore · commit
working
Front door & presentationphotographic plates · 4 aspect profiles
partial
Simulation look & feelstill reads as prototype
rough
Render performancefog cost · draw calls · culling
open
Sector traversalprocedural neighbours · exploration
design
Shared game loopbinding the two halves
decided

The three real engineering problems

Fog is expensive

The clarity field is the most interesting system in the simulation and the biggest drain on the frame. It is continuous rather than binary, has terrain-dependent resistance, and drives both a particle layer and a ground-darkening pass. Block aggregation and quality presets already exist as the lever — the honest position is that the right resolution-versus-cost point hasn't been found yet, and it will probably be found by making the field cheaper rather than by drawing less of it.

Draw calls and culling are unresolved

Entities already batch through instanced meshes sized at registration. Buildings, turrets, water, fog and weather do not, and nothing is culled by distance or frustum in a considered way. This is ordinary optimisation work rather than a design question, but it gates the sector-size decision below.

Sector size is still open

8×8, 16×16 or 32×32. Both 16 and 32 already boot. 32 is roughly four times the land tiles, which scales scatter, resources, fog cells and draw calls together — the entity system already applies a generation-scale multiplier to compensate, which is a good sign that the seams were built for this. The decision is genuinely undecided and it interacts with everything above.

And the idea that reframes all three

Procedural traversal of neighbouring sectors. If the played area is one highlighted sector inside a generated planetary grid, then the size question stops being "how big should the world be" and becomes "how big should the lit part be" — which is a rendering budget, not a world-design constraint.

It also gives the turn-25 lock its meaning. A sector closes; you move to the next one; the accord's understanding of the planet accumulates across all of them. Forward only, from wherever the next one begins — that message is already written into the build, waiting for somewhere to go next.

The mentor

Ash is not a tutorial. She is the reason there's a job.

Every structure in the catalogue already carries a mentor note written in her voice — not flavour text, but the thing a colleague would actually tell you. "Build power before demand catches up; turrets and infrastructure fail quickly when the grid is short." "Place sockets where future threats are likely, then choose the weapon once the role is clear." "An EMP Emitter disables hostile drones without damaging the terrain. It is best when you need control more than raw damage."

Sixty entries, sixty notes, already written. The voice bus in the sound engine is reserved and empty. The intent recorded in the design notes is explicit and worth quoting: these need to be genuinely distinct and learnable, not flavour — so a player can hear what is happening and react before they can see it.

We came out here because the accord needs something it cannot make. So did whatever is on the other side of that alignment. The difference is that we intend to give the herd back. — Ash

There is a version of this project that is only systems — and the systems are genuinely good, verified line by line across nearly thirty thousand lines of working code. But the reason it holds together is smaller and more human than that: someone is out here at the frontier of intelligence, working out what can be understood, with help, and finding that the understanding is the part worth keeping.

The simulation was already running. This is what it looks like from the deck.