feedback3 WC: 远见's −1 price has no floor but 0 — 至简 (price 1) costs 0 at 150 layers, a 远见 operator at 1 costs 0 at 80
This commit is contained in:
1 parent
ce33795d1b
commit
6bf03d07d5
8 files changed
+24
-16
No files matched your search
@@ -14,7 +14,9 @@
|
||||
// Funds earned after the prep phase ended (助力 / 寒檀 / 号角 … prep-end layers — the match wipes leftover funds right
|
||||
// after onPrepEnd) are paid as pending funds, credited at the next round start, so "获得…资金" is never silently lost
|
||||
// [ASSUMED]; `global:bondaddon_prepend` (first in every dispatch) marks the round whose prep has ended.
|
||||
// 远见 discounts never push a price below 1 (research 02 §3.15 [ASSUMED]; a price already below 1 is left alone).
|
||||
// 远见's −1 (「购买价格永久-1资金」) has no floor but 0: a price of 1 (至简 / 红豆's 购买价格为1 特质, run first on onPrice;
|
||||
// 休露丝's first 谢拉格) becomes 0 — the text names none (owner's decision 2026-10-04; before 0.1.3 research 02 §3.15
|
||||
// assumed 1).
|
||||
// Latched state lives in player counters (prefix `bondaddon:`); onPrice only reads them (pure).
|
||||
|
||||
const C_VISI_PAID = 'bondaddon:visi:paid';
|
||||
@@ -114,8 +116,7 @@ export function registerMeta(registry) {
|
||||
const rec = ctx.chessRecord(ev.id);
|
||||
if (!rec || !Array.isArray(rec.bonds) || !rec.bonds.includes(p.bond || 'visiShip')) return;
|
||||
}
|
||||
const price = n(ev.price);
|
||||
if (price > 1) ctx.modifyPrice(-Math.min(disc, price - 1));
|
||||
ctx.modifyPrice(-disc); // never below 0 (ctx.modifyPrice); 1 → 0 like any price (owner's decision 2026-10-04)
|
||||
},
|
||||
});
|
||||
|
||||
|
||||
@@ -16,7 +16,8 @@
|
||||
// * 瑰盐 "优先…更靠上的和更靠右的": highest row first (DESIGN §3.1: row 0 is the bottom), then highest column.
|
||||
// * 购买价格为N (SERVER_CHESS_PRICE): bb.price is a discount off the tier price — 至简 (Ⅲ, 3) has 2 → 1, 红豆 (Ⅰ, 2)
|
||||
// has 1 → 1, exactly the N both official texts give (user playtest #5: 至简 costs 1). The dispatcher runs it before
|
||||
// every other onPrice modifier, so 远见's discount (never below 1) and strategy caps act on the lowered price.
|
||||
// every other onPrice modifier, so 远见's discount (to 0 at 150 layers since 0.1.3) and strategy caps act on the
|
||||
// lowered price.
|
||||
// * [ASSUMED] 余 SERVER_MOST_BOND: ties between most-member bonds are shuffled; the chess is a copy-weighted pool roll
|
||||
// of any tier (the text gives no tier cap); a bond without an available chess falls through to the next tied one.
|
||||
// * [ASSUMED] 松果: the "免费特殊招募" is a free pick-one offer of `rewardOffer.count` (3) chess of the pool's tier.
|
||||
@@ -215,7 +216,7 @@ H.SERVER_GAIN_BOND_LAYER_BY_REFRESH_CNT = {
|
||||
|
||||
// "购买价格为N": bb.price is the discount off the chess's tier price — 至简 (Ⅲ, 3 资金) carries 2 and 红豆 (Ⅰ, 2 资金)
|
||||
// carries 1, and both texts say 购买价格为1 (read as the new price, 至简 cost 2; user playtest #5). The dispatcher runs
|
||||
// this first on onPrice (effectsMeta.js), so bonds (远见 −1, never below 1) and strategies see the lowered price.
|
||||
// this first on onPrice (effectsMeta.js), so bonds (远见 −1: 1 → 0) and strategies see the lowered price.
|
||||
H.SERVER_CHESS_PRICE = {
|
||||
onPrice(ctx, ev) {
|
||||
const p = ctx.source.bb.price;
|
||||
|
||||
Reference in new issue
Block a user