手机传奇不能用老PC单机遇服务直接出安卓,必须先确认包里带MobileGate/AndGate、APK模板、热更manifest和三端中控。常见可用方向是战神、996、GOM/GEE三端、白日门类;纯HeroDB老核若没有手游网关,强行改EXE也出不了安卓。新手先搞单机自测,再扩局域网,最后才做公网。
一、准备环境与目录
电脑用Windows 10/11或Windows Server,4核8G起步,做合击和外网建议8核16G。服务端解压到纯英文目录,例如D:\MirMobile,不要用桌面、不要用“手机传奇合击”、不要放Program Files。关掉系统杀软实时防护,把服务端目录、MySQL、各网关exe、APK工具全部加白名单,很多MobileGate、登录器配置器、pak资源被静默删除后表现就是黑屏、网关起不来。
运行库按包装:VC++2005到2022的x86和x64、.NET 4.8、Java JDK1.8(改APK用)、Notepad++。MySQL类装MySQL5.7或5.6,配Navicat;老战神部分用DBC2000加HeroDB;Jar中控类用MySQL加Redis或Mongo,按包内README来。APK改包准备ApkTool、改之理、MT管理器、jarsigner/apksigner;做列表站用phpStudy、Nginx或IIS都行。
二、数据库与账号库
DBC老核:控制面板开BDE Administrator,New选STANDARD,Alias name写HeroDB,PATH指向D:\MirMobile\Mud2\DB或包内DB目录,Ctrl+S保存;系统区域短期格式改yyyy-M-d,重启电脑。检查StdItems、Magic、Monster、英雄/合击相关表或文本不为0字节。
MySQL类:启动MySQL服务,Navicat连127.0.0.1:3306,新建空库如legend_mobile,字符集按包要求用utf8mb4或gbk;导入包内sql,确认account账号表、character角色表、item物品表、hero英雄表、combo合击表、magic技能表都建成功。改服务端配置,文件可能是config\db.properties、DBService.ini、DBSvr.ini或!Setup.txt,填ip、port、user、password、dbname,保存后先起数据库再起其它网关。
三、改IP和端口
单机全部写127.0.0.1;局域网用ipconfig查本机内网地址,例如192.168.1.100;外网写云主机公网IP或花生壳域名。必须同步的位置:
DBServer/DBService配置,填库地址和监听。
LoginSrv或登录中心,改!addrtable.txt、serveraddr、区名和IP;战神/996格式区名与列表要一致。
LoginGate.ini,登录端口通常7000。
SelGate.ini,角色/选人端口通常7100。
RunGate/GameGate.ini,游戏端口通常7200,部分版本7300。
MobileGate/AndGate.ini,安卓手游网关通常8080或9000,按包来;战神部分工具写LoginPort 9000、网关监听9000。
微端/热更:微端常8000,热更manifest常8080/80/81/88;三端中控写serverlist.json或serverlist.lua,包含区名、login地址、android端口、ios端口、微端地址。
列表文件:PC老核用list.txt,ANSI,单行如“区名127.0.0.1 7000 0”或带微端“区名 127.0.0.1 7000 127.0.0.1 8000
0”;三端json按包示例写,不混格式。
APK内部:assets\serverlist.txt、assets\res\project.manifest、version.manifest、client_config.txt、res\values\strings.xml或com.xxx.mir2\assets\config,按具体包定位。
端口占用排查用cmd执行netstat -ano | findstr "7000"、findstr "7100"、findstr "7200"、findstr "8080"、findstr "9000",看到LISTENING且PID不是服务端,就到任务管理器按PID结束占用再重启。改整套端口时,网关ini、中控json、微端、manifest、APK五处一起改,只改一处会卡登录或黑屏。
四、启动顺序
有总控先跑配置向导再一键启动;手动按下面顺序:
网站/列表服务,phpStudy、Nginx、IIS或中控web先起,确保浏览器能开http://127.0.0.1/list.txt或http://IP/project.manifest。
数据库服务,MySQL/Mongo/DBServer先起,看“数据库就绪/连接成功”。
LoginSrv账号服务,读addrtable无报错。
LoginGate登录网关,7000监听。
SelGate选人网关,7100监听。
RunGate游戏网关,7200监听。
MobileGate/AndGate手游网关,8080或9000监听,不起这个安卓进不去。
M2Server/GameSvr主逻辑,加载MapInfo、MonGen、Envir、Magic无红字,最后显示启动成功。
合击包额外检查Mir200\!Setup.txt里HeroSystem=1、ComboSkill=1、英雄等级和合击技能表;英雄不出战、合击放不出先查这两项,再查英雄是否到版本要求等级、火龙之心/怒气条件、MagicCombo是否初始化。
五、APK改IP与重签名
用改之理或ApkTool解包,优先搜下面文件并全量替换IP:
assets/serverlist.txt
assets/res/project.manifest、version.manifest
assets/config、com.xxx.mir2/assets/config
res/values/strings.xml里的server_ip、server_port
战神类若服务端带APK_Tools,直接改client_config.txt的LoginIP和LoginPort,再用APK打包工具选Res目录、配置文、出包并签名,比手工反编译省事。
改IP规则:单机回127.0.0.1,局域网回192.168.x.x,外网回公网IP或域名;manifest里只改host/ip,端口不动,除非服务端整体换端口。若动了mir2.zip、res.zip、Data、Map、NewopUI.pak、Resources下pak,要用引擎热更工具重算MD5和文件大小写回manifest,否则手机会卡资源、黑屏。
回编译后用JDK签名:
keytool -genkey -alias mirkey -keyalg RSA -validity 20000 -keystore mir.keystore
jarsigner -verbose -keystore mir.keystore -signedjar out_signed.apk in.apk mirkey
或用apksigner按包要求对齐签名。未签名APK在安卓8以后基本装不上,模拟器有时能装但真机多数报错。
iOS只做测试思路:解IPA,改Payload\mir2-iOS.app\res\project.manifest,用企业证书/开发者证书重签,爱思或TestFlight装;没证书不要硬搞,个人证书会掉。
六、模拟器与真机测试
先装雷电/夜神模拟器,分配2核2G以上,装签名APK。进登录界面看区名、IP、端口是否和manifest一致;建测试号,进新手村走路、打怪、掉装,合击版召唤英雄、到等级放合击。战神部分默认测试账号按包来,GM后台常是http://IP:99/gmht/gm.php,首次按包初始化,用来改等级、发装备、调爆率。
真机局域网测试:手机连同WiFi,装签名APK,manifest写192.168.x.x;若用列表json,手机浏览器先开http://192.168.x.x/list或manifest地址,能返回文本再进游戏。连不上先查电脑防火墙入站、服务端监听IP是否还写127.0.0.1、MobileGate是否起来。
七、外网开区
云主机用Windows Server或Linux都行,三端Jar用Linux+Nginx+MySQL更轻,战神/996 Windows更省事。安全组入站放行7000、7100、7200、手游网关8080/9000、微端8000、热更80/8080/88,GM后台99或admin端口只对自己开,MySQL3306不对外。系统防火墙入站同样放行对应exe和端口,协议以TCP为主,微端/语音按包补UDP。
家宽无公网IP用花生壳或frp,把7000、7200、8080、8000映射到花生壳域名,APK和manifest写域名不写127.0.0.1。路由器端口映射选虚拟服务器,外部7000转内网服务端IP:7000,7100、7200、8080、8000同理;协议ALL或TCP+UDP。
外网测试用另一部手机走流量:浏览器开http列表地址能返回、telnet公网IP 7000能连、再装新签APK;telnet不通回查安全组、系统防火墙、服务端还写127.0.0.1、路由器映射未生效。
八、进不去游戏对照
列表不显示:list.txt路径错、json格式错、网站未起、杀软删LoginGate、编码带BOM;用浏览器直接访问列表地址最直观。
点登录连接失败:LoginGate没起、7000被占、防火墙拦、APK里login地址仍127.0.0.1、serverlist与中控区名不一致。
能输号卡创建/选人:SelGate 7100、DBServer、账号库、user/account表问题;角色表缺字段会创建闪退。
进图黑屏/卡资源:Data、Map、pak、mir2.zip没覆盖,微端8080/8000没起,manifest MD5没重算,PAK密码和登录器/APK不一致。
合击灰/放不出:HeroSystem/ComboSkill未开、英雄未到等级、合击技能表空、怒气/火龙之心条件不满足、Envir合击脚本没加载。
M2红字闪退:中文路径、VC库缺、DBC路径错、插件Plug冲突、杀软删dll;先看黑窗最后一行再按模块重启。
APK装了闪退:未签名、manifest IP错、安卓版本不兼容、资源包缺文件;老引擎配新安卓可换引擎登录器或重打低最低SDK包。
九、多区和日常备份
多区复制D:\MirMobile1、D:\MirMobile2,一区7000/7100/7200/8080,二区7001/7101/7201/8081,微端8001;各份改DB配置、网关ini、中控json、manifest、APK工程,列表写多区多行。别只改登录端口不改RunGate,否则能登录进不去图。
备份分三块:服务端整目录、MySQL转储或DBC的DB文件夹、APK签名工程和manifest。每次改IP、改爆率、换pak、调合击前先备份,再单点改单点重启;改完不清客户端缓存直接重进,容易旧资源残留。长期跑看M2日志、网关日志、MySQL慢查询,定期导库和压缩服务端。
只做本机研究或已获授权的环境按上面走最稳;未获授权的传奇代码、资源对外开服、挂充值、发推广,会涉及侵权和后续法律风险,技术上能通不等于可以运营。先把单机127.0.0.1跑顺,再改局域网,最后才动公网映射和APK重签。
手机传奇手游零基础架设教程战神GOM合击三端服务端改IP网关启动APK签名外网排错
来源:
作者:
点击:

