MAGIC LAND · 一键开服启动器

怀旧魔域一键启动器 v2.0.2(CMHAP)

专为《魔域》老端怀旧版(假人版)打造的一键启动器,把原本需要手动按顺序点五六次的开服流程收进一个窗口,自动等待端口就绪、自动识别目录、联网一处配置,避免「数据库没起就开网关」「网关没起就开客户端」这类顺序错误。

单文件免安装纯原生 Win32自动识别目录联网一键配置自动更新

01

软件简介

这是专为《魔域》老端怀旧版(假人版)制作的一键启动器,把原来需要手动按顺序点五六次的开服流程收进一个窗口,避免「数据库没起就开网关」「网关没起就开客户端」这类顺序错误。纯 Win32 编写,不依赖 .NET / Qt / MFC / VC 运行库,单个 exe 即可运行,双击时弹 UAC 请点「是」。

一键启动、一键关闭、联网配置、分开启动、目录自动识别、Flash 处理、状态栏与日志、自动更新,八大能力一窗整合,服务端运维无需再逐文件手改。

资源介绍

资源内容服务端、客户端补丁、登录器相关、配置环境、网站、攻略

职业等级140

支持系统Win

文件大小89.00 MB

02

核心功能清单

✓一键启动整套服务先停其它数据库 → 启本机数据库 → 启 ACCServer → 启 MSGserver、NPCserver → 检 Flash → 开客户端,每一步自动等待端口就绪。
✓一键正常关闭客户端 → NPC/MSG/ACCServer → 数据库;数据库用 mysqladmin 正常关机,失败时才强制结束,不留后台进程。
✓联网一键配置只填一次 IP,服务端 4 处配置、客户端 2 处配置一次写好,免逐个文件手改。
✓服务端 / 客户端分开启动只开服不玩、或只当客户端连别人的服,都不必走完整流程。
✓目录自动识别游戏文件夹改名、换盘符、多套一层目录都能自动定位数据库、ACCServer、Gameserver、客户端。
✓Flash 智能处理自动检测 Flash ActiveX,未装引导安装包;启动后自动点掉「请安装 Flash」提示框的【确定】。
✓状态栏与分步日志6610 与 6620 都在监听才显示「运行中」,日志区按步骤编号输出每一步结果与就绪端口。
✓自动更新启动时自动检查服务器上的新版本,可一键更新并自动替换重启。

03

界面与功能说明

三排按钮 + 游戏目录 + 联网配置 + 运行日志

顶部按钮一键启动 / 一键关闭 / 游戏目录

一键启动:完整流程,日志显示 [1/7] ~ [7/7];一键关闭:关客户端与三个服务端及数据库,日志显示「全部关闭完成」;游戏目录:用资源管理器打开当前识别到的游戏根目录。

游戏目录路径识别与重选

显示当前识别到的游戏根目录。路径不对或未识别时,点【选择目录】重新选一次,启动器会记住(写入 launcher.ini 的 GamePath)。

联网配置服务器 IP · 写入服务端 / 客户端 · 分开启动

服务器 IP:IPv4 地址,自动填入本机 IP 并沿用上次填写,格式错误会提示;写入服务端:IP 写进服务端 4 处配置;写入客户端:IP:6610 写进客户端 ini\Oem.ini 与 ini\oem.dat 的 Ip1;启动服务端:只做服务端部分 [1/5]~[5/5];启动客户端:只做客户端部分 [1/2]~[2/2]。

运行日志与状态栏运行状态 · 版本库 · 版本号

日志区黑底白字按步骤输出;状态栏左侧:已停止 / 处理中… / 运行中;中间:沧梦魔域版本库 → https://www.cmhap.com ;右侧:启动器版本号(如 v2.0.2)。

提示:本机作为 Client 时只点【写入客户端】,不要点「写入服务端」,否则会把服务端配置改成本机地址。

04

游戏目录自动识别规则

按特征文件递归查找,不超过 5 层

