一字成兵在线开发文档开发交接

一字成兵配置表头与字段字典

v2.0 · 2026-10-27 · 当前数值规则20261027

36张逻辑表、303字段;OH正式工作簿及读取契约需真实导表验证。数值范围用宽数值,属性定点原文以字符串精确表示,不截成32位整数。

20261027规则已确认 · 代码、发布与实玩验证分别记录

01YZBattleDefine

YZBattle.xlsm · YZBattleDefine 单行(YZBattle)

规则20261027:对兵/对城10000;基础间隔1500ms,最小500ms,最慢比例2;生产9000ms,运输850ms。

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
spawn_ms int 营地出兵周期;模拟毫秒 必填;按业务规则校验,0不是自动继承;—
first_spawn_ms int 营地首批产兵延迟;模拟毫秒 必填;按业务规则校验,0不是自动继承;—
route_step_ms int 棋盘每格行进基准时长;模拟毫秒 必填;按业务规则校验,0不是自动继承;—
move_scale_bp int 战场移动全局倍率;万分比;10000=1倍或100% 必填;按业务规则校验,0不是自动继承;—
stack_k_bp int 额外字层统一系数;万分比;10000=1倍或100% 必填;按业务规则校验,0不是自动继承;—
unit_damage_bp int 对单位伤害系数;万分比;10000=1倍或100% 必填;按业务规则校验,0不是自动继承;—
castle_damage_bp int 对城伤害系数;万分比;10000=1倍或100% 必填;按业务规则校验,0不是自动继承;—
min_damage_fp string 命中伤害下限;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
armor_denominator_fp string 护甲减伤分母常数;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
damage_reduce_cap_bp int 减伤比例上限;万分比;10000=1倍或100% 必填;按业务规则校验,0不是自动继承;—
base_attack_interval_ms int 基础攻击间隔;模拟毫秒 1500;—
min_attack_interval_ms int 最小攻击间隔;模拟毫秒 500;—

02YZMode

YZBattle.xlsm · YZMode 每模式一行(YZBattle)

教学/AI/塔/试用;共享出兵,限时与结算区别由模式配置

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
time_limit_ms int 该模式限时;模拟毫秒 必填;按业务规则校验,0不是自动继承;—
timeout_rule string 超时胜负比较规则;文本/枚举 castle_hp_ratio_loss_on_equal=比较剩余城血百分比,我方严格高才胜;tower_fail=塔超时失败;trial_end=试用结束;—
free_split_count int 新三口牌免费额度;整数 必填;按业务规则校验,0不是自动继承;—
hero_series_limit int 免费或可登记系列上限;整数 普通局登记上限;塔免费系列数;不表示最多只能有两个武将单位;—
series_gate_type string 武将系列限制规则;文本/枚举 registered_two=普通局两系列登记不释放;board_video=塔按操作后盘面去重,第三系列视频许可;trial=试用定向;—
card_economy_id int 局内经济规则引用;整数 必填;按业务规则校验,0不是自动继承;YZCardEconomy.id
reward_id int 结算规则引用;整数 必填;按业务规则校验,0不是自动继承;YZReward.id
ad_rule_id int 广告业务规则引用;整数 必填;按业务规则校验,0不是自动继承;YZAdRule.id

03YZCardShape

YZCard.xlsm · YZCardShape 每形状一行(YZCard)

8形状;方向上1右2下4左8;合法mask=3,6,9,12,7,11,13,14

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
open_mask int 开放边位掩码;整数 上1右2下4左8;合法3/6/9/12/7/11/13/14;与port_count一致;—
port_count int 开放边数量;整数 只允许2或3;等于open_mask置位数;—
base_cost int 基础建造点费用;整数 必填;按业务规则校验,0不是自动继承;—
view_id int 表现模板引用;整数 必填;按业务规则校验,0不是自动继承;YZView.id

04YZLetter

YZCard.xlsm · YZLetter 每单字一行(YZCard)

12单字;姓名散字不加属性;成首将扣身份2层后其余姓名每层500万分点加生命近远攻;骑每层移动1800,攻速因子0.8+0.2H。

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
text string 卡牌显示文字;文本/枚举 必填;空值不代表自动回退;—
family_id int 武将系列编号;整数 0=基础字;武将字引用YZHero.id,所属系列由身份决定;—
effect_type string 效果处理器类型;文本/枚举 有限处理器枚举;刀/弓/盾/骑/姓名字、技能、战术、训练分别由模块注册;不接受任意函数名;—
weapon_id int 武器引用;整数 必填;按业务规则校验,0不是自动继承;YZWeapon.id;非武器字为0
base_cost int 基础建造点费用;整数 必填;按业务规则校验,0不是自动继承;—
general_all_stat_bp int 额外将字每层生命近远攻增量;万分比;10000=1倍或100% 500;仅已成主将且扣身份两层后的额外姓名层;未成将0;—
horse_move_bp int 首层骑移动速度增量;万分比;10000=1倍或100% 必填;按业务规则校验,0不是自动继承;—
horse_speed_layer_bp int 骑层攻速指数增量;万分比;10000=1倍或100% 2000;与无骑基数8000相加,不表示每秒次数;—
training_id int 训练项引用;整数 必填;按业务规则校验,0不是自动继承;YZTraining.id;0=不关联

