This website requires JavaScript.
Explore
Help
Sign In
herryyun
/
ark-stronghold-protocol
Watch
1
Star
0
Fork
0
Code
Issues
Pull Requests
Actions
Packages
Projects
Releases
Wiki
Activity
Files
7d20695adf9b85949e620e31905bb8ff6902cc34
ark-stronghold-protocol
/
docs
T
History
sganggs
7d20695adf
feedback5: merge R5 — client split: ui/gameLogic/*, render/fx/*, render/app/* (prelude), screens/game/* (same exports)
...
# Conflicts: # .git-blame-ignore-revs # public/js/ui/gameLogic.js
2026-10-05 18:38:43 +08:00
..
img
卫戍协议:盟约 web remake — initial import
2026-09-29 16:21:31 +08:00
research
feedback5 WE: the 整备区 rules of PRTS 卫戍协议/帮助 §手牌区 (GitHub
#82
, second part) — a full regular hand refuses every purchase and reward pick, also one whose copy would complete a merge at once ("当常规手牌区全满无空位时,玩家将无法执行使手牌溢出的操作" — "例如招募/购入等通常情况下会增加手牌的操作"; BWIKI 盟约 says the same with no exception; the reporter checked it in the official game), and a free regular slot pulls the 临时整备区 in at once ("常规手牌区出现空位时自动移入"): PlayerState._fillHandFromTemp runs in every recompute, the temp row right to left (the order it fills, [ASSUMED]) into the hand's free slots right to left — after a sale, a deployment from the hand, a merge that consumed hand copies, an item equipped / destroyed / used, a summon stack removed with its owner. invariants.js: temp holds pieces only while the hand is full. The client's refusal path follows (gameLogic.shopBlockReason: 整备区已满 on every card — a one-line change in a file the R5 split moves). Bots: a full hand never tries a purchase, an affordable third copy of a held pair sheds the weakest hand single first (never one of this prep), resolveTemp decides temp right to left. Tests: test/match/feedback5-hand.test.js; merge / hardening / playtest6-elite-to-board / economy / prep-bench / uiFixes updated to the rule. Docs: META §1 Hand, DESIGN §6, PLAYING §3, research 00-INDEX / 01 (the old "a merge-completing purchase is allowed" corrected). Golden: 3 match scenarios moved (coop2-NORMAL-3, solo-HARD-9-boosted, coop2-ABYSS-10-boosted — bot seats that reached a full hand: the merge-completing purchase refused or a single shed first, temp pieces moving in by themselves); every battle digest unchanged
2026-10-05 18:17:08 +08:00
ASSETS.md
feedback5 R5: point the layout docs at the split client modules
2026-10-05 17:26:08 +08:00
BALANCE.md
feedback1 integrate: bot numbers - the 0.1.0 bot on the final 0.1.1 rules (solo gain mostly the rules, co-op the bot)
2026-10-03 12:08:52 +08:00
DATA.md
feedback5: merge W5E — a full hand refuses buys and reward picks, temp pieces fill freed slots (
#82
); 联防 plays on the official escaped maps (
#41
)
2026-10-05 18:19:36 +08:00
DEPLOY.md
feedback3: 0.1.3 design notes, changelog and version
2026-10-04 22:13:05 +08:00
DESIGN.md
feedback5: merge R5 — client split: ui/gameLogic/*, render/fx/*, render/app/* (prelude), screens/game/* (same exports)
2026-10-05 18:38:43 +08:00
META.md
feedback5 WE: 联防 is played on its own map, the escaped template level (GitHub
#41
, item 3) — act2autochess constData escapedBattleTemplateMapSinglePlayer / MultiPlayer = level_act1autochess_escaped_single / _multi name the level of the 联防 battle, and its map is the field: two road halves (cols 3–9 and 11–17, rows 9–12) joined at col 10, no water, crates or devices (until 0.1.3 the round's stage, opened to both halves). tools/build-data.mjs builds both into data/stages.json after the 11 battle stages (kind 'unite', helpers 1 / 2, weight 0, inactive, no modes, the name 联防阵地(N名玩家) the remake's own label [ASSUMED]; validation ties config.unite.templates to them); regenerated offline, a JSON compare shows only the two added records. unite.js uniteStageId picks the map of the helper count (escaped_single's routes enter at col 10, escaped_multi's at col 18 through (9,10)); match/unitePhase.js fields the 联防 battle on it (the round's stage only with data that lacks it); each helper on its prep tiles, the first of two shifted 8 columns onto the right half as before (the official halves; player_map_lr_offset 8). Client: screens/game.js draws the shown field's own map and restores the board's on leaving it (a 2-line change in a file of the R5 split; render/app.js enterBattle already loads m.field stageId); the dev mock's 联防 follows. The 联防 BGM (PR
#110
) is unchanged. Tests: test/match/feedback5-unite-map.test.js (both combat modes, 1 and 2 helpers, degraded data), test/data.test.js, test/render/tiles.test.js. Docs: DATA §12, META §4, DESIGN §3, PLAYING §5. Golden: fields unite-1 / unite-2 (the battle's stage → the 联防 map) and the 6 co-op match scenarios with a 联防 round (coop2-NORMAL-3, coop2-HARD-4, coop3-ABYSS-5, coop4-FUNNY-6, coop4-ABYSS-7, coop2-NORMAL-8-serverrun); roster / bonds unchanged (tools/golden.mjs leaves the 联防 maps out of its stage list)
2026-10-05 18:17:08 +08:00
PLAYING.md
feedback5: merge W5E — a full hand refuses buys and reward picks, temp pieces fill freed slots (
#82
); 联防 plays on the official escaped maps (
#41
)
2026-10-05 18:19:36 +08:00
SIM.md
feedback5: merge R5 — client split: ui/gameLogic/*, render/fx/*, render/app/* (prelude), screens/game/* (same exports)
2026-10-05 18:38:43 +08:00
WINDOWS.md
Windows 便携包:只收 git 跟踪的文件、生产依赖、钉死的 Node 版本与许可证 (
#30
)
2026-10-04 14:20:11 +08:00