32 lines
2.8 KiB
Python
32 lines
2.8 KiB
Python
import sys
|
|
sys.path.insert(0, r'C:\git\bt411\scratchpad\night7')
|
|
import gitea
|
|
|
|
# 134: the fix landed -- close with receipts + awaiting-verification
|
|
gitea.call('/issues/134/labels', method='POST', payload={'labels': [8]})
|
|
gitea.close(134,
|
|
"""FIXED at 91bd286 -- the panic/self-kill penalty is live.
|
|
|
|
Root cause chain (from the night-12 scan): the eject charge kills you with inflictor=SELF, and the old kill-credit stand-in (BTPostKillScore) FILTERED killer==victim, so the score path never engaged for a self-kill.
|
|
|
|
The fix is the authentic reconstruction, not a patch: the dark-gap report tail of Mech::TakeDamageMessageHandler (@0x4a04da-0x4a0890, raw disasm) now dispatches the binary's kill report even when killer==victim, and the score handler @0x4c02e4 does what 1995 did: negates the whole kill award (raw disasm @0x4c03ab fchs) and skips killCount++.
|
|
|
|
Bench receipt (scoreself.sh, self-destruct with inflictor=SELF):
|
|
```
|
|
[score] *** KILL report *** -> shooterPlayer=<own> tally=39
|
|
SCORE player=3:1 type=2 award=-39.00 total=0.00 kills=0
|
|
SCORE player=3:1 type=1 award=0.00 total=-39.00 kills=0 <- penalty LANDED
|
|
```
|
|
kills stays 0, score drops by the (negated) kill award. With authored roles the magnitude scales by killBonus/damageInflictedModifier/tonnage ratio exactly as a real kill would.
|
|
|
|
Field verify tonight: panic-eject and watch the SCORE column drop with no kill credited.""")
|
|
|
|
# 45 (closed): append the plumbing-completion note
|
|
gitea.comment(45,
|
|
"""Follow-up at 91bd286: the deferred id-0x16 report plumbing this issue's fix worked AROUND is now reconstructed outright -- the victim's TakeDamage handler dispatches the binary's three score reports (@0x4a04da/@0x4a05d9/@0x4a06c0) and the BT-extended VehicleDead {killed-by player, kill zone}. The kill-credit reroute shape verified here (victim node -> replicant-player Dispatch -> killer's master) is unchanged and re-benched cross-node (scorekill.sh: kills=1, award=4.88, killedBy=2:1 zone=3). BTPostKillScore/BTPostDamageScore are retired; per-hit inflicted credit is gone (never existed in 1995 -- @0x4c0200 is bound in no handler-table entry).""")
|
|
|
|
# 89: correct the deferred-sibling note
|
|
gitea.comment(89,
|
|
"""Correction to the deferred-siblings note above (found while reconstructing the report tail at 91bd286): the id-0x17 0x38-byte message in the death tail is NOT a mech-table SetBurningState dispatch -- it is Player::VehicleDeadMessage (the BTPlayer handler table binds 0x17 -> @0x4c05c4), i.e. the respawn trigger, in a BT extension carrying the killed-by player + kill zone. Now reconstructed + benched. The burning-state question moves to open-questions (the mech-table 0x17 name row mismatches its handler body @0x49f674 -- likely a shifted label). Death blast re-verified un-regressed after the tail reorder (deathblast2: 72 bursts at ~9u).""")
|
|
print('receipts posted')
|