config.json
描述
config.json
是用于配置 open.mp 服务器各项参数的配置文件- 仍支持使用server.cfg文件,但推荐使用 config.json 以获得更全面的配置选项
提示
可通过以下命令将 server.cfg 转换为 config.json:
在服务器目录打开命令行并执行:
# Windows
omp-server --dump-config
# Linux
./omp-server --dump-config
注意: 若目录已存在 config.json 文件,需先删除再执行命令
提示
生成默认配置文件命令:
# Windows
omp-server --default-config
# Linux
./omp-server --default-config
服务器公告
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
announce | 布尔值 | true | ❌ | ❌ | 控制是否向 open.mp 主列表公告服务器。设为true 启用,false 禁用 |
自定义模型(资源)
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
artwork.cdn | 字符串 | ✅ | ❌ | 远程模型服务器的 HTTP 地址 | |
artwork.enable | 布尔值 | true | ✅ | ✅ | 启用/禁用从/models 目录加载自定义模型 |
artwork.models_path | 字符串 | models | ✅ | ❌ | 自定义模型存储路径 |
artwork.port | 整型 | 7777 | ✅ | ❌ | 资源服务端口 |
artwork.web_server_bind | 字符串 | ✅ | ❌ | 资源服务绑定地址 |
聊天过滤器
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
chat_input_filter | 布尔值 | true | ❌ | ❌ | 控制聊天输入过滤。禁用后可输入%等特殊字符,也可使用ToggleChatTextReplacement函数控制 |
服务器信息查询
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
enable_query | 布尔值 | true | ❌ | ❌ | 控制是否在服务器浏览器显示信息。禁用后玩家仍可加入,但浏览器不显示服务器详情 |
游戏设置
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
game.allow_interior_weapons | 布尔值 | true | ❌ | ❌ | 允许在室内使用武器 |
game.chat_radius | 浮点数 | 200.0 | ❌ | ❌ | 聊天有效半径(单位:米),同时影响玩家在地图上的可见距离 |
game.death_drop_amount | 整型 | 0 | ❌ | ❌ | 玩家死亡时掉落的现金金额 |
game.gravity | 浮点数 | 0.008 | ❌ | ✅ | 全局重力参数(SA-MP 默认值为 0.008) |
game.group_player_objects | 布尔值 | false | ❌ | ❌ | 优化玩家物体 ID 分配机制。SA-MP 中全局物体与玩家物体共享 ID 池,启用后服务器会尝试复用其他玩家已占用的玩家物体槽位,避免全局物体占满后无法创建玩家物体的问题 |
game.lag_compensation_mode | 整型 | 1 | ✅ | ✅ | 0:完全禁用延迟补偿,1:完全启用延迟补偿,2:仅启用位置补偿(不补偿玩家旋转) |
game.map | 字符串 | ❌ | ✅ | 服务器浏览器显示的自定义地图名称(例如:"我的特技地图") | |
game.mode | 字符串 | ❌ | ❌ | 服务器浏览器显示的游戏模式名称,可通过SetGameModeText覆盖 | |
game.nametag_draw_radius | 浮点数 | 70.0 | ❌ | ❌ | 玩家名牌最大显示距离(单位:米) |
game.player_marker_draw_radius | 浮点数 | 250.0 | ❌ | ❌ | 玩家标记显示半径(单位:米) |
game.player_marker_mode | 整型 | 1 | ❌ | ❌ | 0:禁用玩家标记,1:全局标记模式,2:流式标记模式。标记模式文档 |
game.time | 整型 | 12 | ❌ | ✅ | 全局游戏时间(小时制,范围 0-23) |
game.use_all_animations | 布尔值 | false | ✅ | ❌ | 启用所有版本动画(包含某些版本缺失的动画) |
game.use_chat_radius | 布尔值 | false | ❌ | ❌ | 启用聊天距离限制 |
game.use_entry_exit_markers | 布尔值 | true | ✅ | ❌ | 启用室内出入口标记(黄色箭头标识) |
game.use_instagib | 布尔值 | false | ❌ | ❌ | 启用一击必杀模式(该功能在 SA-MP 客户端已移除,名称源自《雷神之锤》的 instagib 模式) |
game.use_manual_engine_and_lights | 布尔值 | false | ❌ | ❌ | 手动控制车辆引擎和灯光。设为false 时,游戏会自动开关引擎,并在黑暗时自动开启车灯 |
game.use_nametag_los | 布尔值 | true | ❌ | ❌ | 启用名牌视线检测(Line-Of-Sight),防止透过墙壁看到玩家名牌 |
game.use_nametags | 布尔值 | true | ❌ | ❌ | 显示玩家名牌、血条和护甲条 |
game.use_player_marker_draw_radius | 布尔值 | false | ❌ | ❌ | 启用玩家标记(小地图上的雷达标记)显示 |
game.use_player_ped_anims | 布尔值 | false | ❌ | ❌ | 使用标准 CJ 皮肤行走动画,而非各皮肤专属动画(如滑板皮肤的滑行动作) |
game.use_stunt_bonuses | 布尔值 | true | ❌ | ❌ | 启用车辆特技奖励(如车辆翘轮行驶时给予金钱奖励) |
game.use_vehicle_friendly_fire | 布尔值 | false | ❌ | ❌ | 启用车辆友军伤害(允许攻击同队伍车辆) |
game.use_zone_names | 布尔值 | false | ❌ | ❌ | 显示区域名称(如进入"Vinewood"区域时右下角显示文字提示) |
game.validate_animations | 布尔值 | true | ❌ | ❌ | 验证玩家动画有效性 |
game.vehicle_respawn_time | 整型 | 10000 | ❌ | ❌ | 车辆重生时间(单位:毫秒,默认 10 秒) |
game.weather | 整型 | 10 | ❌ | ✅ | 全局天气 ID(SA-MP 默认天气为 10) |
语言设置
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
language | 字符串 | ❌ | ❌ | 服务器浏览器显示的语言标识(例如:"zh-CN") |
日志配置
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
logging.enable | 布尔值 | true | ❌ | ❌ | 启用日志系统 |
logging.file | 字符串 | log.txt | ✅ | ❌ | 日志文件存储路径 |
logging.log_chat | 布尔值 | true | ❌ | ❌ | 记录玩家聊天内容 |
logging.log_connection_messages | 布尔值 | true | ❌ | ❌ | 记录玩家连接/断开事件 |
logging.log_cookies | 布尔值 | false | ❌ | ❌ | 记录连接 cookie 信息(用于追踪异常连接) |
logging.log_deaths | 布尔值 | true | ❌ | ❌ | 记录玩家死亡事件 |
logging.log_queries | 布尔值 | false | ❌ | ❌ | 记录所有玩家查询请求(用于防御 DDoS 攻击) |
logging.log_sqlite | 布尔值 | false | ❌ | ❌ | 记录 SQLite 数据库错误 |
logging.log_sqlite_queries | 布尔值 | false | ❌ | ❌ | 记录所有 SQL 查询语句(调试用) |
logging.timestamp_format | 字符串 | [%Y-%m-%dT%H:%M:%S%z] | ✅ | ❌ | 时间戳格式(基于 C/C++的 strftime 函数)。示例:[%H:%M:%S] 显示时分秒,[%d/%m/%Y %H:%M:%S] 显示日/月/年 时:分:秒 |
logging.use_prefix | 布尔值 | true | ❌ | ❌ | 在日志条目前添加类型前缀(如[Info]) |
logging.use_timestamp | 布尔值 | true | ❌ | ❌ | 在日志条目前添加时间戳 |
玩家与 NPC
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
max_bots | 整型 | 0 | ❌ | ❌ | NPC 最大数量(占用玩家槽位) |
max_players | 整型 | 50 | ✅ | ❌ | 玩家最大数量(范围 1-1000) |
服务器名称
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
name | 字符串 | open.mp server | ❌ | ❌ | 服务器显示名称(显示在服务器浏览器和玩家连接界面) |
网络配置
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
network.acks_limit | 整型 | 3000 | ❌ | ❌ | ACK 确认包数量限制(防 DDoS 设置) |
network.aiming_sync_rate* | 整型 | 30 | ✅ | ❌ | 瞄准状态同步间隔(单位:毫秒,值越低同步越精确但增加带宽消耗) |
network.allow_037_clients | 布尔值 | true | ❌ | ❌ | 允许 0.3.7 旧版客户端连接 |
network.bind | 字符串 | ✅ | ❌ | 服务器绑定 IP 地址(用于多 IP 服务器) | |
network.cookie_reseed_time | 整型 | 300000 | ❌ | ❌ | 连接 cookie 种子刷新间隔(单位:毫秒,默认 5 分钟) |
network.grace_period | 整型 | 5000 | ❌ | ❌ | 同 IP 连接宽限期(单位:毫秒,服务器启动后 5 秒内允许同一 IP 无限连接,主要用于 NPC 批量连接) |
network.http_threads | 整型 | 50 | ❌ | ❌ | HTTP 服务线程数 |
network.in_vehicle_sync_rate* | 整型 | 30 | ✅ | ❌ | 车辆内状态同步间隔(单位:毫秒) |
network.limits_ban_time | 整型 | 60000 | ❌ | ❌ | 违规连接封禁时间(单位:毫秒,当触发 acks/messages 限制时生效) |
network.message_hole_limit | 整型 | 3000 | ❌ | ❌ | 消息空洞数量限制(防 DDoS 设置) |
network.messages_limit | 整型 | 500 | ❌ | ❌ | 客户端每秒最大消息数限制 |
network.minimum_connection_time | 整型 | 0 | ❌ | ❌ | 最小连接间隔(单位:毫秒,用于防御连接洪水攻击) |
network.mtu | 整型 | 576 | ✅ | ❌ | 最大传输单元(保持默认值,修改不当会导致连接问题。详见维基百科) |
network.multiplier | 整型 | 10 | ❌ | ❌ | 网络流量乘数(调整带宽使用) |
network.on_foot_sync_rate* | 整型 | 30 | ✅ | ❌ | 步行状态同步间隔(单位:毫秒) |
network.player_marker_sync_rate | 整型 | 2500 | ✅ | ❌ | 玩家标记同步间隔(单位:毫秒) |
network.player_timeout | 整型 | 10000 | ❌ | ❌ | 玩家连接超时时间(单位:毫秒,10 秒无响应后断开) |
network.port | 整型 | 7777 | ✅ | ❌ | 服务器端口(需进行端口转发) |
network.public_addr | 字符串 | ✅ | ❌ | 公网地址(用于资源下载服务) | |
network.stream_radius | 浮点数 | 200.0 | ❌ | ❌ | 实体流加载半径(单位:米,范围 50.0-400.0) |
network.stream_rate | 整型 | 1000 | ❌ | ❌ | 流加载检测间隔(单位:毫秒,范围 500-5000) |
network.time_sync_rate | 整型 | 30000 | ❌ | ❌ | 时间同步间隔(单位:毫秒) |
network.use_lan_mode | 布尔值 | false | ❌ | ❌ | 已弃用参数(原用于局域网模式) |
[*]
aiming_sync_rate
、in_vehicle_sync_rate
和on_foot_sync_rate
数值越低同步越精确,但会增加带宽消耗
服务器密码
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
password | 字符串 | ❌ | ❌ | 服务器访问密码(留空表示无需密码) |
Pawn 脚本
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
pawn.legacy_plugins | 列表, 字符串 | [] | ✅ | ❌ | 加载传统插件列表(示例:["mysql", "streamer"] ) |
pawn.main_scripts | 列表, 字符串 | ["test 1"] | ✅ | ❌ | 主游戏模式脚本(.amx 文件路径) |
pawn.side_scripts | 列表, 字符串 | [] | ✅ | ❌ | 滤镜脚本列表(示例:["filterscripts/Race_System"] ) |
远程控制台
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
rcon.allow_teleport | 布尔值 | false | ✅ | ❌ | 允许 RCON 管理员通过地图标记传送 |
rcon.enable | 布尔值 | false | ✅ | ❌ | 启用远程控制台功能 |
rcon.password | 字符串 | changeme | ❌ | ❌ | RCON 密码(必须修改默认值,否则服务器无法启动) |
性能优化
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
sleep | 浮点数 | 5.0 | ❌ | ❌ | 主线程休眠时间(单位:毫秒,值越高 CPU 占用越低但同步质量下降) |
use_dyn_ticks | 布尔值 | true | ✅ | ❌ | 动态调整 tick 率(例如 sleep=5 时恒定 200 ticks/秒)。通过动态补偿代码执行时间差异来维持稳定 tick 率 |
主机名
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
website | 字符串 | open.mp | ❌ | ✅ | 服务器官方网站地址 |
Discord 设置
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
discord.invite | 字符串 | https://discord.gg/samp | ❌ | ❌ | Discord 服务器邀请链接(显示在 open.mp 启动器中) |
横幅设置
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
banners.light | 字符串 | ❌ | ❌ | 浅色主题横幅 URL(分辨率建议:1200x240) | |
banners.dark | 字符串 | ❌ | ❌ | 深色主题横幅 URL(支持透明背景 PNG 格式) |
服务器 LOGO
键名 | 类型 | 默认值 | 只读 | 规则 | 功能说明 |
---|---|---|---|---|---|
logo | 字符串 | ❌ | ❌ | 服务器 LOGO URL(显示在启动器和 Discord 状态,建议尺寸:512x512) |
备注
- 标记"只读"的参数需重启服务器生效,其他参数可通过SendRconCommand实时修改
- 标记"规则"的参数会显示在服务器浏览器的规则栏
- 带(*)的参数需平衡性能与带宽消耗
- 网络参数修改前建议备份配置文件