微前端架构如何改变企业的开发模式与效率提升
652
2022-10-19
Survive- 手游服务器框架
简介
Survive是使用distri.lua框架实现的一个小型手游服务端示例.除了aoi和astar两个模块以外,所有游戏逻辑皆使用lua编写.
Survive是一个副本玩法的ARPG游戏,目前支持的功能如下:
帐号验证,角色创建 角色背包,装备穿戴,装备升级,装备升星,装备镶嵌 技能学习,升级 每日签到,每日任务 每日挂机活动 单人PVE副本 5人PVE副本 5V5战场副本
Survive的逻辑服务采用单进程单线程的方式,目前Survive的服务包括:
gateserver:负责保持与客户端的网络连接,将客户端请求转发到内部服务和把来自内部服务的消息转发给客户端 groupserver:负责帐号验证,角色创建,角色数据的保存,基本游戏逻辑以及副本的管理 gameserver:服务服务,运行具体的副本实例,实现战斗及AI处理
获取与构建Survive
获取
Survive依赖distri.lua所以首先需要获得distri.lua
git clone https://github.com/sniperHW/distri.lua.git
进入distri.lua目录
git clone https://github.com/sniperHW/Survive.git
构建
首先确保你的机器上已经安装libcurl和libreadline
然后在distri.lua目录执行以下命令:
make survive
运行Survive服务
首先在你的机器上安装ssdb或redis
启动ssdb/redis
修改gateserver的对外服务ip/端口,打开Survive/setconfig.lua,将[“gate1”] ={“192.168.0.87”,8010}改成你希望的ip和端口.
在distri.lua目录执行以下命令:
./distrilua Survive/setconfig.lua
之后根据使用命令行还是使用管理工具分成两种不同的启动方式
命令行启动
执行如下命令:
./distrilua Survive/groupserver/groupserver.lua./distrilua Survive/gameserver/gameserver.lua./distrilua Survive/gateserver/gateserver.lua
完成后游戏服务便启动完成,可以跳到客户端的启动章节
通过管理工具启动
Survive提供了一套基于web的管理工具,在配置之前请确保你的机器上已经安装了php和apache.除此之外,还要安装php的redis客户端库phpredis.
上面的所有要求都满足之后,打开examples/daemon.lua文件.
1) 将serverip修改为你期望的值
2) 修改groupname=”group1”中所有项的ip为你的期望值
3) 修改StartProcess中的路径
4) 执行:
./distrilua examples/daemon.lua -d
这行命令会在你的机器上启动一个daemon进程用于启动/关闭和监控服务
5)在浏览器中输入ip/manage.php,如果看到下图表明php服务及daemon启动成功
启动游戏客户端
打开Survive/client/src/UI/UILogin.lua
将
local function btnHandle(sender, event) print("pre connect") --Connect("192.168.0.87", 8010) Connect("121.41.37.227", 8010) --cc.Director:getInstance():replaceScene(require("SceneLoading.lua").create()) end
中Connect的参数改为你gateserver的ip和端口号
之后通过Survive/client/runtime/win32/battle.exe启动游戏客户端.
游戏图片展示
1)主界面
2)背包界面
3)每日任务
4)角色属性
5)装备强化
6)每日签到
7)挂机任务
8)单人副本
9)5人PVE副本
10)5V5PVP战场副本
11)多机器人副本压测
问题反馈
如有任何问题请通过huangweilook@21cn.com向我反馈,Enjoy!
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~