05YZCardEconomy

YZCard.xlsm · YZCardEconomy 每费用规则一行(YZCard)

当前12000、10、2、30、5、6000、30、5、5;涨价计数属于运行时

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
quote_growth_bp int 建牌价格递增底数;万分比;10000=1倍或100% 1.2记12000;价格公式及向上/向下取整沿当前经济规则;—
reroll_base int 首次换批价格;整数 必填;按业务规则校验,0不是自动继承;—
reroll_step int 每次换批价格增量;整数 必填;按业务规则校验,0不是自动继承;—
reroll_cap int 换批价格上限;整数 必填;按业务规则校验,0不是自动继承;—
natural_gain int 每周期恢复建造点;整数 必填;按业务规则校验,0不是自动继承;—
gain_interval_ms int 自然恢复周期;模拟毫秒 必填;按业务规则校验,0不是自动继承;—
resource_card_gain int 资源牌收益;整数 必填;按业务规则校验,0不是自动继承;—
tower_count_cap int 塔价格计数上限;整数 必填;按业务规则校验,0不是自动继承;—
merge_max_rank int 字牌最大阶数;整数 必填;按业务规则校验,0不是自动继承;—

06YZCardPool

YZCard.xlsm · YZCardPool 每池及候选一行(YZCard)

抽牌类型/字类别/具体字/开口分阶段;原94%字牌、字中68%基础;三口概率模式不同

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
pool_id int 候选池分组编号;整数 表内分组键,可重复;id仍唯一;不是外键;—
draw_stage string 抽样阶段;文本/枚举 card_type=字/资源;family=基础/武将;letter=具体字;shape=开口;每阶段分开归一化;—
candidate_id int 本阶段候选编号;整数 按draw_stage解释;letter引用YZLetter,shape引用YZCardShape,其余引用阶段枚举;—
weight int 相对抽样权重;整数 必填;按业务规则校验,0不是自动继承;—
condition_id int 使用条件引用;整数 必填;按业务规则校验,0不是自动继承;Condition.id;0=无额外条件

07YZCardScript

YZCard.xlsm · YZCardScript 每定向供牌步骤一行(YZCard)

教学与试用专用;固定顺序仍从规则扣费用

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
script_id int 定向供牌组编号;整数 必填;按业务规则校验,0不是自动继承;—
step_index int 脚本步骤顺序;整数 必填;按业务规则校验,0不是自动继承;—
letter_id int 单字引用;整数 必填;按业务规则校验,0不是自动继承;YZLetter.id
shape_id int 开口形状引用;整数 必填;按业务规则校验,0不是自动继承;YZCardShape.id
rank int 字牌阶数;整数 必填;按业务规则校验,0不是自动继承;—
is_recommended int 是否显示教学推荐;整数 0/1;0否1是;—
fallback_pool_id int 定向牌结束后的随机池;整数 必填;按业务规则校验,0不是自动继承;YZCardPool.pool_id

08YZUnitBase

YZUnit.xlsm · YZUnitBase 每单位底板一行(YZUnit)

基础属性来自训练表;裸兵生命为盾训练×0.64,徒手为刀训练×0.4;不保留旧42/8常数。

字段 类型 含义与单位 校验与引用
id int 身份ID;整数 必填,非负,明确含义,不使用0自动继承;—
training_hp_id int 盾训练引用;整数 必填,非负,明确含义,不使用0自动继承;YZTraining.id
unarmed_layer_bp int 无刀近攻层系数;整数 4000;—
move_speed_fp string 基础移动速度;定点十进制整数字符串;10000=1 550000,精确解析,不截成32位整数;—
armor_fp string 基础护甲;定点整数十进制字符串 0;—
view_id int 表现引用;整数 必填,非负,明确含义,不使用0自动继承;YZView.id

09YZWeapon

YZUnit.xlsm · YZWeapon 每武器一行(YZUnit)

刀/弓训练初值15/9,射程50/220;攻击用训练表,不叠旧16/14;无弓不远攻,最低武器资格例外。

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
weapon_type string 近远程武器类型;文本/枚举 melee=近战;ranged=远程;—
training_attribute string 训练属性列;枚举 knife或bow;直接读取逐级训练值;—
range_fp string 逻辑攻击或作用范围;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
training_id int 训练项引用;整数 必填;按业务规则校验,0不是自动继承;YZTraining.id;0=不关联
attack_fx_id int 攻击表现引用;整数 必填;按业务规则校验,0不是自动继承;表现事件注册表;关联fx资源键
hit_fx_id int 受击表现引用;整数 必填;按业务规则校验,0不是自动继承;表现事件注册表;关联fx资源键

