工程参考/雕纹配置
来自天龙知识库
跳到导航跳到搜索
雕纹配置
3 张表 · DiaowenInfo / DiaowenRule / diaowenpingfen · 仅服务端读取
雕纹是装备镶嵌的成长型纹章:镶嵌在指定装备点、按等级链升级、可融合、可分解。三张表在 Public/Config 下,只在服务端加载(实现位于 Server/GameServer/Server/Main/GameTable.cpp 表初始化段,加载器 Common/DiaowenTables.h),客户端不读同名文件。
加载与启动校验
行列数硬约束,任一不符 GameServer 拒绝启动:
- DiaowenInfo.txt:96 列 × 1780 行;字符串列为第 3、5、93、96 列(1 起数)。
- DiaowenRule.txt:23 列 × 16 行,全整型。
- diaowenpingfen.txt:4 列 × 1780 行;第 4 列字符串。
- 三表首列都是 1 起始的连续主键。
业务校验(Valid):
- 每条 Info 的评分行必须存在,且评分表第 2 列(物品编号)与 Info 第 2 列一致、评分(第 3 列)非负。
- Info 第 4 列(等级)1..10;第 6 列(规则行号)必须在 Rule 表存在;第 94 列(品质档)1..3;第 95 列(类别)1..5。
- 升级链:第 22 列(下一级 ID)大于 0 时,下一行必须存在、等级恰好 +1、规则行号与类别与当前行一致,且第 26 列(升级进度需求)在 1..8191;第 22 列为 0 时该行必须是 10 级(链终点)。
DiaowenInfo.txt · 主表(96 列 × 1780 行)
每行一个雕纹等级形态。已确认的关键列(1 起数):
| 列 | 内容 | 说明 |
|---|---|---|
| 1 | 雕纹 ID | 1..1780 连续主键。 |
| 2 | 物品编号 | 对应的雕纹物品(如 30110001)。Item() 按此列反查。
|
| 3 | 名称 | 字符串,如「力量雕纹1级」。 |
| 4 | 等级 | 1..10。 |
| 5 | 图鉴外观 | 字符串,形如 set:TattooShow image:TattooShow_1。
|
| 6 | 规则行号 | 指向 DiaowenRule 的行,决定能镶在哪些装备点。 |
| 7–9 | 图鉴物品 | 三列图鉴用物品编号,Picture() 按此反查。
|
| 22 | 下一级 ID | 升级链指针;0 表示 10 级终点。 |
| 26 | 升级进度需求 | 升到下一级需要的进度,1..8191。强化按进度累积,攒满即跳到下一级 ID(Strengthen)。
|
| 94 | 品质档 | 1..3。分解价格分档:档 2 价格与蚕丝 ×3;10 级非档 1 用另一组高价。 |
| 95 | 类别 | 1..5。融合要求两个雕纹类别不同(CanFuse)。
|
| 93、96 | 字符串列 | 加载器按字符串读取。 |
| 其余 | 材料与消耗 | 样本可见材料物品编号列(如 20310166–20310173 区间),逐列用途以 DiaowenTables.h 与各服务函数为准。
|
DiaowenRule.txt · 镶嵌规则(23 列 × 16 行)
每行一条规则,每列对应一个装备点:值 1 允许镶嵌、0 禁止。列序省去第二戒指与第二护符两位——判定时列号 = 1 + 装备点 − (装备点>11) − (装备点>13)(实现位于 DiaowenTables.h 的 Allows,入参是装备类型不是穿戴槽)。Info 第 6 列选择用哪一行规则。
diaowenpingfen.txt · 评分表(4 列 × 1780 行)
| 列 | 说明 |
|---|---|
| 1 | 雕纹 ID,与 Info 主键一一对应。 |
| 2 | 物品编号,必须与 Info 第 2 列一致。 |
| 3 | 评分,非负整数。 |
| 4 | 名称(字符串)。 |
分解与价格
分解价格不在这三张表里,写死在 DiaowenTables.h 的 Decompose:2..10 级对应 9 组「价格/蚕丝」(28/2 起,10 级普通档 98924/7066),品质档 2 翻 3 倍,10 级非档 1 固定 87164/6226。改分解收益要改代码不是改表。
修改清单
- 行列数与升级链是启动硬校验,加新雕纹要同时补 Info 行、评分行,并保持链上等级+1、规则与类别一致。
- 新增可镶嵌部位只改 Rule 表(值 0/1),不动 Info。
- 调评分只改 diaowenpingfen 第 3 列,注意与 Info 的物品编号保持一致。