数据库目录目录内存在 mysqld-nt.exe(通常在 bin 子目录,启动器自动取上一级作为 basedir)
ACCServer同时含 account.ini 和 2启动_Accountserver.exe(或 Accountserver.exe)
Gameserver同时含 ini 文件夹和 4启动.NPCserver.exe(或 3启动MSGserver.exe / msgserver.exe / npcserver.exe)
客户端目录同时含 ini 文件夹和 0点击启动魔域.exe(或 soul.exe)

识别失败:会中止启动并弹窗列出缺哪一类目录。常见原因:游戏文件没解压全、被压成两层同名文件夹、只复制了客户端没复制服务端。处理办法:点【选择目录】,选到包含「0游戏文件」(或直接包含数据库、ACCServer、Gameserver、客户端)的那一层。

05

一键启动的 7 个步骤

1

停止其它数据库:先停 Windows 服务里的 MySQL 类服务,再结束 mysqld.exe / mysqld-nt.exe 及旧版数据库启动程序,腾出 3306 端口。

2

启动数据库:按真实路径生成 my_runtime.ini(GBK 编码),用 mysqld-nt.exe –console 启动,至多等 35 秒,成功输出「数据库已就绪 (3306)」。

3

启动 ACCServer:等 6610 端口,至多 25 秒。失败通常是 config.ini 的 SERVERIP 不是本机有效 IP,或数据库账号密码不对。

4

启动 MSGserver:等 6620 端口,至多 40 秒,依赖前两步已完成。

5

启动 NPCserver:启动后等 2.5 秒确认进程仍在运行。

6

检查 Flash:查注册表里的 Flash ActiveX。未安装会问你是否打开游戏目录中的「安装flash和常见问题」文件夹。

7

启动客户端:打开 0点击启动魔域.exe(或 soul.exe),并启动后台守护线程,自动点掉客户端弹出的 Flash 提示框的【确定】。

只开服(启动服务端):只执行 1~5 步 [1/5]~[5/5];若 6610/6620 已在监听会提示先「一键关闭」。只玩(启动客户端):只执行 6~7 步 [1/2]~[2/2];本机没开服会警告「服务端未在运行」,属正常提示。一键关闭:先客户端 → 再 NPC/MSG/ACC → mysqladmin 正常关库,3306 仍监听才强制结束。

06

联网配置与部署(重点)

两个 IP 不是同一个写入服务端 vs 写入客户端

写入服务端:填服务器网卡上的真实地址(局域网 192.168.x.x;云服务器内网如 172.28.21.93,或 0.0.0.0 监听全部网卡)。填错会直接导致 ACCServer 起不来或外网连不上。写入客户端:填玩家机器能连通的地址(局域网填服务端局域网 IP;外网玩家填公网 IP),自动补上 :6610 端口。

阿里云 / 腾讯云最容易踩的坑:公网 IP 是 NAT 映射,不在网卡上。若把公网 IP「写入服务端」,服务端会绑定一个本机不存在的地址,结果 ACCServer 不监听 6610,外网连不上。正确做法:服务端写内网 IP(或 0.0.0.0),客户端写公网 IP。

写入服务端一次改 4 处,成功弹窗「成功修改 4 / 4 处」

文件 字段
ACCServer\config.ini SERVERIP=
Gameserver\config.ini GAMESERVER_IP=
Gameserver\shell.cfg 文件前 16 字节(二进制 IP 字段)
Gameserver\shell.dat 文件前 16 字节(二进制 IP 字段)

shell.cfg 与 shell.dat 是 ProSHELL 网关的 IP 字段,两个都要改,缺一个外网就可能连不上;并会记到 launcher.ini → [Launcher] ServerIP 沿用。

写入客户端一次改 2 个文件,只改 Ip1 行

文件 字段 写入内容
客户端\ini\Oem.ini Ip1= IP:6610
客户端\ini\oem.dat Ip1= IP:6610

端口一览3306 · 6610 · 6620