10YZCombo

YZUnit.xlsm · YZCombo 每基础组合一行(YZUnit)

刀盾C1、额外近攻+.50、33%固定减伤;骑射C1.5、攻频1、射程320。

字段 类型 含义与单位 校验与引用
id int 组合ID;整数 必填,非负,明确含义,不使用0自动继承;—
recipe_letter_ids int[] 配方字ID;整数 必填,非负,明确含义,不使用0自动继承;—
recipe_counts int[] 配方层数;整数 必填,非负,明确含义,不使用0自动继承;—
priority int 首次成型锁定次序;整数 必填,非负,明确含义,不使用0自动继承;—
damage_bp int 身份攻击系数;万分比 刀盾10000,骑射15000;—
melee_extra_bp int 近攻层系数额外加法;万分比 刀盾5000,骑射0;首次成型即生效;—
ranged_extra_bp int 远攻层系数额外加法;万分比 均0;—
attack_rate_bp int 身份攻频倍率;万分比 均10000;—
range_fp string 射程;10000=1逻辑距离 骑射3200000;其他按武器;—
damage_reduction_bp int 固定减伤;万分比 刀盾3300,骑射0;非免疫概率;—
carry_flags string 成将可继承标记;整数 fixed_reduction或range;不继承攻击/攻频;—
view_id int 表现引用;整数 必填,非负,明确含义,不使用0自动继承;YZView.id

11YZHero

YZHero.xlsm · YZHero 每武将系列一行(YZHero)

四将系数与技能见v6.0;张飞生命为加法+0.80;首次身份消耗姓名各1层,额外将字才加属性。

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
name string 显示名称;文本/枚举 必填;空值不代表自动回退;—
recipe_letter_ids int 配方所需字编号;非负整数列表;分号分隔 必填;按业务规则校验,0不是自动继承;YZLetter.id逐项引用
recipe_counts int 配方各字所需数量;非负整数列表;分号分隔 与recipe_letter_ids等长且每项>0;—
min_knife_layers int 身份自带的最低有效刀层;整数 身份有效层下限,不增加界面真实字层;当前有效层=max(真实层,下限);—
min_bow_layers int 身份自带的最低有效弓层;整数 身份有效层下限,不增加界面真实字层;当前有效层=max(真实层,下限);—
damage_bp int 伤害倍率;万分比;10000=1倍或100% 必填;按业务规则校验,0不是自动继承;—
attack_rate_bp int 形态攻击频率倍率;万分比;10000=1倍或100% 必填;按业务规则校验,0不是自动继承;—
hp_extra_bp int 生命平方项外额外加法;万分比 张飞8000,其他0;不是生命整体倍率;—
range_fp string 逻辑攻击或作用范围;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
skill_ids int 技能引用列表;非负整数列表;分号分隔 必填;按业务规则校验,0不是自动继承;YZSkill.id逐项引用
star_group int 武将星级规则组;整数 必填;按业务规则校验,0不是自动继承;YZHeroStar.star_group
view_id int 表现模板引用;整数 必填;按业务规则校验,0不是自动继承;YZView.id

12YZSkill

YZHero.xlsm · YZSkill 每技能一行(YZHero)

显式实现4将和精英有限技能,不开发通用脚本语言;技能副目标独立结伤

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
effect_type string 效果处理器类型;文本/枚举 有限处理器枚举;刀/弓/盾/骑/姓名字、技能、战术、训练分别由模块注册;不接受任意函数名;—
trigger_weapon string 技能计数使用的武器;文本/枚举 melee=近战计数;ranged=远程计数;none=非命中计数;—
hit_count int 触发技能所需命中计数;整数 必填;按业务规则校验,0不是自动继承;—
cooldown_ms int 冷却时长;模拟毫秒 时钟由业务类型明确:战斗技能为模拟;广告按cooldown_clock;—
target_type string 技能目标类型;文本/枚举 self=自身;enemy_unit=敌单位;ally_unit=友单位;castle=城池;area=范围,结合can_hit_castle;—
extra_target_count int 主目标之外的目标上限;整数 必填;按业务规则校验,0不是自动继承;—
range_fp string 逻辑攻击或作用范围;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
damage_bp int 伤害倍率;万分比;10000=1倍或100% 必填;按业务规则校验,0不是自动继承;—
duration_ms int 效果持续时间;模拟毫秒 必填;按业务规则校验,0不是自动继承;—
resist_ms int 控制共享抗性时长;模拟毫秒 必填;按业务规则校验,0不是自动继承;—
can_hit_castle int 技能是否可命中城池;整数 0/1;0否1是;—
fx_id int 动效资源引用;整数 必填;按业务规则校验,0不是自动继承;表现事件注册表;关联fx资源键

