外观
Share 配置与运行数据
Share 保存部分版本配置及运行数据。实际位置由 M2 工作目录下 !Setup.txt 的 [Share] BaseDir 指定;下文路径均相对于该目录。不要仅凭部署包里是否存在某个文件判断功能是否支持。
当前读取范围
| 文件或目录 | 用途 | 加载与维护方式 |
|---|---|---|
PlayerUpgradeExp.ini | 玩家升级经验表 | M2 启动时读取,必需 |
EngineConfig/角色成长/ | 按职业、等级覆盖玩家及英雄的基础属性 | 可选,需开启对应表;启动时读取 |
EngineConfig/系统信息管理/ | 怪物掉落指定物品时的广播名单 | 可选,需开启掉落物品提示;启动时读取 |
config/ | 版本脚本使用的 INI 文件 | 脚本调用读写接口时访问,不自动加载整个目录 |
Hero.ini | 称号雕像记录 | 雕像功能按需读写,属于运行数据,不是英雄成长配置 |
serverinfo.ini | [Setup] 下的 AreaID、GroupID,用于标识相关逻辑 | 引擎读取,应由部署流程维护,不随意修改 |
ItemUidState.bin(可能在其他位置) | 物品唯一标识的持久状态 | 引擎维护的二进制数据;实际位置以 !Setup.txt 的 [ItemIdentity] StateFile 为准 |
配置修改后,建议通过 GameCenter 停服、保存并重新启动 M2。config/ 是脚本按需读写,具体何时生效取决于版本脚本。不要在运行中手改引擎维护的数据文件。
玩家升级经验
PlayerUpgradeExp.ini 使用以下格式,数值仅为示例:
ini
[PlayerLevelExp]
LEVEL_1=100
LEVEL_2=200等级及经验必须为正整数,等级不能重复。请提供版本所需的完整等级表;文件缺失、缺少 [PlayerLevelExp]、表为空或格式错误会导致启动加载失败。PlayerUpgradeExp1.ini 不会自动作为备用表读取。
角色成长
在 EngineConfig/角色成长/main.ini 中启用所需表。例如只覆盖玩家基础属性:
ini
[Set]
AutoStart=True
[PlayerBaseAttributes]
AutoLoad=True
FileName=player.csv英雄表使用 [HeroBaseAttributes],同样配置 AutoLoad 和 FileName。文件名相对于当前模块目录,不可指向模块目录外。
CSV 使用 UTF-8,首行固定为:
csv
Job,Level,HP,MP,DCMin,DCMax,MCMin,MCMax,SCMin,SCMax,ACMin,ACMax,MACMin,MACMax
0,1,100,30,1,3,0,0,0,0,0,1,0,1Job 为 0 战士、1 法师、2 道士;同一职业、等级不能重复。HP、MP 必须大于零,其余属性不能为负,下限不能大于上限。匹配的记录覆盖该等级的基础属性,未匹配的等级保留默认计算。
未配置或未开启时使用默认成长;已开启但文件缺失、格式非法时会报错,不会静默忽略。该模块同时要求 [Set] AutoStart=True 和对应表 AutoLoad=True。
掉落物品提示
在 EngineConfig/系统信息管理/main.ini 中配置:
ini
[掉落物品提示]
AutoLoad=True
FileName=drop-items.txt在同目录创建 drop-items.txt,使用 GBK / CP936 编码,每行一个物品名:
text
; 需要广播的掉落物品
裁决之杖
骨玉权杖空行及以 ; 开头的注释行被忽略。命中名单时广播玩家、地图、怪物及物品信息;匹配使用物品名的前 15 个字符,请勿将额外说明写在名称后面。
此功能按 [掉落物品提示] AutoLoad 判断是否开启,不依赖 [Set] AutoStart。未开启或名单文件不存在时,不加载掉落提示名单。
脚本配置与运行数据
config/ 供全局脚本接口 ReadIniSectionStr、WriteIniSectionStr 使用。文件由版本自行组织,必须先准备好;写接口不会自动创建不存在的配置文件。该目录存在并不代表其中每个文件都会被引擎主动读取。
Hero.ini 的 [hero编号] 段保存角色名、等级、经验、内功、心法等级、创建时间和颜色,由称号雕像功能维护。它与 EngineConfig/角色成长/ 中的英雄属性表用途不同。
serverinfo.ini 和物品 UID 状态不属于可随意套用的版本模板。特别是 ItemUidState.bin,不要清空、重置或从其他区服复制覆盖;完整迁移应保留部署管理数据与区服数据,而不是只复制 Share。