端口 用途 放行
3306 MySQL(mysqld-nt) 不需要、也不要对外放行(只供本机服务端用)
6610 ACCServer(账号网关) 必须放行,客户端登录靠它
6620 MSGserver(游戏消息服) 必须放行,登录后进游戏靠它

部署要点服务端 / 客户端 / 场景按钮

服务器端:整包解压 → 管理员运行并确认识别目录 → 填内网 IP → 写入服务端(先关服务端程序)→ 放行 6610/6620(云安全组 + Windows 防火墙两层)→ 启动服务端 [5/5] → netstat 确认 LISTENING → 外网 telnet 公网IP 6610 验证。

客户端:拷客户端目录 → 填玩家能访问的 IP → 只点写入客户端 → 启动客户端,登录界面能显示服务器名称即说明 6610 通了。

单机:写本机 IP → 写入服务端 + 写入客户端 → 一键启动。局域网:服务器写局域网 IP 启动服务端;玩家机写服务器 IP 启动客户端。云服务器:服务器写内网 IP 放行端口;玩家机写公网 IP。只当玩家:填对方 IP → 只点写入客户端 → 启动客户端。

07

常见故障排查

现象 原因 处理
客户端报「服务器连接错误」 6610 不通——IP 写错、端口没放行、服务端没起 netstat 确认 6610 LISTENING;外网 telnet 公网IP 6610;核对客户端 Ip1
连接要等十几秒才失败 数据包被防火墙/安全组直接丢弃 安全组与 Windows 防火墙两层都要放行 6610/6620
本机正常、外网连不上 服务端被写成了公网 IP(云服务器 NAT 不在网卡上) 服务端改写内网 IP 或 0.0.0.0,客户端写公网 IP,重启服务端
日志「ACCServer 未监听 6610」 config.ini 的 SERVERIP 不是本机有效地址,或数据库账号不对 重新「写入服务端」,核对数据库账号密码
日志「MSGserver 未监听 6620」 数据库或 ACCServer 未就绪,或端口被占 按顺序重来;检查 6620 是否被别的程序占用
日志「数据库启动超时」 3306 被别的 MySQL 占用、data 目录损坏、未以管理员运行 先「一键关闭」清理;管理员运行;检查数据目录完整性
写入服务端部分失败 服务端程序正在运行、文件被占用,或目录未识别 先「一键关闭」,再点「写入服务端」
客户端白屏 / 透明 没装 Flash ActiveX 按提示打开「安装flash和常见问题」目录,安装其中一个 Flash 包
双击启动器无反应 被 SmartScreen 拦截,或拒绝了 UAC 右键属性勾选「解除锁定」;UAC 弹窗点「是」

08

自动更新

每次启动自动检查一次更新,日志打「正在检查更新…」「当前已是最新版本 vX.X.X」。检查地址:https://www.cmhap.com/gx/jehad_Launcher/version.txt ,新程序文件与它放同一目录。发现新版本弹窗提示,确认后自动下载、替换当前 exe 并重启;旧程序被占用时轮询等待退出后再覆盖。

version=2.0.2
file=jehad_Launcher.exe
note=2.0.2 更新:启动服务端、启动客户端按钮位置调整

version.txt 用 ANSI / GBK 编码保存,不要存成 UTF-8,否则中文说明会乱码;file= 指向同目录下的新程序文件名。

09

注意事项与问答

写入服务端要关服务端吗?要。ACCServer / Gameserver 运行时会锁定配置文件,写入易失败或改完不生效。
3306 为何不放公网?这套老端数据库账号是固定弱口令(test/test),暴露公网极易被清库,只供本机服务端访问。
换 IP 只改客户端行吗?不行。服务端 ACCServer/Gameserver/ProSHELL 都要跟着改(「写入服务端」一次搞定 4 处),客户端重新「写入客户端」。
游戏目录改名能用吗?能。按特征文件递归搜索(不超过 5 层),只要求四类目录相对结构对得上。
my_runtime.ini 能改吗?不建议。每次点「启动数据库」都会按当前真实路径重新生成它,手改会被覆盖。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。