当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

传奇手游架设教程:安卓iOS服务端部署实操

热度:
先说前提,手机端传奇不是把电脑端MIR搬过去就能跑,它通常是“Windows服务端+安卓/iOS客户端+HTTP列表/微端+网关”的组合。新手别一上来买云服务器就开外网,先在本机虚拟机把整套跑通:能注册、能进选角、能打怪、能攻沙,再谈公网。

下面按市面常见的GOM/GEE手游版、翎风手游、Hero手游壳、单职业H5/Unity壳来讲,名字各版本不一样,但底层就四块:
1.服务端(M2/GameSrv/DB)
2.网关(LoginGate/GameGate/Web列表)
3.客户端(安卓apk/iOSipa/H5)
4.资源(补丁、Pak、热更、微端)

一、机器和环境
•服务端:WindowsServer2012/2016/2019或Win10都行,建议4核8G起步,人多了再加。

-数据库:老手游壳用DBC2000+HeroDB,新Unity手游多用MySQL(3306)或SQLServer。
•Web层:IIS/Nginx/小皮面板(PHP+MySQL)用来放登录列表、支付回调、微端资源。

-手机:安卓最省事,APK直接装;iOS没企业签就得自签/越狱/TestFlight,不然进不去。
•本机测试IP用127.0.0.1或局域网192.168.x.x;公网才用域名/IP。

二、解压服务端
别放C:\ProgramFiles。放:
D:\MirMobile\
常见目录:
D:\MirMobile\DBServer
D:\MirMobile\LoginGate
D:\MirMobile\GameGate
D:\MirMobile\GameSrv或M2Server
D:\MirMobile\Mir200\Envir
D:\MirMobile\Web(列表.php/serverlist.json/patch)
D:\MirMobile\MySQL\或单独装MySQL

三、数据库这一步最容易被卡
A.老Hero系手游:
装DBC2000→BDEAdministrator→新建HeroDB→PATH指向
D:\MirMobile\DBServer\HeroDB
保存。DBServer起不来先看这里。

B.MySQL系手游:
1.装MySQL5.7/8.0,记住root密码。
2.用Navicat/小皮面板导入版本里的xxx.sql(game、account、pay、log库)。
3.改服务端配置:
•D:\MirMobile\GameSrv\Config.ini

•Mir200\!Setup.txt

•各Gate的ini

里头的DBHost=127.0.0.1;DBUser=root;DBPass=你的密码;DBName=game
密码写错,M2一起步就“mysqlconnectfailed”。

C.有些版本用Redis做缓存(热更新/排行榜/邮件),那还得装Redis,Windows版有微软旧编译版,新版本用WSL或Linux小机跑更稳。

四、改IP/域名
单机或局域网:
•DBServer.ini→127.0.0.1

•LoginGate.ini→后端127.0.0.1,对外127.0.0.1

•GameGate.ini→同机就127.0.0.1

-M2/GameSrv内部通信→127.0.0.1
•Web列表文件:

serverlist.json里
{"name":"测试1区""ip":"127.0.0.1""port":7000"res":"http://127.0.0.1/patch/"}
公网时把这些127.0.0.1换成服务器公网IP或域名;HTTPS列表要配证书,不然安卓9+以上默认拦http资源。

五、启动顺序(和端游差不多,但多一层Web)
1.MySQL/Redis先起
2.DBServer
3.LoginGate
4.GameGate(可能有多个:游戏网关、聊天网关、跨服网关)
5.LogServer
6.M2Server/GameSrv
7.起Web(IIS/Nginx/小皮),浏览器开http://127.0.0.1/serverlist.json能看到区列表
8.安卓模拟器或真机装APK,进游戏

M2常见死法:
•portalreadyinuse→7000/7100/3306/6379被占,netstat-ano查

•cannotfindHeroDB→DBC路径没存

-pluginxxxx.dllnotfound→杀软删了Plugin目录
•scripterrorinQuestDiary→手游壳用了PC端函数,版本不干净

•PAKkeyerror→客户端资源和服务端PAK密码不一致

六、客户端怎么来
1.版本包自带的apk/ipa:最稳,别自己换包名。
2.官方传奇手游壳改资源:要反编译Asset/AB包,新手别碰。
3.H5传奇:本质是WebView+JS引擎,服务端还是M2,前端跑浏览器/微信小游戏,架设时只要把H5目录扔进Nginx,入口index.html指向网关就行。
4.安卓改列表地址:
•用ApkTool反编译→搜127.0.0.1/domain→改res或assets/config.json→回编译

•或者用版本自带的“登录器配置器”出包,比手改安全

5.iOS:
•有企业证书:直接分发plist+ipa

•没证书:AltStore自签(7天)、爱思自签、Xcode跑真机

•不改BundleID和签名,苹果设备进都进不了

七、资源/微端/热更
手游比PC多一步:资源不能全打进APK,太大了,通常走热更:
•patch/目录放Data、Pak、AssetBundle、UI、音效

•客户端首次进游戏读http://ip/patch/version.json

-版本号对了就不下,错了全量拉
•PAK密码在服务端Mir200\Envir或M2配置里,和客户端资源必须一致