13YZLevel

YZLevel.xlsm · YZLevel 每教学场一行(YZLevel)

前20保留地图/路线/地形教学;1—4用原教学敌军构筑与波次,5场起用预算AI;全部普通属性/双方城血/奖励读新表,16场不固定姓名供牌。

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
name string 显示名称;文本/枚举 必填;空值不代表自动回退;—
board_id int 地图引用;整数 必填;按业务规则校验,0不是自动继承;YZBoard.id
difficulty_id int 挑战参数引用;整数 必填;按业务规则校验,0不是自动继承;YZDifficulty.id
mode_id int 玩法模式引用;整数 必填;按业务规则校验,0不是自动继承;YZMode.id
guide_group int 新手引导组;整数 必填;按业务规则校验,0不是自动继承;Guide引导组;0=无
card_script_id int 定向供牌脚本组引用;整数 必填;按业务规则校验,0不是自动继承;YZCardScript.script_id
card_pool_id int 随机供牌池引用;整数 必填;按业务规则校验,0不是自动继承;YZCardPool.pool_id
next_level_id int 下个教学场引用;整数 必填;按业务规则校验,0不是自动继承;YZLevel.id;末场为0进入匹配

14YZDifficulty

YZLevel.xlsm · YZDifficulty 每挑战参数组一行(YZLevel)

塔和试用独立的城血、资源、波次预算;普通对战改用YZNumericDifficulty。

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
ally_castle_hp_fp string 我方城池最大生命;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
enemy_castle_hp_fp string 敌方城池最大生命;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
initial_build_point int 开局建造点;整数 必填;按业务规则校验,0不是自动继承;—
wave_group_id int 波次组引用;整数 必填;按业务规则校验,0不是自动继承;YZEnemyWave.wave_group_id
reward_id int 结算规则引用;整数 必填;按业务规则校验,0不是自动继承;YZReward.id
pressure_tag string 压力定位标签;文本/枚举 必填;空值不代表自动回退;—

15YZBoard

YZLevel.xlsm · YZBoard 每地图一行(YZLevel)

6×6;0—2石头;坐标0起;不预铺路线

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
width int 棋盘列数;整数 固定棋盘6列;坐标0至5;—
height int 棋盘行数;整数 固定棋盘6行;坐标0至5;—
camp_x int 营地列坐标;整数 必填;按业务规则校验,0不是自动继承;—
camp_y int 营地行坐标;整数 必填;按业务规则校验,0不是自动继承;—
camp_dir int 营地初始方向;整数 0上 / 1右 / 2下 / 3左;—
obstacle_pool_id int 障碍候选池;整数 必填;按业务规则校验,0不是自动继承;YZBoardObstacle.pool_id;0=无
obstacle_count_weights int 零一二个障碍的数量权重;非负整数列表;分号分隔 必须3项依次表示0、1、2个石头;非负且总和大于0;—
view_id int 表现模板引用;整数 必填;按业务规则校验,0不是自动继承;YZView.id

16YZBoardObstacle

YZLevel.xlsm · YZBoardObstacle 每候选阻挡格一行(YZLevel)

不占营地;按种子生成并校验可玩性;营地和格坐标不是美术像素

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
pool_id int 候选池分组编号;整数 表内分组键,可重复;id仍唯一;不是外键;—
x int 列坐标;整数 必填;按业务规则校验,0不是自动继承;—
y int 行坐标;整数 必填;按业务规则校验,0不是自动继承;—
weight int 相对抽样权重;整数 必填;按业务规则校验,0不是自动继承;—
kind string 障碍物类型;文本/枚举 rock=不可放牌与通行的石头;—

17YZEnemyPreset

YZEnemy.xlsm · YZEnemyPreset 每敌军构筑一行(YZEnemy)

构筑模式调用同一属性计算器;字层与主形态显示规则同我方

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
build_mode string 敌军属性生成模式;文本/枚举 build=按字层与成长计算;explicit=教学最终面板;两种模式互斥;—
unit_id int 单位底板引用;整数 必填;按业务规则校验,0不是自动继承;YZUnitBase.id
letter_ids int 真实字种列表;非负整数列表;分号分隔 必填;按业务规则校验,0不是自动继承;YZLetter.id逐项引用
letter_layers int 真实字层数列表;非负整数列表;分号分隔 与letter_ids等长,每项>0;不重复字种ID;—
evolution_order int 基础组合完成先后;非负整数列表;分号分隔 YZCombo.id列表,先成型在前;不与hero_id抢同一身份;—
hero_id int 武将引用;整数 必填;按业务规则校验,0不是自动继承;YZHero.id;0=无身份指定
training_levels int 刀弓盾骑训练等级列表;非负整数列表;分号分隔 必须4项,依次刀/弓/盾/骑;合法1至30;—
star int 当前星级;整数 必填;按业务规则校验,0不是自动继承;—
explicit_stats_id int 显式属性覆盖引用;整数 必填;按业务规则校验,0不是自动继承;YZEnemyExplicit.id;构筑模式为0

