Raid summary — manual browser checklist¶
Spec: spec/screens/raid-summary.md · deliverable: raid-summary-flow-tests.
Сценарий конца рейда проверяется по этим шагам; автоматические прогоны делают то же самое:
node tools/raid-summary-check.js (fixture) и node tools/raid-summary-browser-check.js
(реальный headless Chromium + реальный игровой цикл).
Подготовка¶
- Открыть
index.htmlв браузере (илиpython3 -m http.serverи зайти на/). - Базовое меню видно, ошибок в консоли нет.
A. Extract → сводка с добытым (banked)¶
- Нажать «▶ Enter the Raid». HUD появился, экрана сводки нет.
- Собрать хаул: предметы из мешков/на полу, золото/синие принты (2BP×50 на карточке считаются по
CFG.extraction.bpValue). - Дойти до портала и удерживать пядь: стоять на паде, пока не пройдёт канал («Boarding…» → конец рейда).
- Шаги 2–3 можно ускорить: ставим паузу не нужно — канал безопасного выхода короткий, враги не успевают.
- Сводка. Ожидаем:
- заголовок «✦ Extracted! ✦» со стилем
.winи иконкой экстракции; resultTotalsначинается с «Banked:» — N items · V value · K kills · ⏱ M:SS survived;raidsWon = +1;lootList— по чипу на каждый предмет с ценой, золото «🪙 N gold», принты «📜 N blueprints»; ничего не зачёркнуто;- вторичная кнопка «To the Lobby» скрыта; основная — «Continue».
- Нажать «Continue» → база (меню), золото в сейве выросло на V,
bestHaulобновился.
B. Die → сводка с потерянным (lost)¶
- Войти в рейд, набить мешок и золото.
- Погибнуть (враги, ловушка) либо дождаться конца таймера (позже
CFG.extraction.closingFromStepпо глобальному шагу — на B1F1 часов нет по дизайну). - Сводка. Ожидаем:
- заголовок «✗ You Fell» со стилем
.lose, иконки экстракции нет; resultTotalsначинается с «Lost this raid:» — потерянные items/value · 🔒 kept (Safe Pocket) · kills · ⏱ M:SS survived · 🔴 Fell;raidsWonне вырос;- предметы, оставшиеся в мешке, — зачёркнутые чипы (
.loot-chip.lost); чипы из Safe Pocket — не зачёркнуты; - если в конце хаула не было ни предмета, ни золота — явный чип «(nothing was carried)»;
- основная кнопка — «⚔ Raid Again», вторичная «To the Lobby» видна.
- «⚔ Raid Again» → новый заход на тот же этаж (мешок пуст, kills 0, часы/сводка скрыты).
C. Continue → база¶
- На карточке экстракции «Continue» всегда возвращает в меню (базу) — HUD скрыт, сводка скрыта, деньги записаны.
- На карточке смерти Continue — это «⚔ Raid Again» (прямо в новый заход); в базу ведёт вторичная «To the Lobby».
Заметки по часам на карточке¶
- Экстракция: время от раундовых часов (
G.timerOn), на бесклональных этажах (корридоры, B1F1) — от стены (performance.now() - G.runStart). - Смерть по таймеру: раундовые часы; смерть от урона: тоже от
G.timerOn(на бесклональных — стена). - Известный пограничный случай:
runStart = 0— см. §7 карты (0:00).