使用自有或已获书面授权的游戏服务端、客户端源码才可按本教程部署;未授权复制商业传奇手游程序、分发改装APK、对外运营收费,会涉及著作权侵权,情节严重可追刑责。 下面只讲技术流程,资源必须合法。
环境准备用Windows Server 2012/2016/2019或Win10/11 64位,4核8G起步,纯英文短路径解压服务端,例如D:\LegendServer,不用桌面、不用中文、不用空格括号。运行库装VC 2005到2022合集、.NET Framework 4.8、DirectX9;若服务端用MySQL,装MySQL 5.7或8.0,配套Navicat;若老内核用DBC,装DBC2000并在BDE Administrator建HeroDB,PATH指向服务端数据库目录,Ctrl+S保存。 杀软把服务端目录加信任,避免网关、主程序、数据库驱动被误删。
数据库初始化分两类。MySQL型:建库用utf8mb4或服务端要求字符集,导入自带SQL,常见库名按包内说明建legend、logincenter、game等;Navicat连127.0.0.1:3306,账号root,密码按服务端Config改,导入后检查角色表、物品表、怪物表、配置表是否完整。 DBC型:控制面板开BDE,建标准别名HeroDB,路径指Mud2\DB,库内含StdItems、Monster、Magic、Hum、Account等;启动DB服务前确认别名可Open,路径错会直接导致主程序读不到物品和角色。
改全局参数按单机、局域网、公网三档。单机所有配置写127.0.0.1;局域网写本机内网IP如192.168.1.100;公网写云主机公网IP并在安全组放行。要批量替换的配置文件通常包括服务端根配置、登录服配置、网关配置、热更manifest、网页后台config;字段名不同引擎不一样,常见有serverlist.json、ServerInfo.ini、Mir200.ini、LoginGate.ini、GameGate.ini、gateway.config、DBConfig.ini、config.php。 替换时全文件搜旧IP,登录端口、游戏端口、热更端口、数据库端口一起改,改完统一用ANSI或UTF-8无BOM保存,别用富文本。
启动顺序固定为数据库先起,再登录相关,再网关,最后主逻辑。MySQL/DBC服务正常后起LoginSrv或登录中心,再起LoginGate登录网关、SelGate角色网关、RunGate/GameGate游戏网关,最后起M2Server或GameServer主程序;带中控的战神/GEE类用控制器点数据库、登录服、游戏服,全部显示运行中再进客户端。 每个窗口都留着看日志,主程序报红字先按最后一行定位文件,常见是IP错、数据库连不上、Map缺失、Envir脚本符号错、运行库缺失。
手游客户端只处理你拥有源码或授权包的工程。安卓端在自有Android工程里改入口配置:assets或res下的serverlist.json、serverlist.txt、ipconfig.txt,按服务端填公网IP、登录端口、热更地址;若用Unity/自研引擎,改GameConfig、NetworkConfig后出包。改完用自有签名证书生成APK,debug用自签,发布用正规应用签名;不要用第三方未知工具反编译别人APK改IP,不去除正版校验、不替换别人资源。 iOS端改Info.plist或工程内server配置,用自有开发者证书或企业证书归档签名,热更资源走自有HTTPS,证书不匹配会进不了登录。
热更与补丁放服务端www或hotfix目录,manifest写公网IP、资源包名、版本号、文件大小、校验值;改IP后重算manifest,避免客户端拉到旧地址黑屏。地图、装备、技能、NPC资源只使用与当前服务端版本一致的自有补丁;资源版本不对会花屏、问号、黑屏、小地图缺失。
账号与GM按授权后台来。MySQL型在Accounts或UserAccount表查角色,GM字段按工程逻辑改权限等级;文本型老端用AdminList.txt写角色名和等级,改完重启主程序或.reloadadmin。网页后台改爆率、经验、活动、公告,地址通常为http://公网IP:后台端口/admin,默认账密按工程文档改掉,别用admin/123456长期跑外网。 所有GM操作留日志,外网运营按最小权限分配。
端口规划按实际组件开。常见登录7000、角色7100、游戏7200、网页80或8080、热更8080/8081、MySQL 3306、后台按工程自定义;云主机安全组和服务端防火墙都放行TCP,本机测试可临时关Defender但长期要加例外。用netstat -ano查监听,手机用telnet或ping端口工具测通断,7000不通先查LoginGate,7200不通查GameGate,3306不通查MySQL监听和远程账号,80/8080不通查web服务。
排错按现象分。能看登录界面但进不去:登录服、网关、主程序至少一个没起,或列表IP端口和客户端不一致。创建角色失败:数据库没写权限、账号表结构不对、DBC路径错。进游戏黑屏有音乐:地图或Data补丁缺失、manifest版本错、客户端资源不配套。闪退:安卓签名不对、CPU架构so缺失、内存不足、主程序运行库缺;Windows服务端主程序闪退补VC库、看M2日志。 乱码:MySQL导入用错字符集,重导为utf8mb4或按服务端要求GBK/GB2312;DBC老端用ANSI文本。打怪不刷:MonGen坐标错、地图号在MapInfo不存在、刷新间隔过大。NPC点不开:Market脚本#if/#act不配对、文件路径相对Envir写错。合击、内功、转生类功能按工程文档开关,未授权商业资源不要自行注入。
性能按人数配。单机自测2核4G可跑小服;50人在线4核8G;200人以上8核16G并分离MySQL和主逻辑。网关单进程抗不住就做多Gate,主程序是单线程瓶颈时少开全图自动、少开机器人、少放光柱特效。每日备数据库SQL或DBC文件、备Mir200/Envir、Map、热更资源;改爆率经验先打压缩包,回滚直接换文件重启。
合法替代路线给三类。其一用商业传奇官方授权或官方怀旧/定制服,按厂商规则调玩法;其二用Godot、Unity自研三职业MMO,自己写服务端、客户端、数据库,不受第三方著作权限制;其三用开源游戏服务框架做教学仿真,只跑自己写的地图、怪物、装备数据。未授权下载所谓一键端、破解APK、换皮包,既不安全也违法,很多包带木马和挖矿程序。
测试闭环按步骤走:空库起服务→建号进新手村→改经验爆率重启验证→加NPC和地图跳转→手机安卓自签包登录→iOS自签包登录→公网安全组和防火墙全开压力测试。一次只改一个配置项,黑屏或连不上能立刻定位;同时改IP、爆率、脚本、补丁,出问题会难以回退。

