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

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


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

当前 World 使用这份文件循环发送系统广播。样本还带有 [huodongn] 活动字段,但当前活动调度使用 Public/Config/ActivityNotice.txt 的另一组数据;修改本 INI 的活动字段不能据此认为已更改活动日程。

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

文件位置与生效

项目 说明
运行文件 ./Config/SystemInfo.ini,相对于读取程序的工作目录。源码 resources/Server/Config 是样本位置,实际部署可能另有副本。
读取程序 World
生效方法 正常保存并停服后,重启读取此文件的 World。多份运行目录分别核对。当前检索未发现单独重载本文件的可用入口;不需要把本文件复制到玩家客户端。
样本格式 GB18030-compatibleCRLF。保留原编码;源码读取器不会自动把中文转为 UTF-8。

[info] 的 broadcount 决定读取多少个 [broadn];每个广播组的正文键确实拼作 contex,不是 context。活动节的保留字段在下表单独标明。

文件格式

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

字段详解

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

[info]

字段与类型 含义与修改要点 缺项或特殊值
broadcount
非负整数,广播条数
读取连续 [broad0] 到 [broadN-1]。0 关闭本文件的循环广播,并让此加载函数直接返回,后面的 INI 活动字段也不会读取。没有核对到适合作为推荐值的硬上限,按实际公告数量填写。 缺失为 0;不要使用负数,后续初始化检查非负。
broadtime
正整数,毫秒
相邻两条广播的间隔。60000 为一分钟;有 N 条时同一条通常隔 N 个间隔再次发送,实际受心跳执行时刻影响。 缺失为 0;0 或负数会使有广播时每次心跳都尝试发送,不能用来停播。
huodongcount
整数,0 到 256
只决定读取本 INI 的 [huodongn] 旧数据。当前活动定时器取 ActivityNotice.txt 的条数,与此值分开。 缺失为 0;非正数不读活动组,超过 256 会截到容量并触发断言。

[broad[n]]

字段与类型 含义与修改要点 缺项或特殊值
contex
字符串,广播正文
从 n=0 到 broadcount-1 顺序循环发送。保存缓冲为 256 字节;正文用原文件编码,控制在 255 字节以内,还受聊天消息长度限制,中文不能按字符数当字节数。 启用的每组必填;缺项会触发断言。空值不能用来关闭整轮广播。

[huodong[n]]

字段与类型 含义与修改要点 缺项或特殊值
opt_type
操作类型整数
当 n 在 huodongcount 范围内时读取并保存到旧 INI 活动数据。当前定时调度没有使用这一组;保留原值,不套用 ActivityNotice.txt 的枚举或时间编码教程。scene 是场景标识,scriptid 是脚本索引,都不是行号。 启用序号范围内必填;缺项会触发读取错误,不使用教学值作为默认值。 本组不存在可承诺的调度效果;不同运行程序是否仍使用旧数据需要实测。
time_type
时间模式整数
当 n 在 huodongcount 范围内时读取并保存到旧 INI 活动数据。当前定时调度没有使用这一组;保留原值,不套用 ActivityNotice.txt 的枚举或时间编码教程。scene 是场景标识,scriptid 是脚本索引,都不是行号。 启用序号范围内必填;缺项会触发读取错误,不使用教学值作为默认值。 本组不存在可承诺的调度效果;不同运行程序是否仍使用旧数据需要实测。
time_start
起始时间编码整数
当 n 在 huodongcount 范围内时读取并保存到旧 INI 活动数据。当前定时调度没有使用这一组;保留原值,不套用 ActivityNotice.txt 的枚举或时间编码教程。scene 是场景标识,scriptid 是脚本索引,都不是行号。 启用序号范围内必填;缺项会触发读取错误,不使用教学值作为默认值。 本组不存在可承诺的调度效果;不同运行程序是否仍使用旧数据需要实测。
time_end
结束时间编码整数
当 n 在 huodongcount 范围内时读取并保存到旧 INI 活动数据。当前定时调度没有使用这一组;保留原值,不套用 ActivityNotice.txt 的枚举或时间编码教程。scene 是场景标识,scriptid 是脚本索引,都不是行号。 启用序号范围内必填;缺项会触发读取错误,不使用教学值作为默认值。 本组不存在可承诺的调度效果;不同运行程序是否仍使用旧数据需要实测。
scene
场景 ID 整数
当 n 在 huodongcount 范围内时读取并保存到旧 INI 活动数据。当前定时调度没有使用这一组;保留原值,不套用 ActivityNotice.txt 的枚举或时间编码教程。scene 是场景标识,scriptid 是脚本索引,都不是行号。 启用序号范围内必填;缺项会触发读取错误,不使用教学值作为默认值。 本组不存在可承诺的调度效果;不同运行程序是否仍使用旧数据需要实测。
scriptid
脚本 ID 整数
当 n 在 huodongcount 范围内时读取并保存到旧 INI 活动数据。当前定时调度没有使用这一组;保留原值,不套用 ActivityNotice.txt 的枚举或时间编码教程。scene 是场景标识,scriptid 是脚本索引,都不是行号。 启用序号范围内必填;缺项会触发读取错误,不使用教学值作为默认值。 本组不存在可承诺的调度效果;不同运行程序是否仍使用旧数据需要实测。
param0
样本整数项
当前 Init_SystemInfo 未读取此键。不能把它当作第一个会传给活动脚本的参数。 样本保留项;当前检索范围未发现此键加载依据。
param1
整数,旧活动参数
仅保存到旧 INI 活动记录。当前活动调度取自另一张表;本页不把此值解释为已生效的脚本参数。 可选,缺失保留原结构值;首次构造为 0。
param2
整数,旧活动参数
仅保存到旧 INI 活动记录。当前活动调度取自另一张表;本页不把此值解释为已生效的脚本参数。 可选,缺失保留原结构值;首次构造为 0。
param3
整数,旧活动参数
仅保存到旧 INI 活动记录。当前活动调度取自另一张表;本页不把此值解释为已生效的脚本参数。 可选,缺失保留原结构值;首次构造为 0。
param4
整数,旧活动参数
仅保存到旧 INI 活动记录。当前活动调度取自另一张表;本页不把此值解释为已生效的脚本参数。 可选,缺失保留原结构值;首次构造为 0。
param5
整数,旧活动参数
仅保存到旧 INI 活动记录。当前活动调度取自另一张表;本页不把此值解释为已生效的脚本参数。 可选,缺失保留原结构值;首次构造为 0。

常用修改实例

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

调整现有广播的发送间隔

修改前:

[info]
broadcount=2
broadtime=60000
[broad0]
contex=Welcome to the test server.
[broad1]
contex=Scheduled maintenance is announced here.

修改后:

[info]
broadcount=2
broadtime=300000
[broad0]
contex=Welcome to the test server.
[broad1]
contex=Scheduled maintenance is announced here.

本例有两条教学广播,把相邻发送间隔由一分钟改为五分钟,同一条大约每十分钟出现一次。实际操作保留原 broadcount、全部正文和活动字段,只改 broadtime。英文正文用于提供无编码歧义的示例文件,不是必须替换的公告内容;广播效果需要登录游戏观察。

验证与排查

重启 World 后观察系统频道的发送顺序、间隔和中文显示。保存旧正文与时间;失败时正常停服后恢复。活动是否开始不用于验证本例,因为活动调度数据源不同。

停止循环广播应把 broadcount 改为 0,不是把 broadtime 改成 0。若要调整活动,先在配置索引中定位 Public/ActivityNotice.txt,待其读取规则与业务效果核对后再修改。不要把 INI 中存在一个键理解为当前程序一定拿它执行对应功能。

关联与依据

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

  • Common/ServerBase/Ini.cpp:实际加载、解析、字段使用或示例关联依据
  • Common/ServerBase/Ini.h:实际加载、解析、字段使用或示例关联依据
  • Server/Server/WorldServer/World/Main/WorldTable.cpp:实际加载、解析、字段使用或示例关联依据
  • Server/Server/WorldServer/World/Main/WorldTable.h:实际加载、解析、字段使用或示例关联依据
  • Server/Server/WorldServer/World/WorldData/SystemInfo.cpp:实际加载、解析、字段使用或示例关联依据
  • Common/ServerBase/TimeManager.cpp:实际加载、解析、字段使用或示例关联依据

本页核对源码读取、字段使用与样本格式,未启动游戏、服务端或数据库。解析验证不等于游戏实测;广播、权限、客户端交互等运行结果需要实测。