手游服务器框架 Survive

码农软件 · 软件分类 · 手机游戏 · 2019-05-14 19:27:00

软件介绍

简介

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服务

首先在你的机器上安装ssdbredis

启动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启动成功

Alt text

6)选择你刚才所配置的ip,点击启动,如果看到下图表明游戏服务启动完成

Alt text

启动游戏客户端

打开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启动游戏客户端.

Alt text

用户名可随便输入,忽略密码直接点击进入游戏,如果一切正常你将会看到如下的创角界面:

Alt text

游戏图片展示

1)主界面

Alt text

2)背包界面

Alt text

Alt text

3)每日任务

Alt text

4)角色属性

Alt text

5)装备强化

Alt text

Alt text

6)每日签到

Alt text

7)挂机任务

Alt text

8)单人副本

Alt text

9)5人PVE副本

Alt text

Alt text

10)5V5PVP战场副本

Alt text

Alt text

11)多机器人副本压测

Alt text

问题反馈

如有任何问题请通过huangweilook@21cn.com向我反馈,Enjoy!

本文地址:https://www.codercto.com/soft/d/5746.html

函数式算法设计珠玑

函数式算法设计珠玑

Richard Bird / 苏统华、孙芳媛、郝文超、徐琴 / 机械工业出版社 / 2017-4-1 / 69.00

本书采用完全崭新的方式介绍算法设计。全书由30个珠玑构成,每个珠玑单独列为一章,用于解决一个特定编程问题。这些问题的出处五花八门,有的来自游戏或拼图,有的是有趣的组合任务,还有的是散落于数据压缩及字串匹配等领域的更为熟悉的算法。每个珠玑以使用函数式编程语言Haskell对问题进行描述作为开始,每个解答均是诉诸于函数式编程法则从问题表述中计算得到。本书适用于那些喜欢学习算法设计思想的函数式编程人员、......一起来看看 《函数式算法设计珠玑》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试