18YZEnemyExplicit

YZEnemy.xlsm · YZEnemyExplicit 每教学覆盖一行(YZEnemy)

仅塔精英/独立试用明确面板;普通新手不再沿历史显式面板。显式面板不重乘字层,命中目标倍率1。

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
hp_fp string 显式最大生命;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
melee_damage_fp string 显式近战面板伤害;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
ranged_damage_fp string 显式远程面板伤害;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
attack_rate_fp string 每秒攻击次数;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
move_speed_fp string 逻辑移动速度;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
armor_fp string 基础护甲;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
damage_reduction_bp int 固定减伤比例;万分比 默认0;刀盾3300;不使用随机免疫;—
range_fp string 逻辑攻击或作用范围;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
display_letter_ids int 只用于显示的文字编号;非负整数列表;分号分隔 必填;按业务规则校验,0不是自动继承;YZLetter.id逐项引用
display_layers int 只用于显示的字层数;非负整数列表;分号分隔 与display_letter_ids等长;显式模式仅展示,不再用于属性计算;—

19YZEnemyWave

YZEnemy.xlsm · YZEnemyWave 每波单位组一行(YZEnemy)

用于获批的前1—4教学、塔和独立试用;普通第5场起用YZAIProfile,9秒整周期按时间段预算连续生成。

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
wave_group_id int 波次组引用;整数 必填;按业务规则校验,0不是自动继承;YZEnemyWave.wave_group_id
wave_index int 组内波次序号;整数 必填;按业务规则校验,0不是自动继承;—
scheduled_ms int 波次计划出场时刻;模拟毫秒 从本局/本层开始累计的模拟毫秒,非真实墙钟;—
preset_id int 敌军构筑引用;整数 必填;按业务规则校验,0不是自动继承;YZEnemyPreset.id
count int 本组单位数量;整数 必填;按业务规则校验,0不是自动继承;—
spacing_ms int 波内单位间隔;模拟毫秒 必填;按业务规则校验,0不是自动继承;—
trigger_type string 波次触发逻辑;文本/枚举 time=达到计划时刻;其他触发需明确阈值单位并注册处理器;不填未实现名;—
trigger_value int 触发阈值;整数 必填;按业务规则校验,0不是自动继承;—
spawn_side string 出兵阵营侧;文本/枚举 ally=我方城侧;enemy=敌方城侧;禁止在目标背后随机刷新;—

20YZMatch

YZMatch.xlsm · YZMatch 每AI档一行(YZMatch)

展示分数不放大敌属性;有效胜场决定内部难度,失败不退;调试独立,不推进正式记录。

字段 类型 含义与单位 校验与引用
id int 匹配定义ID;整数 必填,非负,明确含义,不使用0自动继承;—
name_pool_id int 展示昵称池;整数 必填,非负,明确含义,不使用0自动继承;YZNamePool.pool_id
score_delta_min int 展示分数偏移下限;整数 -100;—
score_delta_max int 展示分数偏移上限;整数 100;—
score_floor int 展示最低分;整数 0;—
peak_backtrack int 展示中心历史回落值;整数 300;—
difficulty_cap int 难度上限;整数 163;—
initial_build_point int 非固定地图初始建造点;整数 180;—

21YZNamePool

YZMatch.xlsm · YZNamePool 每昵称候选一行(YZMatch)

模拟对手昵称池;匹配引用pool_id;不伪造真人在线状态

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
pool_id int 候选池分组编号;整数 表内分组键,可重复;id仍唯一;不是外键;—
name string 显示名称;文本/枚举 必填;空值不代表自动回退;—
weight int 相对抽样权重;整数 必填;按业务规则校验,0不是自动继承;—

22YZRank

YZMatch.xlsm · YZRank 每小段一行及无双规则(YZMatch)

初始50小段;末端无双使用公式编号;首次奖励和最高分由服务器维护

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
score_min int 积分区间下界;整数 必填;按业务规则校验,0不是自动继承;—
score_max int 积分区间上界;整数 建议区间[score_min,score_max),末段-1表示无上界;与当前匹配边界逐段对账;—
name string 显示名称;文本/枚举 必填;空值不代表自动回退;—
view_id int 表现模板引用;整数 必填;按业务规则校验,0不是自动继承;YZView.id
first_reward_id int 首次奖励规则引用;整数 必填;按业务规则校验,0不是自动继承;YZReward.id;0=无

