工程参考/配置文件/Server/BaseValueTable.ini

来自天龙知识库
雪舞留言 | 贡献2026年9月10日 (四) 19:41的版本 (维护配置文件知识库:完整字段、读取范围、手工修改实例与核对状态)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航跳到搜索


首页 · 配置文件索引 · 修改约定

BaseValueTable.ini 按门派存放 42 项战斗系数,例如初始生命、等级对生命的影响、命中、会心、势力 ID。人物二级属性从这些系数与一级属性一起算。它不是升级经验,也不是 AttrLevelUpTable 的五项一级属性。

位置与生效 · 文件格式 · 字段详解 · 修改实例

文件位置与生效

项目 说明
运行文件 ./Config/BaseValueTable.ini,相对于 Server 工作目录。源码宏 FILE_BASE_VALUE。
读取程序 Server 在 TableInit::InitBaseValueTable 加载;门派对象按 AINFOTYPE 取值。GM 命令 reloadbasevalue 可重读
生效方法 推荐停服后备份并修改实际 Server/Config 副本,再重启 Server。已有最高 GM 权限的入口可执行 reloadbasevalue,命令名不区分大小写,不带等号和文件名。重载再次 ReadInt 覆盖内存表。客户端不加载本表。
样本格式 GB18030-compatibleCRLF。保留原编码;源码读取器不会自动把中文转为 UTF-8。

十个节 [MENPAI0]..[MENPAI9],对应少林到无门派。每节必须有 AINFOTYPE0..AINFOTYPE41,缺项断言。样本少林 AINFOTYPE0=30500。

AINFOTYPE 含义
0 初始生命
1 体制对生命影响系数
2 等级对生命影响系数
3 初始生命回复
4 体制对生命回复影响系数
5 等级对生命回复影响系数
6 初始内力
7 定力对内力影响系数
8 等级对内力影响系数
9 初始内力回复
10 定力对内力回复影响系数
11 等级对内力回复影响系数
12 初始外功攻击
13 力量对外功攻击影响系数
14 等级对外功攻击影响系数
15 初始内功攻击
16 灵力对内功攻击影响系数
17 等级对内功攻击影响系数
18 初始外功防御
19 体制对外功防御影响系数
20 等级对外功防御影响系数
21 初始内功防御
22 定力对内功防御影响系数
23 等级对内功防御影响系数
24 初始命中
25 身法对命中影响系数
26 等级对命中影响系数
27 初始闪避
28 身法对闪避影响系数
29 等级对闪避影响系数
30 初始会心攻击
31 身法对会心攻击影响系数
32 等级对会心攻击影响系数
33 初始会心防御
34 身法对会心防御影响系数
35 等级对会心防御影响系数
36 攻击力浮动
37 受伤怒气增长
38 攻击怒气增长
39 怒气自然增长
40 势力ID
41 攻击特性ID

文件格式

使用 [节名] 与 Key=Value,节名和键名区分大小写,保持节标题位于行首。用单独一行分号写注释,保留原编码及 CRLF 换行;重复节或键取先匹配项,不依赖后写覆盖。缺项、空值与 0 分别按下表处理。

字段详解

模板 [n] 表示从 0 开始的序号,写入时应展开为实际数字;不是字面键名。

[MENPAI[n]]

字段与类型 含义与修改要点 缺项或特殊值
AINFOTYPE[n]
整数,门派系数
n 门派 0..9,m 系数 0..41。加载双重循环 ReadInt。样本注释与枚举一致,加载器不读注释。 缺项断言失败。空或非数字经 atoi 可能为 0。不要增删节或跳号。

常用修改实例

示例为局部教学片段,先备份原运行文件,再修改对应行并保留其余配置。教学值不是程序默认值。

把少林初始生命系数从 30500 改为 31000

修改前:

[MENPAI0]
AINFOTYPE0=30500

修改后:

[MENPAI0]
AINFOTYPE0=31000

在完整 BaseValueTable.ini 定位 [MENPAI0] 的 AINFOTYPE0。只把 30500 改为 31000,保留同节其余 41 项和其他门派。原行尾中文注释可保留。

门派 0 的初始生命系数变为 31000。具体生命上限还要乘体制、等级等系数,不能把 31000 当成血量。隔离加载读回 31000。可用 reloadbasevalue 热更。实际面板需要实测。

验证与排查

启动有 Load BaseValueTable.ini ... OK!。十个门派 42 项齐全,少林 AINFOTYPE0 为 31000。reloadbasevalue 后再查内存。恢复备份后重启或再 reload。

AINFOTYPE40 势力 ID、41 攻击特性 ID 不是生命系数。攻击特性另见表 AttackTraits.txt,本批未核对该表。

关联与依据

Server/AttrLevelUpTable.txt · Public/PlayerExpLevel.txt · Server/ConfigInfo.ini

其他配置及整理状态 · 服务端外网设置 · Lua 接口索引

  • Server/Server/GameServer/Server/Main/GameTable.cpp:实际加载、解析、字段使用或示例关联依据
  • Server/Server/GameServer/Server/Main/GameTable.h:实际加载、解析、字段使用或示例关联依据
  • Server/Server/GameServer/Server/MenPai/MenPai.cpp:实际加载、解析、字段使用或示例关联依据
  • Server/Server/GameServer/Server/MenPai/MenPai.h:实际加载、解析、字段使用或示例关联依据
  • Server/Server/GameServer/Server/Packets/CGCommandHandler.cpp:实际加载、解析、字段使用或示例关联依据
  • Common/GameDefine2.h:实际加载、解析、字段使用或示例关联依据
  • Common/ServerBase/Ini.cpp:实际加载、解析、字段使用或示例关联依据
  • Common/ServerBase/Ini.h:实际加载、解析、字段使用或示例关联依据
  • Common/ServerBase/FileDef.h:实际加载、解析、字段使用或示例关联依据
  • resources/Server/Config/BaseValueTable.ini:实际加载、解析、字段使用或示例关联依据

原始 Ini 与 InitBaseValueTable 隔离测试。属性面板未在游戏中执行。