re: the player-facing chatter partition; correcting the wingman claim
The 13 tables that voice every player-facing event are all PresetMessage_Katana_*, the PLAYER's own sets -- unit-group-table.md already names the link (DeltaSaber_T_Player carries msg=MessageSet_Katana). Exact partition: 13 voice all 14 events, 131 voice none, 0 voice some, and no non-Katana table voices any of them. CharacterKATANA is the only speaker exclusive to the set. Corrects preset-message-rules.md, which called those the wingman tables. The wingman roster is owned by isl-condition-builtins.md (UNITS: Bird1-Sandra ... Rhino2-Katana, Rhino3-Ellen) and needed no experiment. Residual: Katana_09_S10-1 and Katana_14_S16-2 voice none of the 14. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PMRJjbxLqZtsb5Vb7KunPE
This commit is contained in:
@@ -67,10 +67,12 @@ mismatches. That is what pins the pairing. The second element of each pair is
|
||||
The full census with per-event table counts is in the artefact. The shape of
|
||||
that census is itself informative:
|
||||
|
||||
* **Player-facing events are voiced only by the wingman tables.** Every
|
||||
`LOCKON_1..12`, `LOCKON_UP`, `LOCKON_DOWN`, `PLAYER_HP_LESS_10/30/50` and
|
||||
`PLAYER_AMMO_LESS_00/10/40` record carries lines in **exactly 13** of the 144
|
||||
tables — the same 13 as `ORDER_WINGMAN_{FORMATION,ATTACK,COVER,EXTENDED}`.
|
||||
* **Player-facing events are voiced only by the PLAYER's own tables** — see
|
||||
"the player-facing partition" below. Every `LOCKON_1..12`, `LOCKON_UP`,
|
||||
`LOCKON_DOWN`, `PLAYER_HP_LESS_10/30/50` and `PLAYER_AMMO_LESS_00/10/40`
|
||||
record carries lines in **exactly 13** of the 144 tables, the same 13 as
|
||||
`ORDER_WINGMAN_{FORMATION,ATTACK,COVER,EXTENDED}`. (❌ An earlier revision of
|
||||
this document called those "the wingman tables". They are not.)
|
||||
* The squad/squadron order events carry lines in **7** tables each.
|
||||
* Generic combat events are near-universal: `DAMAGED_BY_PLAYER_GREATER_50` 128,
|
||||
`DAMAGED` 124, `HP_LESS_10` and `HP_LESS_50` 121 each.
|
||||
@@ -532,8 +534,58 @@ among *higher*-priority pending nodes) that makes `+20` a ducking level: raised
|
||||
while a higher-priority line plays, released when it retires. The exact
|
||||
attenuation is not established here.
|
||||
|
||||
## ✅ The player-facing partition — and a correction
|
||||
|
||||
**Settled 2026-08-27.** The 13 tables that voice every player-facing event are
|
||||
**all `PresetMessage_Katana_NN_S<stage>-<phase>.tbl`** — the player character's
|
||||
own chatter sets.
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| tables voicing **all 14** player-facing events | **13** |
|
||||
| tables voicing **none** | **131** |
|
||||
| tables voicing **some** | **0** |
|
||||
|
||||
Zero partials: the split is exact, not a tendency. And it is not merely that few
|
||||
others voice them — **none of the 129 non-Katana tables voices *any* of the 14**.
|
||||
|
||||
There are **15** Katana tables in total; the two that voice none are
|
||||
`Katana_09_S10-1` and `Katana_14_S16-2`, and they are all-or-nothing like
|
||||
everything else. Why those two stage-phases opt out is not established.
|
||||
|
||||
Of the 15 speakers named across the 13, **`CharacterKATANA` is the only one
|
||||
exclusive to them**; the other 14 all appear in other tables too.
|
||||
|
||||
[`unit-group-table.md`](unit-group-table.md) supplies the link that makes this
|
||||
make sense — the player's own flight in Stage 02 reads
|
||||
|
||||
```
|
||||
unit=UN_f001_TCAF_DeltaSaber_T_Player msg=MessageSet_Katana id=Character_Player_Test
|
||||
unit=UN_f001_TCAF_DeltaSaber_T msg=MessageSet_Ellen id=ELLEN
|
||||
```
|
||||
|
||||
so `MessageSet_Katana` is the message set attached to the **player craft**.
|
||||
`LOCKON_*` is the player's own lock-on callout, `PLAYER_AMMO_LESS_*` the player's
|
||||
own ammunition, and `ORDER_WINGMAN_*` the player *issuing* an order — all of
|
||||
which belong on the player's set and nowhere else.
|
||||
|
||||
### ❌ Correction, and the doc that already owned the question
|
||||
|
||||
The question this iteration set out to answer — "which of the 49 speakers are
|
||||
wingmen" — was **already answered elsewhere and did not need this experiment**.
|
||||
[`isl-condition-builtins.md`](isl-condition-builtins.md) owns it: the `UNITS`
|
||||
record in `GP_HANGAR_ARSENAL.pak` is seven fields pairing a craft slot with a
|
||||
pilot — `Bird1-Sandra`, `Bird2-Billy`, `Bird3-Antonius`, `Bird4-Carl`,
|
||||
`Rhino1-Raymond`, `Rhino2-Katana`, `Rhino3-Ellen` — and it names that **the
|
||||
wingman roster**. [`hangar-loadout-system.md`](hangar-loadout-system.md) owns the
|
||||
`PlayerSET_*` rows that go with it.
|
||||
|
||||
So the earlier phrasing here was wrong twice over: the 13 are the **player's**
|
||||
tables, not wingman tables, and the wingman roster is a separate, already-settled
|
||||
list in which `Rhino2-Katana` is the player's own slot.
|
||||
|
||||
## 🟡 Not settled
|
||||
|
||||
* The *policy* the seven fields drive — see "what this does not settle" above.
|
||||
* Which of the 49 speakers is a wingman — the "13 tables" partition above is a
|
||||
count, not a verified roster.
|
||||
* Why `Katana_09_S10-1` and `Katana_14_S16-2` opt out of the player-facing
|
||||
events entirely.
|
||||
|
||||
Reference in New Issue
Block a user