23YZTraining

YZGrowth.xlsm · YZTraining 每训练项一行(YZGrowth)

四项独立1—163级;逐级属性读取实际表值,不使用统一1.05或骑伤害成长。

字段 类型 含义与单位 校验与引用
id int 训练ID;整数 必填,非负,明确含义,不使用0自动继承;—
letter_id int 基础字ID;整数 必填,非负,明确含义,不使用0自动继承;YZLetter.id
max_level int 等级上限;整数 163;—
attribute_key string 属性名;整数 knife/bow/shield/horse;骑是攻速指数;—
unlock_effective_wins int 解锁有效胜场;整数 1;—

24YZTrainingLevel

YZGrowth.xlsm · YZTrainingLevel 每项目每级一行(YZGrowth)

J行价为J→J+1;四项费用加总,不用原K覆盖;保留十级回落。

字段 类型 含义与单位 校验与引用
id int 项目等级唯一ID;整数 必填,非负,明确含义,不使用0自动继承;—
training_id int 训练ID;整数 必填,非负,明确含义,不使用0自动继承;YZTraining.id
level int 当前等级;整数 1..163;—
attribute_value string 当前实际属性;十进制整数;原表缓存值 正值,按M/O/Q/S;不可重复推算增长;—
cost_item_id int 升级消耗金币ID;整数 必填,非负,明确含义,不使用0自动继承;—
cost_count int 本级升下级金币;整数 N/P/R/T实值;163级不得升级或扣费;—

25YZHeroStar

YZGrowth.xlsm · YZHeroStar 每星级一行(YZGrowth)

1—5星,1/1.05/1.10/1.15/1.20;10/20/40/80费用;片种由武将引用

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
star_group int 武将星级规则组;整数 必填;按业务规则校验,0不是自动继承;YZHeroStar.star_group
star int 当前星级;整数 必填;按业务规则校验,0不是自动继承;—
damage_bp int 伤害倍率;万分比;10000=1倍或100% 必填;按业务规则校验,0不是自动继承;—
hp_bp int 生命倍率;万分比;10000=1倍或100% 必填;按业务规则校验,0不是自动继承;—
next_fragment_count int 升至下一星的碎片数量;整数 当前星升下一星消耗,满星为0且升级入口禁用;—

26YZRecruitDefine

YZRecruit.xlsm · YZRecruitDefine 每池规则一行(YZRecruit)

1签、10抽保底、重复10片;免费赵云不进普通保底计数

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
ticket_item_id int 招募券道具引用;整数 必填;按业务规则校验,0不是自动继承;Item.id
cost_per_draw int 每次招募消耗数量;整数 必填;按业务规则校验,0不是自动继承;—
pity_count int 稀有保底抽数;整数 必填;按业务规则校验,0不是自动继承;—
duplicate_fragment_count int 重复武将转碎片数量;整数 必填;按业务规则校验,0不是自动继承;—
free_first_hero_id int 免费首募武将引用;整数 必填;按业务规则校验,0不是自动继承;YZHero.id
common_group_weight int 普通分组权重;整数 必填;按业务规则校验,0不是自动继承;—
rare_group_weight int 稀有分组权重;整数 必填;按业务规则校验,0不是自动继承;—
unlock_effective_wins int 招募开放有效胜场;胜 50;免费首募赵云必须先完成;—

27YZRecruitPool

YZRecruit.xlsm · YZRecruitPool 每武将候选一行(YZRecruit)

普通赵云85%组、稀有15%组;组内资格过滤;满材料移池;全满停抽

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
pool_id int 候选池分组编号;整数 表内分组键,可重复;id仍唯一;不是外键;—
group_type string 招募候选分组;文本/枚举 common=普通;rare=稀有;—
hero_id int 武将引用;整数 必填;按业务规则校验,0不是自动继承;YZHero.id;0=无身份指定
fragment_item_id int 专属碎片道具引用;整数 必填;按业务规则校验,0不是自动继承;Item.id
weight int 相对抽样权重;整数 必填;按业务规则校验,0不是自动继承;—
condition_id int 使用条件引用;整数 必填;按业务规则校验,0不是自动继承;Condition.id;0=无额外条件

28YZReward

YZReward.xlsm · YZReward 每结算规则或里程碑一行(YZReward)

普通按本局冻结难度计奖;放弃/未完成/无造兵/前4免费败0;失败180秒满额;塔不混用。

