工程参考/配置文件/Server/PetConfigTable.ini
PetConfigTable.ini 是珍兽数值总开关。宝宝/变异权重、四套成长权重、根骨、战斗基数、悟性档费用都在 [System]。它不是种类表,种类在 PetAttrTable。
文件位置与生效
| 项目 | 说明 |
|---|---|
| 运行文件 | ./Config/PetConfigTable.ini,相对于 Server 工作目录。源码宏 FILE_PET_CONFIG。
|
| 读取程序 | Server 在 TableInit::InitPetConfigTable 加载;创建、资质、合宠、学技能读取 m_PetConfig |
| 生效方法 | 停服后备份并修改实际 Server/Config 副本,再重启 Server。当前检索范围未发现独立重载。客户端不加载本文件。 |
| 样本格式 | GB18030-compatible,CRLF。保留原编码;源码读取器不会自动把中文转为 UTF-8。
|
样本只有 [System]。成长四组、根骨等级权重、三套资质 Rate 各自求和必须 1000。资质 Param 比 Rate 多一档,供插值。千分系数键加载后除以 1000。
加载末尾还读五个性格节 PET_AI_* 的入战权重。样本没有这些节,ReadInt 返回 -99999999。
文件格式
使用 [节名] 与 Key=Value,节名和键名区分大小写,保持节标题位于行首。用单独一行分号写注释,保留原编码及 CRLF 换行;重复节或键取先匹配项,不依赖后写覆盖。缺项、空值与 0 分别按下表处理。
字段详解
模板 [n] 表示从 0 开始的序号,写入时应展开为实际数字;不是字面键名。
[System]
| 字段与类型 | 含义与修改要点 | 缺项或特殊值 |
|---|---|---|
BabyPetRate整数,千分率 |
抓捕或生成宝宝的权重,分母 1000。样本 30。 | 缺项为 ERROR_DATA(-99999999)。 |
VariancePetRate整数,千分率 |
生成变异的权重,分母 1000。样本 7。 | 缺项为 ERROR_DATA。 |
WilenessPetRate_TakeLevel整数 |
野生珍兽生成时与携带等级比较的基准。样本 60。 | 缺项为 ERROR_DATA。 |
WilenessPetRate_Delta1整数 |
野生生成等级差档 1。样本 10。 | 缺项为 ERROR_DATA。 |
WilenessPetRate_Delta2整数 |
野生生成等级差档 2。样本 5。 | 缺项为 ERROR_DATA。 |
WilenessPetRate_Delta3整数 |
野生生成等级差档 3。样本 5。 | 缺项为 ERROR_DATA。 |
Others_GrowRate[n]整数,成长档权重 |
n=0..4,默认/童年 五档成长权重。四组各自求和必须等于 1000。样本 Others 887/100/10/2/1。 | 缺项为 ERROR_DATA。和不为 1000 断言失败。 |
Wileness_GrowRate[n]整数,成长档权重 |
n=0..4,野生 五档成长权重。四组各自求和必须等于 1000。样本 Others 887/100/10/2/1。 | 缺项为 ERROR_DATA。和不为 1000 断言失败。 |
RMB_GrowRate[n]整数,成长档权重 |
n=0..4,普通 RMB 五档成长权重。四组各自求和必须等于 1000。样本 Others 887/100/10/2/1。 | 缺项为 ERROR_DATA。和不为 1000 断言失败。 |
SuperRMB_GrowRate[n]整数,成长档权重 |
n=0..4,闪耀 RMB 五档成长权重。四组各自求和必须等于 1000。样本 Others 887/100/10/2/1。 | 缺项为 ERROR_DATA。和不为 1000 断言失败。 |
GenGu[n]_Begin整数 |
n=0..4 根骨档下限。 | 缺项为 ERROR_DATA。 |
GenGu[n]_End整数 |
n=0..4 根骨档上限。 | 缺项为 ERROR_DATA。 |
GenGu[n]_Rate整数 |
n=0..4 根骨档权重。 | 缺项为 ERROR_DATA。 |
rateoflevel[n]variancepet整数 |
n=1..8 各变异等级独立权重。CreatePet 自行求和再逐项扣减,加载不要求和为 1000。 | 缺项为 ERROR_DATA。 |
IntelligenceRange整数 |
悟性随机范围。 | 缺项为 ERROR_DATA。 |
MoveSpeed整数 |
移动速度。 | 缺项为 ERROR_DATA。 |
AttackSpeed整数 |
攻击速度。 | 缺项为 ERROR_DATA。 |
PetAI0_MagicRate整数 |
性格 0 的魔法释放权重。 | 缺项为 ERROR_DATA。 |
PetAI1_MagicRate整数 |
性格 1 的魔法释放权重。 | 缺项为 ERROR_DATA。 |
PetAI2_MagicRate整数 |
性格 2 的魔法释放权重。 | 缺项为 ERROR_DATA。 |
PetAI3_MagicRate整数 |
性格 3 的魔法释放权重。 | 缺项为 ERROR_DATA。 |
BaseHP整数 |
生命基数。样本 44。战斗时再乘体质/等级系数。 | 缺项为 ERROR_DATA。 |
BasePhyAttack整数 |
外功攻击基数。 | 缺项为 ERROR_DATA。 |
BaseMgcAttack整数 |
内功攻击基数。 | 缺项为 ERROR_DATA。 |
BasePhyDefence整数 |
外功防御基数。 | 缺项为 ERROR_DATA。 |
BaseMgcDefence整数 |
内功防御基数。 | 缺项为 ERROR_DATA。 |
BaseHit整数 |
命中基数。 | 缺项为 ERROR_DATA。 |
BaseMiss整数 |
闪避基数。 | 缺项为 ERROR_DATA。 |
BaseCriticalAttack整数 |
会心攻击基数。 | 缺项为 ERROR_DATA。 |
BaseCriticalDefence整数 |
会心防御基数。 | 缺项为 ERROR_DATA。 |
Con_HP_Pram整数,千分系数 |
体质对生命。加载后除以 1000 成浮点。 | 缺项为 ERROR_DATA。 |
Str_PhyAttack_Pram整数,千分系数 |
力量对外功攻击。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Spr_MgcAttack_Pram整数,千分系数 |
灵气对内功攻击。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Con_PhyDefence_Pram整数,千分系数 |
体质对外功防御。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Int_MgcDefence_Pram整数,千分系数 |
定力对内功防御。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Dex_Miss_Pram整数,千分系数 |
身法对闪避。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Dex_Hit_Pram整数,千分系数 |
身法对命中。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Dex_CriticalAttack_Pram整数,千分系数 |
身法对会心攻击。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Dex_CriticalDefence_Pram整数,千分系数 |
身法对会心防御。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Level_HP_Pram整数,千分系数 |
等级对生命。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Level_PhyAttack_Pram整数,千分系数 |
等级对外功攻击。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Level_MgcAttack_Pram整数,千分系数 |
等级对内功攻击。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Level_PhyDefence_Pram整数,千分系数 |
等级对外功防御。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Level_MgcDefence_Pram整数,千分系数 |
等级对内功防御。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Level_Miss_Pram整数,千分系数 |
等级对闪避。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Level_Hit_Pram整数,千分系数 |
等级对命中。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Level_CriticalAttack_Pram整数,千分系数 |
等级对会心攻击。加载后 /1000。 | 缺项为 ERROR_DATA。 |
Level_CriticalDefence_Pram整数,千分系数 |
等级对会心防御。加载后 /1000。 | 缺项为 ERROR_DATA。 |
MAXPET_NUM_LEVEL1整数 |
1 级可携带珍兽数。 | 缺项为 ERROR_DATA。 |
INCREACE_ONEPET_STEP整数 |
每升若干级增加携带数量的步长。键名拼写是 INCREACE。 | 缺项为 ERROR_DATA。 |
cost_takelevel[n]整数 |
携带等级 5/15/…/105 的学技能费用。加载按这 11 个固定等级写连续数组。 | 缺项为 ERROR_DATA。不要改成 6、16 这种键。 |
cost_ExtendCortrolByPlayer整数 |
玩家扩展控制相关学技能费用。键名拼写是 Cortrol。 | 缺项为 ERROR_DATA。 |
rate_gengu_level[n]整数 |
n=1..10 根骨等级权重,求和必须 1000。 | 缺项为 ERROR_DATA。和不为 1000 断言失败。 |
multiply_Intelligence_savvy[n]整数 |
n=1..10 悟性档对资质的倍率修正。 | 缺项为 ERROR_DATA。 |
plus_maxlevel_savvy[n]整数 |
n=1..10 悟性档对等级上限的加值。 | 缺项为 ERROR_DATA。 |
GenGu_success_savvy[n]整数 |
n=0..9 该悟性档洗根骨成功率。 | 缺项为 ERROR_DATA。 |
Compound_succrate_savvy[n]整数 |
n=0..9 该悟性档合宠成功率。 | 缺项为 ERROR_DATA。 |
Compound_leveldown_savvy[n]整数 |
n=0..9 合宠失败降级相关。 | 缺项为 ERROR_DATA。 |
Compound_cost_savvy[n]整数 |
n=0..9 合宠费用。 | 缺项为 ERROR_DATA。 |
GenGu_cost_savvy[n]整数 |
n=0..9 洗根骨费用。 | 缺项为 ERROR_DATA。 |
Wileness_Returntochild_rate_HoldIntelligence整数 |
野生还童保留悟性的权重。 | 缺项为 ERROR_DATA。 |
Baby_Returntochild_rate_HoldIntelligence整数 |
宝宝还童保留悟性的权重。 | 缺项为 ERROR_DATA。 |
PerRate[n]整数 |
默认资质规则 n=0..9 的档权重,求和必须 1000。 | 缺项为 ERROR_DATA。 |
RMBPerRate[n]整数 |
普通 RMB 资质规则 n=0..9 权重,求和必须 1000。 | 缺项为 ERROR_DATA。 |
SuperRMBPerRate[n]整数 |
闪耀 RMB 资质规则 n=0..9 权重,求和必须 1000。 | 缺项为 ERROR_DATA。 |
PerParam[n]浮点文本 |
默认资质规则 n=0..10 的档边界。ReadText 再 atof。档数比 Rate 多 1,用于插值上下限。 | 缺项读失败,atof 空串为 0。 |
RMBPerParam[n]浮点文本 |
普通 RMB 资质边界 n=0..10。 | 缺项读失败。 |
SuperRMBPerParam[n]浮点文本 |
闪耀 RMB 资质边界 n=0..10。 | 缺项读失败。 |
PerCalculateParamA浮点文本 |
资质等级公式系数 A。当前资质/标准资质×A + 携带等级×B。 | 缺项读失败。 |
PerCalculateParamB浮点文本 |
资质等级公式系数 B。样本 -0.02。 | 缺项读失败。 |
AllowManualSkill整数 |
允许的手动技能数。样本 2。 | 缺项为 ERROR_DATA。 |
AllowAutoSkill整数 |
允许的自动技能数。样本 5。 | 缺项为 ERROR_DATA。 |
[PET_AI[n]]
| 字段与类型 | 含义与修改要点 | 缺项或特殊值 |
|---|---|---|
RateOfEnterCombat_OwnerBeskill整数 |
性格节入战权重:主人被打。节名 PET_AI_COWARDICE/WARINESS/LOYALISM/CANNINESS/VALOUR。样本没有这些节。 | 缺节时 ReadInt 返回 -99999999。 |
RateOfEnterCombat_SelfBeskill整数 |
性格节入战权重:自己被打。 | 缺节时为 -99999999。 |
常用修改实例
示例为局部教学片段,先备份原运行文件,再修改对应行并保留其余配置。教学值不是程序默认值。
把宝宝生成权重从 30 改为 60
修改前:
[System] BabyPetRate=30
修改后:
[System] BabyPetRate=60
在完整 PetConfigTable.ini 定位 BabyPetRate。只把 30 改为 60,保留 VariancePetRate、成长权重和其他键。成长四组和仍须为 1000。
宝宝权重变为 60/1000。隔离加载读回 60。实际抓捕或生成需要实测。
验证与排查
启动有 Load PetConfigTable.ini ... OK!。BabyPetRate 60,Others 成长和仍为 1000。缺成长和会断言。恢复备份后重启。
入战节
PET_AI_COWARDICE 等到 VALOUR 五个节样本不存在。不要把缺节当成 0。
拼写
INCREACE_ONEPET_STEP、cost_ExtendCortrolByPlayer 按源码键名,不要改成正确英文拼写。
关联与依据
Public/PetAttrTable.txt · Server/PetAttrPointDistribute.txt · Public/PetHuanTongCost.txt
其他配置及整理状态 · 服务端外网设置 · Lua 接口索引
Server/Server/GameServer/Server/Main/GameTable.cpp:实际加载、解析、字段使用或示例关联依据Server/Server/GameServer/Server/Main/GameTable.h:实际加载、解析、字段使用或示例关联依据Common/ServerBase/PetConfig.h:实际加载、解析、字段使用或示例关联依据Server/Server/GameServer/Server/Obj/PetRuler.cpp:实际加载、解析、字段使用或示例关联依据Server/Server/GameServer/Server/Obj/PetManager.cpp:实际加载、解析、字段使用或示例关联依据Common/ServerBase/Ini.cpp:实际加载、解析、字段使用或示例关联依据Common/ServerBase/Ini.h:实际加载、解析、字段使用或示例关联依据Common/ServerBase/FileDef.h:实际加载、解析、字段使用或示例关联依据resources/Server/Config/PetConfigTable.ini:实际加载、解析、字段使用或示例关联依据
原始 Ini 与 InitPetConfigTable 隔离测试。抓捕、合宠和战斗未在游戏中执行。