黑屏、白屏、进图卡99%、技能图标全问号,八成是:
1)微端没起
2)patch路径404
3)PAK密钥不对
4)UnityAssetBundle平台打成了PC包

八、账号和支付
单机用GM账号直接进:
•M2里加管理员

•或sAdminList.txt/account表is_gm=1

-游戏内@make木剑1/@level50

想做注册页:
•Web目录里register.php/api/register

•连account库,密码一般md5或加盐hash

-登录token返回给客户端,客户端再连LoginGate
支付别碰“点卡/充值提现/打金回收”那些灰色链路,自己架着玩就关掉pay回调,把商城价格改0,或者M2里开GM发放。

九、本机→局域网→公网三步走
1.本机127.0.0.1能进:证明版本、M2、数据库、资源没问题。
2.局域网192.168.1.x能进:证明Gate、列表、APK里IP没写死127.0.0.1。
3.公网能进:
•云服务器开7000、7100、7200、7300、80、443、3306(3306别对公网开放,绑127.0.0.1)

•安全组放行

•域名解析A记录到服务器

-列表用域名,别用IP被墙就废
•安卓用https列表,iOS必须https+合法证书

•关RDP弱口令、改M2默认端口、删多余NPC刷物品漏洞

十、安卓模拟器调试
夜神/雷电/MuMu:
•把APK拖进去装

•如果是本机服务端,模拟器访问10.0.2.2才等于宿主机127.0.0.1(雷电一般用172.0.0.1或桥接,直接填宿主机局域网IP最稳)

-模拟器别开“ROOT隐藏”导致登录器崩
•真机调试用WiFi同网段,浏览器先开http://192.168.1.100/serverlist.json看能不能出JSON

十一、单职业/迷失/三端互通区别
-单职业:M2里职业表只留战士,技能映射成全系,客户端UI改一刀流、切割、转生
•迷失版:NPC脚本堆商城、会员、切割、灵魂、元素,Envir里QuestDiary/市场脚本一大堆

•三端互通:PC客户端、安卓、iOS连同一个M2,资源分三套(PCData/AndroidAsset/iOSAsset),但人物、行会、沙巴克数据在同一个MySQL

三端最烦的不是M2,是“资源同步”:你改了PC端补丁,手机端不热更,玩家一看装备样子不一样就以为bug。

十二、排错速查
进不了选角:
•LoginGate没起

•account表连不上

-列表JSON格式错(多了逗号、少了引号)
选完角黑屏:
•GameGate没起

•地图/场景AB包缺

•M2里场景配置IP还是127.0.0.1但手机在局域网

打怪不爆/爆率不对:
-MonItems路径错
•版本用了自定义爆率脚本但插件没加载

攻沙卡加载:
•沙巴克脚本死循环

•跨服网关没起

•同屏人数上限写0或过小

聊天发不出:
•聊天网关端口没开

•敏感词脚本死循环

十三、最小可跑清单
•Windows服务端一套(M2+DB+Gate)

•MySQL里account/game/log三库导入

•DBC(老版本)或ODBC/PDO(新版本)通了

•列表文件能浏览器访问

-APK里IP改成你本机/局域网
•patch目录能下资源

•M2起成功,QuestDiary无致命错

•建号进游戏,@level40,打鹿掉金币

这七条过了,就算“架起来了”。

十四、别踩的坑
•拿PC传奇1.76补丁直接塞手游Unity客户端:资源格式不同,必黑屏

•公网3306开0.0.0.0:一晚上库被拖走

•用路边“一键手游架设包”还关杀软:登录器变挖矿壳

-iOS没证书硬装:能装也跑3分钟掉签
•M2报漏洞不修直接开外网:别人用GM命令把你装备全删

•把微信/支付宝收款码写进商城就当支付:那是个人码,订单对不上,封号风险也有

十五、学这套要补的基础
真想自己改版本,得会一点:
•JSON/PHP/Lua(NPC脚本很多Lua化)

•MySQL增删改查

•UnityAssetBundle打包(手游资源)

•网关概念:登录网关、游戏网关、聊天网关、跨服网关

-APK反编译基础(改列表、改资源域名)
•防火墙/安全组/端口映射

不会也行,用版本自带配置器+官方客户端改列表,能玩;但想做“自己定义的版本”,上面这些躲不掉。

十六、一句话流程
装数据库→解压服务端→改IP→起Gate→起M2→起Web列表→出安卓包→真机进游戏→改爆率/NPC/转生/商城→本机跑稳→再上云服务器开公网。

传奇手游架设不是“下一个一键包双击就行”,它比PC单机多三层东西:移动端资源、HTTP热更、账号/支付/.token体系。PC端你会架了,手游只是把Gate前面加个Web层、把Data/Wil换成AssetBundle/Pak,再把登录器变成APK/IPA。底层还是那个M2在算伤害、爆率、行会、沙巴克。

新手最稳路线:
先架PC单机Hero1.80→再架GOM单机→再碰GOM手游壳→最后才做安卓出包和公网。跳步直接搞手游,遇到PAK/AB包/签名/HTTPS会一头雾水。

M2不报错、列表能读、APK能装、角色能动、怪物能死、物品能捡——这六件事同时成立,你的传奇手游服务端就算立住了。剩下都是运营层、反外挂、合区、跨服、活动脚本的活。
[顶部]