字段 类型 含义与单位 校验与引用
id int 结算规则ID;整数 必填,非负,明确含义,不使用0自动继承;—
mode_id int 模式;整数 必填,非负,明确含义,不使用0自动继承;YZMode.id
result_type string 结果;整数 win/natural_loss/abandon/incomplete/tower_floor;—
formula_type string 公式;整数 普通胜奖读难度B;自然败min(t,180)/180;塔单独逐层;—
time_denominator_ms int 自然失败满额时长;模拟毫秒 180000;—
failure_cap_bp int 自然失败封顶;万分比 10000;—
requires_actual_spawn int 要求实际造兵;布尔 普通自然失败1;—
free_tutorial_loss_zero int 前4免费教学败奖0;布尔 1;—
ad_total_multiplier_bp int 含基础的广告总倍数;万分比 20000;基础已付只补同额;—
item_ids int[] 物品ID;整数 必填,非负,明确含义,不使用0自动继承;—
item_counts int[] 物品量;整数 必填,非负,明确含义,不使用0自动继承;—
first_only int 首次限定;整数 必填,非负,明确含义,不使用0自动继承;—
condition_id int 条件引用;整数 必填,非负,明确含义,不使用0自动继承;—

29YZAdRule

YZReward.xlsm · YZAdRule 每模式广告规则一行(YZReward)

引用Ads;新增系列/三口许可、资源补给和结算加奖分别走业务处理器

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
mode_id int 玩法模式引用;整数 必填;按业务规则校验,0不是自动继承;YZMode.id
placement_id int 平台广告位配置引用;整数 必填;按业务规则校验,0不是自动继承;Ads.id
reward_type string 广告业务收益类型;文本/枚举 build_point=建造点;reroll=换批;split_license=三口许可;series_license=系列许可;settlement=结算加奖;stamina=体力;tower_entry=塔入场;—
reward_count int 单次奖励数量;整数 必填;按业务规则校验,0不是自动继承;—
free_count int 本规则免费次数;整数 必填;按业务规则校验,0不是自动继承;—
limit_scope string 次数重置范围;文本/枚举 battle=本局;tower_run=本次塔;day=业务日;account=永久;—
cooldown_clock string 冷却使用的时间类型;文本/枚举 simulation=模拟时间;foreground=前台真实时间;server=服务器真实时间;—
needs_build_cost int 视频许可后是否仍需建造点;整数 0/1;卡牌许可为1,新购仍扣冻结价格;已购重摆不再次收费;—

30YZTowerDefine

YZTower.xlsm · YZTowerDefine 单行(YZTower)

当前150、600、60、50、30、10600、10300、3、5;保留全局生产与移动

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
mode_id int 玩法模式引用;整数 必填;按业务规则校验,0不是自动继承;YZMode.id
initial_build_point int 开局建造点;整数 必填;按业务规则校验,0不是自动继承;—
ally_castle_hp_fp string 我方城池最大生命;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
repair_per_floor_fp string 过层修城上限;定点十进制整数字符串;10000=1属性/逻辑单位 必填;按业务规则校验,0不是自动继承;精确解析,运行使用足够宽数值,禁止32位截断;—
build_gain int 过层补充建造点;整数 必填;按业务规则校验,0不是自动继承;—
fixed_floor_max int 固定配置层数上限;整数 必填;按业务规则校验,0不是自动继承;—
post_hp_growth_bp int 固定层结束后每层生命成长;万分比;10000=1倍或100% 必填;按业务规则校验,0不是自动继承;—
post_attack_growth_bp int 固定层结束后每层攻击成长;万分比;10000=1倍或100% 必填;按业务规则校验,0不是自动继承;—
tactic_slots int 装备战术槽位数;整数 必填;按业务规则校验,0不是自动继承;—
tactic_interval int 战术选择层间隔;整数 必填;按业务规则校验,0不是自动继承;—

31YZTowerFloor

YZTower.xlsm · YZTowerFloor 每固定层一行(YZTower)

前30层固定;31后按定义计算;不重新随机破坏已铺地图

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
board_id int 地图引用;整数 必填;按业务规则校验,0不是自动继承;YZBoard.id
difficulty_id int 挑战参数引用;整数 必填;按业务规则校验,0不是自动继承;YZDifficulty.id
elite_id int 精英引用;整数 必填;按业务规则校验,0不是自动继承;YZElite.id;0=无精英
reward_id int 结算规则引用;整数 必填;按业务规则校验,0不是自动继承;YZReward.id
milestone_reward_id int 里程碑奖励引用;整数 必填;按业务规则校验,0不是自动继承;YZReward.id;0=无

32YZElite

YZTower.xlsm · YZElite 每精英一行(YZTower)

甲卫、冲车、旗手替换该层首人,不额外叠一队

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
name string 显示名称;文本/枚举 必填;空值不代表自动回退;—
unit_id int 单位底板引用;整数 必填;按业务规则校验,0不是自动继承;YZUnitBase.id
skill_ids int 技能引用列表;非负整数列表;分号分隔 必填;按业务规则校验,0不是自动继承;YZSkill.id逐项引用
view_id int 表现模板引用;整数 必填;按业务规则校验,0不是自动继承;YZView.id
replace_first_spawn int 精英是否替换首个出兵;整数 0/1;0否1是;—

