Target and map: the first release is the demo
Rewrites the release target for the demo cut (one gate, one region, one boss, a fixed cast of Pirates, Zhestokost, Lucent and AU, called a demo). Adds the map's Demo scope section with body facts D1-D6 and the scope table, and sweeps four stale docs the design review listed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
985e65696c
commit
6a1bb47758
6 changed files with 348 additions and 184 deletions
|
|
@ -1,212 +1,196 @@
|
|||
# Aetheria Release Target
|
||||
# Aetheria Release Target: the Demo
|
||||
|
||||
Date: 2026-10-03
|
||||
Date: 2026-10-03, re-scoped 2026-10-06
|
||||
|
||||
Status: target. This document owns the ends. The typed `target` in the Eureka mind
|
||||
(campaign `aetheria-release`) owns the labelled invariants and the not-in-scope list;
|
||||
this file gives their reasons. Cut specs, questions and rulings are typed documents in
|
||||
the mind and are not restated here. Body facts, the model page and the rationale for
|
||||
the cut order are in `docs/aetheria-release-map.md`.
|
||||
the mind and are not restated here. Body facts, the model page, the scope sort and the
|
||||
rationale for the cut order are in `docs/aetheria-release-map.md`.
|
||||
|
||||
## Why
|
||||
|
||||
The game has enough systems to ship: fire control, stats and power, heat, item
|
||||
provenance, locomotion, and the mining and scenario lanes in flight. What keeps it
|
||||
unreleasable is presentation and breadth. It plays no sound at all. A hit on a hull
|
||||
shows nothing where it lands, and the camera never reacts. Three hulls on two models
|
||||
and one station are all a player can fly or dock at.
|
||||
The game has deep systems: fire control, stats and power, heat, item provenance,
|
||||
locomotion, scenarios and the targeting index. What keeps it unreleasable is that a
|
||||
player has nothing to do between minute five and minute thirty, and nothing they do
|
||||
is seen or heard. It plays no sound. A hit on a hull shows nothing where it lands.
|
||||
Loot cannot be sold, damage cannot be repaired, no boss guards anything, and reaching
|
||||
the exit does nothing. Every NPC fights the same way.
|
||||
|
||||
## Operator direction (2026-10-02 and 2026-10-03)
|
||||
The first release is a demo, and it is called one. The full game, Terminus with three
|
||||
procedurally generated regions, needs enough faction variety to give each region its
|
||||
own challenges and stories. Until that content exists the game is not presented as
|
||||
complete.
|
||||
|
||||
- "we already have plenty of game here, especially once we merge everything in flight
|
||||
(and maybe another campaign or two geared at making the world feel more alive). The
|
||||
only thing making it unreleasable to me is the lack of polish, content and feedback.
|
||||
We need audio, we need ships, stations and gear for the player to covet and collect,
|
||||
and we need our mechanics to be visible and visceral."
|
||||
- "If we get the moddable ships pipeline usable and a Tripo3D subscription I can pump
|
||||
one of these out every day, game ready." The pipeline is GPT Image 2.5, then
|
||||
Tripo3D, then minor cleanup.
|
||||
- "I don't think Asura is the way to go for content."
|
||||
- The announcement bar (2026-10-02): a wider selection of ships and gear, a UX polish
|
||||
pass, and audio feedback throughout.
|
||||
## Operator direction
|
||||
|
||||
## What "release" means
|
||||
- 2026-10-06 (ruling `first-release-is-a-demo`): "Full Terminus requires enough
|
||||
faction variety to present unique challenges and stories across three regions, I
|
||||
can't call it anything more than a demo if we don't have enough content to
|
||||
populate the three gates. I'm fine with reducing scope so we can get to a release
|
||||
on time, but I will not pretend it is the whole game."
|
||||
- 2026-10-06 (ruling `demo-cut-fixed-region`): the demo is one gate, one region and
|
||||
one boss with a fixed faction presence. Full Terminus keeps procedural regions,
|
||||
each with its own political and economic setup.
|
||||
- 2026-10-06 (ruling `demo-cast`): one allied faction, the protagonist's ostensible
|
||||
employer under Aetheria's usual polite coercion; one opposing faction, which
|
||||
decides the boss; the rest neutral. Allied: the Pirates. Antagonist and boss:
|
||||
Zhestokost. Featured neutrals: Lucent Media for spectacle, Aeronautics Unlimited
|
||||
as the vanilla that balances the other flavours.
|
||||
- 2026-10-06 (ruling `miss-terris-belongs-to-emily-r3`): Miss Terri's is Emily's
|
||||
faction. Its role in the prelude stands. Agents write no lore, explanations,
|
||||
faction play, doctrine, barks or ship concepts for it, and build on none of the
|
||||
AI-written material already made for it.
|
||||
- 2026-10-06 (ruling `ship-authors-need-no-unity`): a person adding a ship works in
|
||||
Blender and the CultLib tools and never installs Unity or syncs the repo.
|
||||
- 2026-10-02 and 2026-10-03 (ruling `operator-release-direction`): the release needs
|
||||
audio, ships, stations and gear to covet and collect, and mechanics that are
|
||||
visible and visceral. The announcement bar names a wider selection of ships and
|
||||
gear, a UX polish pass, and audio feedback throughout.
|
||||
|
||||
The release is the public announcement to players and Patreon, with a build they
|
||||
can download. It is done when every line below holds on one build made from
|
||||
`master`, and the operator has played that build and called it. The operator's call
|
||||
is part of the definition: a ticked list without it is not a release.
|
||||
## What "the demo" means
|
||||
|
||||
1. **The lanes in flight have landed.** `codex/mining`, `codex/scenarios` and
|
||||
`codex/moddable-ships` are merged into `master` or explicitly parked by the
|
||||
operator. A release does not ship around half-merged work.
|
||||
2. **Every player action that changes the world makes a sound.** That covers weapon
|
||||
fire and charging, impacts on shield and hull, ship destruction, docking and
|
||||
undocking, the wormhole, thrusters and the drive, inventory and trade actions, menu
|
||||
clicks, the overheat alarm, and music in the menu, overworld and combat. The
|
||||
player can set master, music, effects and interface volume, and the settings
|
||||
The demo is a public build, announced to players and Patreon, with a scenario named
|
||||
"Terminus (Demo)". It is done when every line below holds on one Windows build made
|
||||
from `master`, and the operator has played that build and called it. A ticked list
|
||||
without the operator's call is not a release.
|
||||
|
||||
1. **One run, start to finish.** New Game starts the demo in a hull made by the
|
||||
Pirates, at a station near the entrance of one region with a fixed cast: the
|
||||
Pirates allied, Zhestokost hostile, Lucent and AU neutral. The Zhestokost home
|
||||
zone holds the region's one gate, guarded by its boss. The gate stays sealed
|
||||
while the boss lives. Passing it after the boss dies ends the run as won. Death
|
||||
ends the run as lost.
|
||||
2. **The run pays.** At a docked station the player can buy, sell what they looted
|
||||
and repair what they lost. Credits persist across save and Continue.
|
||||
3. **The four factions fight differently.** Each cast faction has a doctrine a
|
||||
playtester can describe without being told, from the Faction Play design in
|
||||
AetheriaLore.
|
||||
4. **Every player action that changes the world makes a sound.** Weapon fire and
|
||||
charging, impacts on shield and hull, ship destruction, docking and undocking,
|
||||
the wormhole and the gate, thrusters and the drive, inventory and trade actions,
|
||||
menu clicks, the overheat alarm, and music in the menu, overworld, combat and the
|
||||
boss fight. Master, music, effects and interface volume are player settings that
|
||||
persist.
|
||||
3. **Every hit is seen where it lands and felt by the one who takes it.** An impact
|
||||
on a shield shows on the shield at the side it came from. An impact on a hull
|
||||
shows at the struck point. A hit on the player's own ship moves the camera in
|
||||
proportion to the damage. The player can turn shake down to zero, and the hit is
|
||||
still shown.
|
||||
4. **Damage, heat and exposure are visible before they are fatal.** Lost armour,
|
||||
a destroyed item and a critical hull each look different on the ship and in the
|
||||
HUD. Overheat and hull-critical warnings use two channels, sound plus a visual,
|
||||
and the more urgent one wins. The player can see how visible they are, how close
|
||||
that is to being detected, and the largest source of it.
|
||||
5. **There is enough to covet.** The content quota is set by the operator's ruling
|
||||
on question `release-content-bar`. Every hull and station in the quota is
|
||||
flyable or dockable and enters through the moddable-ships package path. Rarity
|
||||
5. **Every hit is seen where it lands and felt by the one who takes it.** An impact
|
||||
on a shield shows on the shield at the side it came from; an impact on a hull
|
||||
shows at the struck point; a hit on the player moves the camera in proportion to
|
||||
the damage. Shake can go to zero and the hit is still shown.
|
||||
6. **Damage, heat and exposure are visible before they are fatal.** Lost armour, a
|
||||
destroyed item and a critical hull look different on the ship and in the HUD.
|
||||
Overheat and hull-critical warnings use sound plus a visual, and the more urgent
|
||||
one wins. The player can see how visible they are and the largest source of it.
|
||||
7. **There is enough to covet in the demo.** Each cast faction flies a hull of its
|
||||
own and Zhestokost's boss flies its boss hull, each entering through the
|
||||
first-party package path. The exact count is question `demo-content-bar`. Rarity
|
||||
tiers show their colours, and every weapon type sounds and looks distinct.
|
||||
6. **A new player can play for thirty minutes on the Windows build without hitting
|
||||
a blocking defect.** The build is published through the build-delivery path.
|
||||
8. **A new player can play the demo through on the Windows build without hitting a
|
||||
blocking defect**, published through the build-delivery path.
|
||||
|
||||
## Ends
|
||||
|
||||
- **The simulation states what happened, and presentation shows it.** Fire control,
|
||||
shields, damage, heat and detection publish typed facts. Visual and audio
|
||||
presenters subscribe to them, derive a cue from each, and render it. They decide
|
||||
no rule and recompute no geometry.
|
||||
- **One cue, two channels.** Each fact becomes a cue in one engine-free function.
|
||||
The visual and the audio presenter render that same cue, so the two channels
|
||||
cannot disagree about what happened or how hard.
|
||||
- **New content is data.** A new hull, station or piece of gear arrives as a catalog
|
||||
record or a mod package. Nobody hand-wires a prefab array. The operator's daily
|
||||
ship goes through the image model, Tripo, cleanup and the Blender add-on, and
|
||||
comes out as a `ShipAuthoring` package with its GLB.
|
||||
- **The player controls intensity without losing the signal.** Shake, flashes,
|
||||
particle density and each audio channel have settings. Turning any of them down
|
||||
never removes the tactical information it carried.
|
||||
shields, damage, heat, detection, the boss and the gate publish typed facts.
|
||||
Visual and audio presenters derive a cue from each and render it. They decide no
|
||||
rule and recompute no geometry.
|
||||
- **One cue, two channels.** Each fact becomes a cue in one engine-free function;
|
||||
the visual and the audio presenter render that same cue.
|
||||
- **The run is a scenario.** The demo is a compiled scenario script beside the
|
||||
tutorial and main galaxies. Its cast, starting standing and gate are written in
|
||||
that script; placement stays with the galaxy generator.
|
||||
- **New content is data, authored without Unity.** A new hull, station or piece of
|
||||
gear arrives as a catalog record or a first-party package that carries its own
|
||||
product. Nobody hand-wires a prefab array, and no author needs Unity or the repo.
|
||||
- **The player controls intensity without losing the signal.** Turning shake,
|
||||
flashes, particles or any audio channel down never removes the tactical
|
||||
information it carried.
|
||||
|
||||
## Invariants that must survive
|
||||
|
||||
The typed target carries these as labelled statements. The reasons:
|
||||
|
||||
- **Legacy first** (operator, 2026-09-11). All work lands in the restored Unity tree.
|
||||
There is no daemon, CultMesh or Eve re-architecture here. Shared infrastructure
|
||||
is adopted, not invented.
|
||||
- **The simulation owns the facts.** Fire control was rebuilt (Cuts 3 to 12.4(b)) so
|
||||
that no Unity collider or effect decides a hit. Feedback must not reopen that
|
||||
path. It reads `FireControl`'s facts and never re-derives them.
|
||||
- **The simulation names no sound.** Today the simulation calls `FireAudioEvent`
|
||||
with Wwise ids, against a sound bank that is never assigned. Audio becomes a
|
||||
presenter of the same semantic events that visual effects use (`OnFire`,
|
||||
`OnStartCharging`, impacts and deaths).
|
||||
- **State is CultCache.** Player preferences such as shake and volumes go in the
|
||||
player store (`PlayerSettings`), and authored data goes in the catalog. Engine
|
||||
asset references are Addressables GUIDs (ruling of 2026-09-17). Presentation
|
||||
tuning stays on its Unity component (fork M (a) of `docs/settings-globals-cut.md`).
|
||||
- **Instruments bound what is shown** (`Visual and Sensory Direction`). A cue
|
||||
never shows the player more than their sensors know.
|
||||
No daemon, CultMesh or Eve re-architecture here.
|
||||
- **The simulation owns the facts.** Fire control was rebuilt so that no Unity
|
||||
collider or effect decides a hit. Feedback reads `FireControl`'s facts and never
|
||||
re-derives them. The same holds for the run: whether the boss lives and whether
|
||||
the gate is open are decided in `ServerShared`.
|
||||
- **The simulation names no sound.** Audio is a presenter of the same semantic
|
||||
events visual effects use.
|
||||
- **State is CultCache.** Player preferences go in the player store, authored data in
|
||||
the catalog, run state (credits included) in the run store. Presentation tuning
|
||||
stays on its Unity component (fork M (a) of `docs/settings-globals-cut.md`).
|
||||
- **Instruments bound what is shown.** A cue never shows the player more than their
|
||||
sensors know.
|
||||
- **The demo is named a demo.** Release copy, store text, the scenario name and
|
||||
these docs call it a demo.
|
||||
- **Miss Terri's is not AI-written.** No agent writes material for it.
|
||||
- **Ship authors need no Unity.**
|
||||
- **The lanes are respected.** This campaign never commits to a `codex/*` branch or
|
||||
to the operator's checkout. It branches from `origin/master` and rebases after
|
||||
each lane merges.
|
||||
the operator's checkout.
|
||||
- **Rules are tested headless.** Every rule decided in `ServerShared` has a
|
||||
behavioural test in `tests/Aetheria.Shared.Tests`. A presentation-only behaviour
|
||||
is an operator check, reachable through ordinary play or a scenario.
|
||||
behavioural test in `tests/Aetheria.Shared.Tests`.
|
||||
- **The operator judges whether the bar is met.**
|
||||
|
||||
## Not in scope
|
||||
## Not in scope for the demo
|
||||
|
||||
- Asura and procedural planet content. The operator ruled it out for content.
|
||||
- New mechanics. Contact tiers beyond the current threshold, fused tracks, thermal
|
||||
capture, probes and new weapon classes are not added here. This campaign makes
|
||||
the existing mechanics visible.
|
||||
- Faction mechanics beyond what `Faction Play.md` and its rulings name.
|
||||
- "World feels alive" work such as ambient traffic and events. The operator named
|
||||
it as a possible separate campaign.
|
||||
- Build publishing machinery. `docs/build-delivery-target.md` owns it. This
|
||||
campaign needs it done before release, but does not build it.
|
||||
- Platforms other than Windows 64-bit, multiplayer, narrative and Ink work.
|
||||
- Finishing other lanes' cuts: mining, scenarios, moddable-ships S2 and S5, thermal
|
||||
balance, and the settings-globals tier-colour fix. This campaign depends on them
|
||||
and does not do them.
|
||||
- Full Terminus: three regions, procedural regional politics and economy, faction
|
||||
selection per run, and the full content bar. These come after the demo.
|
||||
- Factions outside the cast as flags. They stay brands on shelves and generated
|
||||
traffic where the generator already puts them.
|
||||
- Mining yield and content (mining Cuts 4, 5 and 7), the sublinear targeting index
|
||||
(ruling `targeting-sublinear-wanted-not-critical`), and belt rendering through the
|
||||
index.
|
||||
- The faction-play tender loop (`faction-play-4`), drones and munitions, the
|
||||
Colosseum, articulated mounts.
|
||||
- Narrative: storylets, Ghostlight, Ink beats per boss.
|
||||
- Volumetrics and the nebula backport.
|
||||
- Asura and procedural planet content.
|
||||
- New mechanics beyond what the demo's rulings name.
|
||||
- Build publishing machinery (`docs/build-delivery-target.md` owns it).
|
||||
- Platforms other than Windows 64-bit, and multiplayer.
|
||||
|
||||
Open questions decide where four more items fall: the material pipeline
|
||||
(`demo-material-scope`), the all-in-`.cc` ship move (`demo-ship-cc-timing`), the
|
||||
control rebuild (`demo-controls-rebuild`) and which modes a release build lists
|
||||
(`demo-build-scenario-list`).
|
||||
|
||||
## Strands
|
||||
|
||||
- **Feedback.** Impacts, damage states, warnings and detection, made visible and
|
||||
felt. The first cut is mapped (`feedback-1`). It gives impacts a world point and a
|
||||
layer, then shows them on the shield or hull and in the camera.
|
||||
- **Audio.** The route is open as question `audio-route`. The first cut is mapped
|
||||
for the recommended route (`audio-1`) and is blocked until the ruling. Its sketched
|
||||
sequel covers interface, inventory, trade, docking and wormhole sounds, then
|
||||
music, then continuous loops (thrusters, reactor, drive) and the overheat alarm,
|
||||
then AquaSynth renders for whatever the 2021 library lacks.
|
||||
- **Content pipeline.** This strand is a sketch until `codex/moddable-ships` merges.
|
||||
1. The Blender add-on gains a collection-to-package action. It places anchors
|
||||
with `aetheria.id` extras for weapon, radiator and thruster mounts, the collider,
|
||||
map icon, shield and tractor, then exports the GLB with the `ship.cc`. This is
|
||||
proof gate 2 of `docs/moddable-ship-authoring.md`.
|
||||
2. Moddable-ships S3. The first playable mod ship is a Tripo mesh of a concept
|
||||
whose image already worked (the Headliner or the Quiet Sense), taken through
|
||||
the whole path.
|
||||
3. Repeatability. A convex collider from the render mesh, and one material-slot
|
||||
convention that leaves room for a later livery slot.
|
||||
4. Throughput. One hull a day from the operator, plus stations, then gear.
|
||||
- **Faction Play.** The design is `Game Design/Faction Play.md` in AetheriaLore,
|
||||
at `5c45e27` plus `f3e0e6d`. It covers behaviour, relations, loadouts, resources,
|
||||
visuals and hooks. On 2026-10-03 the operator accepted every proposal in it, and
|
||||
the acceptance is recorded as three rulings:
|
||||
- `faction-relations-field`: relations are their own authored field, not derived
|
||||
from allegiance;
|
||||
- `faction-lore-changes`: the five lore changes;
|
||||
- `lucent-duel-bait`: Lucent's need for glory lets the player bait it into a
|
||||
duel.
|
||||
|
||||
A fourth ruling, `npc-scripting-may-grow`, lets the strand extend the NPC
|
||||
scripting through its existing extension points. The note had limited itself to
|
||||
four agent states and the unread `Personality` field, and that limit is lifted.
|
||||
Legacy-first still forbids re-architecture. The map's section "Faction play: the
|
||||
NPC scripting" names what grows: a typed doctrine on `Faction`, and one flight per
|
||||
faction per zone that alone decides its members' targets and orders, executed by
|
||||
the existing state graph through two new motor states.
|
||||
|
||||
The strand's first deliverable is the note's smallest proof: Zhestokost, Lucent
|
||||
and AU in one run, which a playtester can describe without being told. It is four
|
||||
cuts:
|
||||
1. doctrine, the flight, and engagement with grace, hail and compliance
|
||||
(`faction-play-1`);
|
||||
2. pack slots and Lucent's duel, hull break-off and ping cadence
|
||||
(`faction-play-2`, after `feedback-1`);
|
||||
3. support ships, anchor and leash (`faction-play-3`);
|
||||
4. Zhestokost ammunition and the rearm loop, ending in the playtest
|
||||
(`faction-play-4`).
|
||||
|
||||
All four wait for the mining and scenarios lanes to merge. Relations, track
|
||||
sharing between factions, distress calls and target priority come after the
|
||||
proof. The feedback and content strands leave room for faction colour and
|
||||
livery, and decide nothing about them.
|
||||
- **The run.** Three cuts: `demo-galaxy` (the scenario, its cast, the gate's
|
||||
placement), `boss-gate` (the boss and the sealed gate, the win), and
|
||||
`station-services` (sell, repair, saved credits). The on-ramp is follow-up
|
||||
`demo-difficulty-onramp`, after a played build.
|
||||
- **Feedback.** `feedback-1`: impacts with a world point and a layer, shown on the
|
||||
shield or hull and in the camera.
|
||||
- **Audio.** `audio-1`, native Unity audio (ruling `audio-native-unity-plus-faust`).
|
||||
Its sequel covers interface, trade, docking, the wormhole and gate, music
|
||||
(including the boss), loops and the overheat alarm.
|
||||
- **Faction play.** `faction-play-1` to `-3`, re-anchored on post-merge master and
|
||||
revised for the demo cast with the Pirates' doctrine (follow-up
|
||||
`faction-play-reanchor-demo`). The Pirates need a catalog record first (follow-up
|
||||
`pirates-catalog-record`).
|
||||
- **Loot.** `loot-1` to `-3`: floating items are simulation state and pickup is a
|
||||
capability. With `station-services`, loot becomes money.
|
||||
- **Content.** The package path that landed with moddable-ships, then the add-on's
|
||||
frame and mounts cuts, then hulls for the cast and the boss (follow-ups
|
||||
`demo-cast-hulls`, `zhestokost-boss-hull`), authored at the operator's pace.
|
||||
- **UX polish.** A ledger of small fixes verified through scenarios (follow-up
|
||||
`demo-ux-ledger`).
|
||||
|
||||
## Sequencing
|
||||
|
||||
Self proposed feedback, then audio, then content. Feedback goes first because it is
|
||||
the cheapest per unit of perceived quality and it makes later content read. This
|
||||
target keeps that order for agent-paced work, with one change: **content is the
|
||||
calendar-critical path, so its unblocking runs in parallel rather than last.** The
|
||||
quota is met one hull a day of operator time, and that clock cannot start until a
|
||||
mesh flies. The steps that start it cost the agents little:
|
||||
|
||||
- the operator's owed S2 play checks on `codex/moddable-ships`;
|
||||
- the merge;
|
||||
- the add-on's package action.
|
||||
|
||||
Agent order: `feedback-1`. Then `audio-1`, once `audio-route` is ruled; it consumes
|
||||
`feedback-1`'s impact cue. Then the content strand's add-on action as soon as
|
||||
moddable-ships merges. After that, the remaining feedback and audio cuts alternate.
|
||||
The run goes first, because it is the hole every other strand fills: without it the
|
||||
demo has no thirty minutes. `demo-galaxy` and `station-services` are independent
|
||||
and can run in parallel; `boss-gate` follows `demo-galaxy`. Feedback and audio follow
|
||||
the order already mapped (`feedback-1`, then `audio-1`). Faction play waits for its
|
||||
re-anchor. Content runs in parallel at the operator's pace, because the hull clock
|
||||
starts only when the first demo hull flies.
|
||||
|
||||
## Lanes and collisions
|
||||
|
||||
| Lane | Owner | This campaign |
|
||||
|---|---|---|
|
||||
| `codex/fire-control-12` (operator checkout, modified `.blend`) | Codex / operator | Never touched. Reads use `git show` or a scratch worktree. |
|
||||
| `codex/mining` | Codex | Waits for its merge. `feedback-1` edits `FireControl.Apply`, `ApplyDirectHit` and `Detonate`, which mining does not change (it edits `FireControl.cs:72-100` and `:522-535`). Mining Cut 4 (shots at chunks) should publish impacts through the same contract (follow-up). |
|
||||
| `codex/scenarios` | Codex, blocked on a fix batch | Waits. Operator checks in this campaign are reachable through ordinary play. Where one is not, it waits for scenarios Cut 4. |
|
||||
| `codex/moddable-ships` | Codex, S2 owing operator checks | Waits for the merge. Ownership of anchor authoring and S3 after the merge is question `content-lane-owner`. |
|
||||
| `eureka/aetheria-release-*` | This campaign | One branch per cut, from `origin/master`, each in its own worktree. |
|
||||
|
||||
The hot files are shared with the lanes: `Entity.cs`, `FireControl.cs`,
|
||||
`ActionGameManager.cs`, `EntityInstance.cs` and `ZoneRenderer.cs`. Each cut keeps
|
||||
its hunks out of the regions the open lanes change, which are listed per spec. New
|
||||
behaviour goes in new files wherever an existing owner allows it.
|
||||
The hot files are `Entity.cs`, `FireControl.cs`, `ActionGameManager.cs`,
|
||||
`ZoneGenerator.cs`, `ZoneRenderer.cs` and `TradeMenu.cs`. Each cut branches from
|
||||
`origin/master` in its own worktree and keeps its hunks out of the regions other open
|
||||
cuts change, which are listed per spec. New behaviour goes in new files wherever an
|
||||
existing owner allows it.
|
||||
|
|
|
|||
Loading…
Reference in a new issue