下载 App
不用看!喂给论坛地灵·嗒啦啦,用于辅助推算蛊虫优解炼制方案
11/0338 浏览
def attempt(op):
charge(op.cost) # 记账时点 = 操作开始; 每次尝试各记一次
if random() < 0.20:
apply_success(op); return OK
apply_failure(op); return FAIL # 失败不追加记账
def apply_failure(op):
tgt = op.receiver
if all_same_container(op.participants): return "无损" # 相同容器间: 安全
if protected(tgt): return "无损" # 保护目标: 安全
destroy(tgt) # 容器破坏, 数值清零
# giver 始终不变; 唯一例外: reverse 的母体在尝试开始即无条件消耗
def can_promote(rcv): # 晋升前置判定
return rcv.total == cap[next(rcv.stage)] \
and rcv.main_value / rcv.total >= ratio_floor[rcv.stage]
def reverse(mother): # 逆转: 母体必耗, 双子代独立判定
consume(mother)
children = []
for _ in range(2):
if random() < 0.20:
children.append(spawn(stage=prev[mother.stage],
total=cap[prev[mother.stage]],
main_ratio >= ratio_floor[prev[mother.stage]]))
return children # 分无可分部分: 不记数, 随机归属或消失
# =====================================================================
# 容器体系 · AI可读规范
# spec: container-system | version: v2.7 | status: RULES_FROZEN (计算暂停)
# ---------------------------------------------------------------------
# 标记约定:
# 无标记 = 用户明示规则, 最高优先级
# [A#n] = 推定口径 (ASSUMED), 计算时的默认值, 可被用户推翻
# [P#n] = 未决问题 (PENDING), 涉及时必须先请求裁定
# 冲突裁决顺序 = 明示 > ASSUMED > PENDING
# =====================================================================
meta:
objective: 促成恰好一个 A 阶容器后立即止步
score: 累计记录数, 越小越优
calc_status: FROZEN # 用户指令: 暂停一切演算
rng:
success_rate: 0.20 # 全局统一, 适用所有操作
rolls_independent: true # 多目标判定各自独立(如逆转双子代)
pity: null # 无保底 [A]
entities:
Stage:
order: [D, C, B, A]
cap: {D: 10, C: 20, B: 40, A: 80}
next: {D: C, C: B, B: A, A: null}
prev: {D: null, C: D, B: C, A: B}
ratio_floor: {D: 0.30, C: 0.40, B: 0.50} # 晋升主数最低占比(按出发阶)
fusion_cost: {D: 100, C: 500, B: 2500} # 相合晋升定价
Type:
ids_per_stage: 6 # 每阶段 1..6 型
exclusivity: 每个数归属一个专属类型; 类型决定同型/异型判定
NumberUnit:
attrs: {value: int>0, owner_type: Type, role: main | slot}
rules:
- slot_never_merges: "5/5 恒不等于 10, 槽位只按槽位计数"
- shell_core: 经晋升/逆转获得的数可为他人专属型(芯);
壳不变 → 一切交互仍按原壳类型认定
Container:
attrs:
name: 全局唯一
stage: Stage
shell_type: Type # 交互身份(壳)
numbers: [NumberUnit]
alive: bool
derived:
main_value: Σ value where role == main # [A] 芯型差异不影响主数认定
slot_value: Σ value where role == slot
total: main_value + slot_value
ProtectionTarget: # 明示 [v2.7]
concurrent_slots: 1 # 同时仅一个
scope: 指定容器 + 其所有"相同个体" # [P2] 相同 = 同型 or 同名
effect: 覆盖对象失败时 → 容器不破坏、数值不清零
transferable: anytime
Registry:
initial: 4 containers, 各持 d5 # [A] 同型性不影响现行主线
op1_quota: 全局一次
operations:
common:
participants: receiver ×1 + giver ×0..2
billing: 每次"开始操作"按定价记账一次; 失败本身不追加记账 # 明示 [v2.7]
rename_window: 除晋升外, 一切数字变化操作中可改名;
新名须全局唯一; 效果 = 普查身份变更(视作不同个体),
交互身份(壳)不变, 实际仍是同容器使用 # 明示 [v2.5]
give_same_type: # 同型相加
pre: giver.shell_type == receiver.shell_type
cost: 100 # [A] 源自 v1.0 记账口径
on_success: receiver += n; giver 保留
on_failure: 无损 (容器不坏、数字不消) # 明示 [v2.6]
give_diff_consume: # 异型消耗
pre: 异型
cost: 100 # [A]
on_success: 客数以槽位入 receiver; giver 被消耗
on_failure: receiver 破坏+清零; giver 不变 # 明示
note: 与 give_diff_copy 并存, 玩家可选 [P5]
give_diff_copy: # 异型复制 [v2.3]
pre: 异型
cost: 100 # [A]
on_success: receiver 得复制值; giver 保留
on_failure: receiver 清零且容器消失; giver 不变
cross_stage_gift: # 跨阶取赠 [v2.7]
pre: giver.stage < receiver.stage (任意低阶)
rule: 高阶自由选择低阶给予自己数
judgment: 同型 or 异型 [P7, 默认按异型 → 20%]
promote_fusion: # 相合晋升
pre: 受赠后 total 恰 == cap[next(stage)]
cost: fusion_cost[stage]
check: main_value / total ≥ ratio_floor[stage], 否则禁止晋升
rename: 禁止 # 明示
giver_fate: 同型保留(相加) / 异型被消耗
on_failure: receiver 破坏+清零 (除非受保护); giver 不变
note: 被消耗者永久退场 [P11 默认]
promote_single: # 单晋升 [v2.6]
mechanic: 购买主数点填至 cap[next(stage)], 恰好落点
cost: 20 × (cap[next] − total)
purchased_points: 计为主数 [A#P10]
rename: 禁止
on_failure: receiver 破坏+清零 (受保护则无损) # 明示 [v2.7]
reverse: # 逆转 [v2.4 + v2.7]
pre: stage ∈ {C,B,A}; 目标 = prev(stage) # 单阶锁, 不能多不能少
cost: [P1 未定价]
mother_fate: 无条件被消耗 # 明示
children: 2 个, 各自独立 roll 20%
child_spec:
stage: prev(mother.stage)
total: == cap[child_stage] # 构成可浮动
main_ratio: ≥ ratio_floor[child_stage] # [A#P9 默认查目标阶]
type/编制占用: [P4]
split_unable: 多型数分无可分 → 该部分不记记录数,
随机[归属其一 | 消失] # 明示
manage_ops: # 处理操作 [v1.0]
op1: {effect: 新增 1 个 d5, cost: 200, limit: 全局一次}
op2: {effect: 给予方 +5, cost: 100}
op3: {effect: 减除超额数, cost: 20/每数}
rng_applies: true [A#P8]; on_failure: 安全重试 [A]
failure_model: # 明示整合 [v2.6 + v2.7]
billing: 失败不记数; 仅操作开始记一次
dispatch:
- if 参与各方互为相同容器: 无损
- elif receiver 被保护目标覆盖: 无损
- else: receiver 破坏 + 数值清零 (giver 始终不变; 逆转母体例外: 无条件消耗)
hard_constraints:
C1: total ≤ cap[stage]; 超必减(op3), 欠必续增
C2: 晋升恰好落在 cap[next(stage)]
C3: 晋升主数占比 ≥ 30%/40%/50% (按出发阶)
C4: 单阶锁 — 晋升仅 next, 逆转仅 prev
C5: 全局 A ≤ 1; 达成即终局
C6: 单次操作中相同容器 ≤ 2 (改名可改变普查身份规避)
C7: 单次操作 ≤ 1 接收 + 2 给予
C8: 每阶段 ≤ 6 型
C9: 晋升过程禁改名
C10: 名称全局唯一
C11: 槽位永不合并
C12: 被消耗者永久退场 [A#P11]
announced_not_implemented:
- innate_high_stage: 天生高阶容器与数 (细节未给)
- innate_multi_type: 天生多型容器 (逆转 split_unable 条款为其预留)
pending: # 计算重启前需逐条裁定
P1: 逆转基础价 (按母阶/子阶? 每次尝试/每子代?)
P2: "相同容器/个体" = 同型 or 同名
P3: 芯型由玩家自选 or 随来源自动
P4: 逆转子代类型归属与编制占用
P5: 异型消耗 vs 复制是否并存可选 [默认: 并存]
P6: 消耗式失败时给予方是否幸存 [默认: 幸存]
P7: 跨阶取赠判定类型 [默认: 异型]
P8: 处理操作是否吃 20% [默认: 吃, 失败安全]
P9: 逆转子代占比门槛查哪阶 [默认: 目标阶]
P10: 单晋升购点计主数; d5直攀查前or后 [默认: 计主数, 查后]
P11: 被消耗者是否永久退场 [默认: 永久]
P12: 槽位客数可否随壳转赠 [默认: 未触发]
archive: # 冻结结果, 只读
deterministic_era: {v1_0: 4200}
expected_era: {v2_7: 7500, retired: [3700, 4300, 21000]}
changelog:
v1_0: 基础晋升 / 处理操作 / 终局目标
v2_0: 类型系统 / 槽位 / 消耗给予
v2_1: 主数占比门槛
v2_3: 异型复制 20%
v2_4: 逆转
v2_5: 异型统一 20% / 改名 / 相同容器限 2
v2_6: 全局 20% / 双晋升(相合+单晋升)
v2_7: 保护目标 / 壳芯分离 / 单阶锁 / 跨阶取赠 / 母体消耗 / 失败记账规则












