re: the objective/tutorial marker records; S24-S29 are CHALLENGE, not story
Correction first. stage-numbering-and-player-craft.md called S24-S29 'story' and reported 22 story stages. challenge-mission-gate.md OWNS that split and already had it: S01-S16 story, S18-S23 tutorials, S24-S29 challenge. A third confirmation fell out of this iteration: AUTO_SETTINGS names stage01..16_settings.tbl, tutorial01..06 and challenge01..06, and its field tags are 1-16, 18-23, 24-29 -- the shipped stage numbers exactly. The campaign is 16 story missions, not 22. AUTO_SETTINGS and IGNORE are likewise already owned by isl-condition-builtins.md, so nothing there was new either. What is new: the 11 marker records hud-config.md listed as unread. 12 named fields each, portable HUD data. Colour is ARGB, three per marker -- objectives red 0xFFFF0000, guard/waypoint green 0xFF20FF20, Acropolis/tanker cyan 0xFF00FFFF, sub-objective yellow 0xFFFFFF00, and every TutorialMarker_* amber 0xFFFFA010. Each carries a Normal sprite and an Emphasis part with optional Sub companions; HPGauge 0/1/2; RadarCursorType Circle/Rectangle/blank; BlinkCycle 0x800 on all eleven. TutorialTarget is Yes on exactly the five TutorialMarker_* and No on the six ObjectiveMarker_*. Parameters binds the roles: TargetMarker -> ObjectiveMarker_Target, HelpMarker -> ObjectiveMarker_SubObjective, TutoTargetMarker -> TutorialMarker_Target, plus ReloadDispTime 0.1. Enumerate_ObjectiveMarkers is the 11-name roster. Artefact +13 lines / 0 deletions; the other nine regenerate byte-identical.
This commit is contained in:
@@ -62,6 +62,18 @@ def main():
|
||||
for n in list(DEFAULT) + ['HudResource_S26.tbl', 'HudMarkerResource_S26.tbl']:
|
||||
print(" %-30s %s" % (n, 'resolves' if any(U.name_hash(q + n) in H for q in PRE) else 'no hit'))
|
||||
|
||||
print("\n## the objective / tutorial MARKER records")
|
||||
seen = set()
|
||||
for h, b in pak_entries(p2):
|
||||
if b[:4] != b'IDXD': continue
|
||||
for r in U.parse(b):
|
||||
sq = r['squadron']
|
||||
if not (sq.startswith('ObjectiveMarker_') or sq.startswith('TutorialMarker_')): continue
|
||||
if sq in seen: continue
|
||||
seen.add(sq)
|
||||
n = U.named(r)
|
||||
print(" %-30s %s" % (sq, " ".join("%s=%s" % (k, v) for k, v in sorted(n.items()))))
|
||||
|
||||
print("\n## ResourceTable -- 29 pairs, one per stage, with a single override")
|
||||
for pk in sorted(glob.glob('/work/sylph_extract/**/GP_MAIN_GAME_*2D.pak', recursive=True)):
|
||||
for h, b in pak_entries(pk):
|
||||
|
||||
Reference in New Issue
Block a user