e盾服务端源码_原罪西游源码发布!!!
https://github.com/oceancx/YZXYgithub.com
关于这个项目:
原罪西游(YZXY)是一款MMORPG类型的2D回合制开源游戏,这个项目包含了服务端和客户端以及相关工具的所有源代码。
这个项目支持读写梦幻西游经典版的资源(2.0.186以前),但是这个项目本身并不提供任何梦幻西游经典版的资源。
如果要玩原罪西游,请确保你的磁盘上有2.0.186以前的梦幻西游客户端,或者相关资源文件。
已构建完成的库下载
https://pan.baidu.com/s/18S0OKkdUJIRutJ5MuaLEug 提取码:3ppy
下载完成后,运行launcher.bat可以启动客户端,服务端,以及资源路径配置。
构建方法:
- git clone --recursive https://github.com/oceancx/YZXY
- 构建external工程。用cmake.exe打开YZXY/external/CMakeLists.txt,配置构建的binaries目录为YZXY/external/build, vs版本请选择Visual Studio 15 2017 之后的64位版本,之后全部采用默认配置,点击生成,直到vs工程生成。然后用IDE打开工程,构建INSTALL目标,这个构建完成后会自动安装libs还有include文件到YZXY/external/dist目录下
- 构建SimpleEngineAll工程。用cmake.exe打开YZXY/CMakeLists.txt,配置构建的binaries目录为YZXY/build。 vs版本请选择Visual Studio 15 2017 之后的64位版本,之后全部采用默认配置,点击生成,直到vs工程生成。然后用IDE打开工程,构建SimpleEngineAll目标。成功构建完成后,YZXY/bin/Debug或者YZXY/bin/Release下会生成SimpleEngine.exe, SimpleServer.exe, cxlua.exe。
- sh launcher.sh。即可打开launcher,从而启动服务端客户端或者配置资源目录。
源码介绍
externals目录下的库全是作者引用的外部库,外部的意思是作者并不打算对其做任何修改。每个引用的外部库都有自己的介绍。这里不再赘述。
internals目录下的库全是作者引用的内部库,意味着作者随时有可能对其进行修改。下面对内部库作一一介绍。
- kbase-cmake和ezio-cmake,这两个库修改自https://github.com/kingsamchen/KBase 和 https://github.com/kingsamchen/ezio 其中ezio依赖kbase,ezio是一个小巧高效的异步网络库,c++14编写。
- lua-cmake,luacjson-cmake,为标准的lua库的cmake版。
- nlohmann c++json库,单.hpp文件包含
- NESupport 梦幻西游资源读取库,单一.h&.cpp文件包含
- cxlua 依赖lua,luacjson,ezio,nesupport,nlohmann,glm。cxlua包装了基础性的c++接口,让其可以被lua调用到。SimpleEngine,SimpleServer以及launcher都依赖cxlua。
- luadebugger https://github.com/oceancx/luadebugger 这个目录是一个repo,提供了lua调试器,包含了vscode的lua调试器适配器,以及嵌入到被调试程序里的调试相关功能的支持(例如断点,步入,步出)
- gsm-cmake,miniaudio-cmake 修改自https://github.com/dr-soft/miniaudio 使其支持播放相关音频文件。
- imgui https://github.com/ocornut/imgui ,游戏必备,本项目也提供了imgui的lua binding生成。
- nanovg 2D矢量图形库 https://github.com/memononen/nanovg
下面是YZXY/下剩余目录的介绍
- .vscode保存的是项目的lua调试器配置,关于本项目调试器的构建安装请看launcher里的说明
- bin/目录 是默认的exe构建生成目录
- common/目录下的.cpp/.h文件会同时参与SimpleEngine和SimpleServer的构建。
- client/仅用于SimpleEngine的cpp/h
- server/仅用于SimpleServer的cpp/h
- data/梦幻西游资源存放目录
- cxluax是launcher项目
- res/目录下是一些其他资源,例如字体,图标,tsv行列表
- scripts/是YZXY用到的所有lua文件,scripts/share/目录下的lua文件共享于launcher/SimpleEngine/SimpleServer,scripts/client/仅SimpleEngine使用,scripts/server仅SimpleServer使用
SimpleEngine,SimpleServer,以及launcher主要逻辑都由lua实现,其lua入口为各自的main.lua文件。
enums_protocol.lua 定义了所有客户端服务端之间的协议
原罪西游介绍
ALT+E 可以给自己染色,更换形象,更换武器
ALT+W 可以编辑场景里玩家以及召唤兽的属性,包括玩家属性点,玩家级别,玩家技能等级,玩家门派,玩家修炼,召唤兽属性点,召唤兽等级,召唤兽修炼,玩家携带的召唤兽信息,以及玩家的队伍信息。
ALT+R 仅战斗中会显示/隐藏,可以编辑当前战斗中所有对象的战斗指令。攻击/法术/防御/逃跑等
原罪西游会朝着尽可能还原梦幻西游经典版的方向开发,目前技术方面已经无压力,后续功能基本上用lua便可实现。目前正在完善战斗部分,已经有了基础的战斗控制编辑器,以及actor属性编辑器。
欢迎对此项目感兴趣的朋友加Q群讨论:983630090
e盾服务端源码_原罪西游源码发布!!!相关推荐
- 2021最新4合1即时通讯IM源码-服务端+PC+WEB+安卓+IOS完整原生源码
介绍: 20214合1即时通讯IM源码 服务端+PC+WEB+安卓+IOS完整原生源码 附完整开发文档+视频搭建教程. 注意:此源码亲测可用,他处有小问题,我们已经修复.任何源码,难免有瑕疵,但不影响 ...
- 适合新手:从零开发一个IM服务端(基于Netty,有完整源码)
本文由"yuanrw"分享,博客:juejin.im/user/5cefab8451882510eb758606,收录时内容有改动和修订. 0.引言 站长提示:本文适合IM新手阅读 ...
- 羊了个羊游戏网站源码_带前后端源码,带教程
羊了个羊游戏源码_带前后端源码_及配置教程说明 这是啥游戏?据悉,这是一款卡通背景的消除闯关游戏.玩家们需要点击上方卡牌,被选中的卡牌会下移到底部的木框中,框内最多可以储存7张卡牌,当有3张相同的卡牌 ...
- e盾服务端源码_gRPC服务注册发现及负载均衡的实现方案与源码解析
今天聊一下gRPC的服务发现和负载均衡原理相关的话题,不同于Nginx.Lvs或者F5这些服务端的负载均衡策略,gRPC采用的是客户端实现的负载均衡.什么意思呢,对于使用服务端负载均衡的系统,客户端会 ...
- Nacos 服务端健康检查及客户端服务订阅机制源码分析(三)
Nacos 服务端健康检查 长连接 概念:长连接,指在一个连接上可以连续发送多个数据包,在连接保持期间,如果没有数据包发送,需要双方发送链路检测包 注册中心客户端 2.0 以后使用 gRPC 代替 h ...
- 谷歌pay服务端文档_米大师服务端说明
1.后台接口说明 1.支付后台接口API 1.1 API 1.1.1 查询余额接口 (1)URL地址 [现网]https:// ysdk.qq.com/mpay/get_balance_m [沙箱]h ...
- 使用HTML5的WebSocket实现服务端和客户端数据通信(有演示和源码)
WebSocket协议是基于TCP的一种新的网络协议.WebSocket是HTML5开始提供的一种浏览器与服务器间进行全双工通讯的网络技术.依靠这种技术可以实现客户端和服务器端的长连接,双向实时通信. ...
- 限制会话id服务端不共享_不懂 Zookeeper?看完不懂你打我
高并发分布式开发技术体系已然非常的庞大,从国内互联网企业使用情况,可发现RPC.Dubbo.ZK是最基础的技能要求.关于Zookeeper你是不是还停留在Dubbo注册中心的印象中呢?还有它的工作原理 ...
- 限制会话id服务端不共享_【干货分享】Web安全漏洞深入分析及其安全编码
阅读: 13,003 超全Web漏洞详解及其对应的安全编码规则,包括:SQL注入.XSS.CSRF.文件上传.路径遍历.越权.XML以及业务安全等,实例告诉你各个漏洞对应的编码规则.给你的代码加把安全 ...
最新文章
- python打包_cx_freeze
- Linux C编程--进程间通信(IPC)5--System V IPC 机制3--共享内存
- utils C/C++的常用工具类
- 去除list集合中重复项的几种方法
- 机器人 蓝buff 钩_机器人要在S赛登场了?Ming韩服练起来了,这是RNG黑科技?
- 信息学奥赛一本通(1257:Knight Moves)
- mysql如何添加用户_如何创建新用户和授予MySQL中的权限
- 电脑如何测网速_测网速小常识
- 20160130001 冯仑风马牛
- IOS 改变导航栏返回按钮的标题
- 4.剑指Offer --- 解决面试题的思路
- 基于java的生信软件_常用生物信息学软件介绍和文献依据.docx
- CAD/CAM编程排料软件提高钣金制造业竞争力
- 张晨北京科技大学计算机,混合群智能优化算法研究及应用
- idea svn分支与分支合并_Idea svn 合并分支方式(坑)
- windows 11屏幕保护程序配置教程——设置无效解决方案
- SaaSBase:最适合小团队轻量级项目管理的软件——Tower
- HyperLynx(三)传输线类型及相关设置
- 卷积神经网络:用于图像分类
- 利用Fiddler下载旧版本 iOS App
热门文章
- fzu 2109 Mountain Number 数位DP
- C#读书笔记之继承、接口与抽象类续
- ASP.NET MVC2 使用绑定时 等号和冒号的差别 %=%和%:%的区别
- Dojo.Layout下的三个布局组件,浓缩精华
- Ajax同步交互与异步交互
- c#报错不实现接口成员_《C#程序设计》 习 题 集
- Modularity(模块化-AMD规范)
- Type Conversion(类型转换)
- java爬虫隐藏表单提交_java爬虫--jsoup简单的表单抓取案例
- 动态规划之图像压缩问题