33YZTactic

YZTower.xlsm · YZTactic 每战术一行(YZTower)

8战术;数值类型互斥;下一层生效,旧战术先算清层奖

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
name string 显示名称;文本/枚举 必填;空值不代表自动回退;—
category string 战术分类;文本/枚举 economy=经济;offense=进攻;defense=防御(建议枚举,按8战术映射冻结);—
effect_type string 效果处理器类型;文本/枚举 有限处理器枚举;刀/弓/盾/骑/姓名字、技能、战术、训练分别由模块注册;不接受任意函数名;—
target_type string 技能目标类型;文本/枚举 self=自身;enemy_unit=敌单位;ally_unit=友单位;castle=城池;area=范围,结合can_hit_castle;—
value_bp int 比例效果数值;万分比;10000=1倍或100% 仅比例类效果使用,value_count须0;0代表该比例未使用;—
value_count int 整数效果数值;整数 仅整数类效果使用,value_bp须0;不可两列同时叠加;—
condition_id int 使用条件引用;整数 必填;按业务规则校验,0不是自动继承;Condition.id;0=无额外条件
view_id int 表现模板引用;整数 必填;按业务规则校验,0不是自动继承;YZView.id

34YZView

YZView.xlsm · YZView 每表现模板一行(config/client/YZView)

兵种、武将、卡、塔精英复用;美术仅改表现,不覆盖攻击距离或命中时刻

字段 类型 含义与单位 校验与引用
id int 记录唯一编号;整数 唯一正整数,不能复用已发布ID;—
main_text string 单位表现主字;文本/枚举 必填;空值不代表自动回退;—
font_key string 字体资源键;文本/枚举 font_title/font_body/font_battle等已注册资源键;—
ally_palette string 我方颜色方案键;文本/枚举 引用mat_ally等已注册配色方案;不可影响攻击;—
enemy_palette string 敌方颜色方案键;文本/枚举 引用mat_enemy;血条/底标保持敌方身份;—
hero_palette string 武将主字颜色方案键;文本/枚举 引用mat_hero;主字赭金,阵营标记独立;—
prefab_key string 表现Prefab资源键;文本/枚举 引用资源清单resource_key;不填本机绝对路径;—
fx_group_id int 表现事件组引用;整数 必填;按业务规则校验,0不是自动继承;表现事件注册组
audio_group_id int 音频事件组引用;整数 必填;按业务规则校验,0不是自动继承;音频事件注册组

35YZNumericDifficulty

YZNumeric.xlsm · 20261027 数值迁移配置

普通163档;敌城Q(C)×F,我城Q(玩家盾训练)×F;1—4用tutorial AI并保留E列来源值,5—163用E列budget AI,163后复用末档。

字段 类型 含义与单位 校验与引用
id int 内部难度A;整数 1..163;—
win_reward int 胜奖B;整数 必填,非负,明确含义,不使用0自动继承;—
target_training_level int 对标训练C;整数 1..163;YZTrainingLevel.level
kind int 类型D;整数 0福利/1验证/3卡点,不用类型重新计算C;—
growth_delta int 原对标等级增长增量;整数 独立保存,不由类型推断;—
ai_profile_id int 原表AI组E;整数 原值保留;第1—4场仅来源追溯,运行tutorial AI;第5—163场引用本组budget AI;YZAIProfile.profile_id
castle_multiplier int 城系数F;倍数 必填,非负,明确含义,不使用0自动继承;—

36YZAIProfile

YZNumeric.xlsm · 20261027 数值迁移配置

第5—163场使用;84段原表,0/10/20/30/50/80/120边界,左闭右开;首波9秒,每波多兵同时出;三个余数流独立且跨段保留。前1—4场不套此预算;未引用组不启用。

字段 类型 含义与单位 校验与引用
id int 分段唯一ID;整数 必填,非负,明确含义,不使用0自动继承;—
profile_id int 组ID;整数 1/2/3/11/12/13/21/22/23/31/32/33;—
start_ms int 含起点;模拟毫秒 必填,非负,明确含义,不使用0自动继承;—
end_ms int 不含终点;模拟毫秒 末段用-1表示到本局结束;—
interval_ms int 波间隔;模拟毫秒 9000;跨段不重置;—
soldiers_milli int Z每波兵数;1000=1人 小数累计余数分配相邻整数;—
basic_letters_milli int AA每兵基础字预算;1000=1字 先基础字;50%组合取向;其余四字等权;—
name_letters_milli int AB每兵姓名总预算;1000=1字 含身份两字;四将等权;余姓名为将;—