查看“︁工程参考/龙纹配置”︁的源代码
来自天龙知识库
←
工程参考/龙纹配置
跳到导航
跳到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
__NOTOC__ <div class="lua-reference"> <div class="lua-lead"> <div role="heading" aria-level="2" class="lua-h1">龙纹配置</div> <div class="lua-sub">3 张表 · LongWenBase / LongWenRateBase / LongWenAddAttr · 仅服务端读取</div> </div> 龙纹是暗器位(装备点 <code>HEQUIP_LONGWEN</code>)的成长装备:物品编号 10157001、10157002 两件,标志位 <code>m_bytDarksFlag = 3</code>。它的等级、星级、属性条数、扩展属性全部由 <code>Public/Config</code> 下三张表驱动。三张表'''只在服务端加载'''(实现位于 <code>Server/GameServer/Server/Main/GameTable.cpp</code> 的表初始化段),客户端不读同名文件。 == 加载与启动校验 == 加载器在 <code>Common/LongwenTables.h</code>。GameServer 启动时依次加载三张表并立即校验,'''任何一项不符都直接拒绝启动'''(函数返回 FALSE,服务起不来): * 行列数硬约束:LongWenBase 必须 13 列 100 行,LongWenRateBase 必须 12 列 9 行,LongWenAddAttr 必须 21 列 90 行。多一行少一行都不行。 * 主键约束:首列从 1 连续编号、不重复、不越界(1..100 / 1..9 / 1..90)。 * 业务约束(<code>Validate</code>): ** Base 每级:第 4 列(成长段编号)= 4000+等级;属性条数下限 ≥1 且 ≤ 上限;上限 ≤16;累计成长值非负且'''严格递增''';1 级成长值=0,100 级=2397。 ** Extra 每条:除整十级外,第 9 列(下一级编号)必须 = 当前编号+1。 改这三张表后先在本地启动一次 GameServer 确认加载通过,再往线上放。 == LongWenBase.txt · 等级主表(13 列 × 100 行)== 每级一行,驱动等级成长、属性条数与命中闪避。 {| class="wikitable" ! scope="col" style="width:6%" | 列 ! scope="col" style="width:16%" | 内容 ! scope="col" | 说明 |- | 1 || 等级 ID || 1..100 连续编号,主键;加载时按此列建索引。 |- | 2 || 保留 || 样本全为 1,当前源码未读取。 |- | 3 || 累计成长值 || 1 级=0、100 级=2397,必须严格递增。龙纹吃下材料后按累计值反查等级(<code>LevelForStuff</code>);进度条按相邻两级差值显示(<code>GrowthWeight</code>)。 |- | 4 || 成长段编号 || 必须 = 4000+等级(4001..4100)。重算属性数值时用它查 <code>ItemSegValue.txt</code> 的属性段值。 |- | 5 || 属性条数下限 || 该级至少几条属性,≥1。升级补足属性条数时按此值(<code>Grow</code>)。 |- | 6 || 属性条数上限 || 该级至多几条属性,≤16 且 ≥ 下限。重抽属性时在 [下限, 上限] 间随机(<code>Roll</code>)。 |- | 7–10 || 保留 || 样本全为 -1,当前源码未读取。 |- | 11 || 命中 || 龙纹的命中值,覆盖装备模板表 <code>EquipBase</code> 的 m_Hit。 |- | 12 || 闪避 || 龙纹的闪避值,覆盖装备模板表的 m_Miss。 |- | 13 || 保留 || 样本为 20,当前源码未读取。 |} == LongWenRateBase.txt · 升星表(12 列 × 9 行)== 按星级(<code>m_Equip.m_Qual</code>,1..9)一行,驱动升星操作(operation=2)的材料与费用。9 星封顶:当前星级 ≥9 时拒绝升星。 {| class="wikitable" ! scope="col" style="width:6%" | 列 ! scope="col" style="width:16%" | 内容 ! scope="col" | 说明 |- | 1 || 星级 ID || 1..9 连续编号,主键。 |- | 7 || 升星材料 || 材料物品编号(样本为勾天彩 20310176)。 |- | 8 || 材料数量 || 消耗个数(样本 1 星→20,2 星→60)。 |- | 9 || 替代材料起点 || 替代材料编号区间的起点;-1 表示没有替代材料。高档普通勾天彩可替代低档,幻色勾天彩不能替代普通材料。 |- | 10 || 替代材料数量 || 用替代材料时需要的个数。 |- | 11 || 费用 || 升星收取的金钱(样本 10000)。 |- | 2–6、12 || 保留/待确认 || 样本有值(如第 2 列 11、15),当前服务端升星路径未读取。 |} == LongWenAddAttr.txt · 扩展属性表(21 列 × 90 行)== 龙纹三个扩展槽(血上限 m_HPId、减抗 m_ResistId、属性攻 m_BuffId)各挂一行,角色属性重算时逐槽读取(实现位于 <code>Obj_Human_Calc.cpp</code>)。 {| class="wikitable" ! scope="col" style="width:6%" | 列 ! scope="col" style="width:16%" | 内容 ! scope="col" | 说明 |- | 1 || 扩展 ID || 1..90 连续编号,主键。编码规则见下。 |- | 2 || 名称 || 字符串列,如「血上限(1级)」。用于学习/升级后的系统提示。 |- | 4 || 关联 Buff || 关联的技能/Buff 编号(样本 20310181)。 |- | 9 || 下一级 ID || 升级链:除整十级外必须 = 当前 ID+1;整十级(10、20…90)是该链终点。 |- | 13 || 血上限加成 || 百分比(<code>IATTRIBUTE_RATE_MAXHP</code>),大于 0 才生效。 |- | 14–17 || 四系减抗下限 || 冰、火、玄、毒各一列,累加进 <code>m_LongwenLowerResist</code>。 |- | 18–21 || 四系属性攻击 || 冰、火、玄、毒各一列,大于 0 才生效。 |- | 3、5–8、10–12 || 待确认 || 样本有值,属性重算路径未读取。 |} === 扩展 ID 编码规则 === <code>ExtraId(slot, element, level)</code> 把槽位、元素、等级折成 1..90 的行号: * 槽 0(血上限):ID = 等级(1..10)。 * 槽 1(减抗):ID = 10 + 元素×10 + 等级,元素 1..4。 * 槽 2(属性攻):冰系(元素 1)从 10+等级 起;其余三系从 40+元素×10+等级 起——'''冰系与其余三系不是连续分组''',排布见 <code>LongwenTables.h</code> 的 <code>ExtraId</code>。 == 修改清单 == * 三张表的行数、列数、主键连续性是启动硬校验,动行数等于改校验代码。 * 调等级成长曲线只改 Base 第 3 列,保持严格递增与端点 0/2397,否则启动失败。 * 调属性数值走 Base 第 4 列指向的 ItemSegValue 段,不要在 Base 里直接写数值。 * 升星材料与费用在 Rate 表;改材料编号注意替代区间(第 9 列)的边界编号是写死在代码里的(20310179 / 20310196),区间超出这两端要同步改代码。 [[Category:工程参考]] </div>
返回
工程参考/龙纹配置
。
导航菜单
页面操作
页面
讨论
阅读
查看源代码
历史
页面操作
页面
讨论
更多
工具
个人工具
创建账号
登录
导航
首页
最近更改
随机页面
MediaWiki帮助
特殊页面
搜索
工具
链入页面
相关更改
页面信息