GSM游戏模板添加流程

GSM游戏模板添加流程

GSM - 游戏管理系统 更新于 2026-07-16 00:45:21 2 次浏览

一、模板在系统中的作用

| 项 | 说明 |
|----|------|
| 游戏类型 / 查询协议 | 如 Steam(A2S)、Minecraft、Terraria、纯进程 |
| 启动方式 | 可执行文件、启动参数、工作目录、停止命令 |
| 端口规则 | 本模板基础端口,或归属「模板分类」的端口池 |
| 配置样例 | 开服时写入实例目录的 cfg/properties 等 |
| 可调参数 | 用户/管理员可改的设置项(支持魔法变量) |
| 游戏源 | Agent 上 `data/game-sources/<子目录>` 复制到实例目录 |
| 计费相关 | 创建费用、默认内存、免费磁盘额度等 |

首次初始化且模板表为空时,系统会自动写入一份 **「Source 专用服(示例)」**(见下文默认模板)。

二、添加模板的推荐流程

① 准备 Agent 游戏源
        ↓
②(可选)模板分类 / 端口池
        ↓
③(Minecraft)配置 Java 运行环境
        ↓
④ 后台创建游戏模板
        ↓
⑤ 填写启动参数、配置样例、设置项
        ↓
⑥(可选)绑定插件
        ↓
⑦ 用测试用户开服验证

### 步骤 1:准备游戏源

在 **已在线** 的 Agent 机器上放置完整服务端文件,例如:

Agent根目录/data/game-sources/cstrike/
  ├─ srcds.exe
  ├─ cstrike/
  └─ ...

模板字段 **游戏源路径** `source_files_path` 填相对名:`cstrike`(不要写绝对路径)。

### 步骤 2:(可选)模板分类

路径:**管理后台 → 游戏配置 → 模板分类**

- 用于同一类游戏共用 **端口池起始端口**
- 模板若挂到分类,则模板自身的 `game_port` 会按规则走分类端口(分类存在时模板 `game_port` 存 0)

不需要端口池时可跳过,直接在模板里写固定基础端口。

### 步骤 3:(MinecraftJava 环境

路径:**游戏配置 → Java 运行环境**

- 先添加本机/节点可用的 Java 安装信息  
- 创建 Spigot/Paper/Bukkit 等模板时必须选择 `java_runtime_id`  
- 启动参数中可用 `{MIN_MEMORY_MB}` / `{MAX_MEMORY_MB}`

### 步骤 4:新建游戏模板

路径:**游戏配置 → 游戏模板 → 添加**

#### 必填 / 关键字段

| 字段 | 说明 |
|------|------|
| **名称** | 必填,用户开服时看到的名字 |
| **游戏类型** | 决定状态查询协议,见下表 |
| **可执行文件** | 如 `srcds.exe`、`spigot.jar` |
| **启动参数** | 支持魔法变量 |
| **工作目录** | 建议 `data/servers/{ID}` |
| **游戏端口** | 无分类时必填基础端口 |
| **查询端口偏移** | 查询端口 = 游戏端口 + 偏移(旧「查询端口」字段已废弃) |
| **内存** | 非 MC:`memory_mb`;MC:`memory_mb_max`(JVM 最大堆) |
| **游戏源路径** | 对应 `data/game-sources/` 下子目录名 |
| **配置样例** | 可多个文件:`path` + `content` |
| **设置项** | 可手写,也可「自动解析」配置样例中的占位符 |
#### 游戏类型(后台选项)

| 值 | 用途 |
|----|------|
| `steam` | Source 引擎(CS/TF2/GMod 等),A2S 查询 |
| `palworld` | 幻兽帕鲁 |
| `terraria` | 泰拉瑞亚(可配 TShock REST) |
| `process` | 仅进程状态,无游戏协议查询 |
| `spigot` / `bukkit` / `paper` / `minecraft` | Minecraft 系 |
| `gamespy3` / `gamespy4` | GameSpy 查询 |

#### 内置魔法变量

可在启动参数、配置样例中使用:
| 变量 | 含义 |
|------|------|
| `{ID}` | 服务器实例 ID |
| `{NODE_IP}` | 节点 IP |
| `{GAME_PORT}` | 游戏端口 |
| `{QUERY_PORT}` | 查询端口 |
| `{MAX_PLAYERS}` | 最大人数 |
| `{WORKING_DIR}` | 工作目录 |
| `{EXECUTABLE}` | 可执行文件名 |
| `{MIN_MEMORY_MB}` / `{MAX_MEMORY_MB}` | Minecraft JVM 内存(MB) |

自定义设置项可再声明 `magic_var`(如 `{HOSTNAME}`),开服时替换进配置。

评论

暂无评论,欢迎留下您的看法。

评论需审核后才会公开显示