这个项目来源于Unity Asset Store上的3d-game-kit。主要变更是为其增加了个后端服务器,使它变成了一个网络游戏。
密码:wkwk6g
资源文件中包括字体,3D模型,图片,音乐等资源
MMORPG
|-- Backend 服务端
|-- Backend.sln 服务端解决方案文件
|-- Backend.csproj
|-- ....
|-- Frontend 客户端, Unity工程,可以用Unity Editor打开
|-- Assets
|-- 3DGamekit
|-- Art 资源文件
|-- Scripts C#代码
|-- ....
|-- BEAssets 从客户端导出的供后端使用的一些信息
|-- ....
|-- Library
|-- obj 客户端解决方案文件
|-- Packages
|-- Frontend.sln
|-- Assembly-CSharp-Editor.csproj
|-- Assembly-CSharp.csproj
|-- NavMeshComponents.csproj
|-- SimpleSFXRuntime.csproj
|-- Skybox3DRuntime.csproj
|-- WorldBuildingRuntime.csproj
|-- ....
|-- MMORPG.sln
|-- ....
解压资源文件Art.zip到 MMORPG\Frontend\Assets\3DGamekit 目录下
启动Unity Editor, PROJECT --> OPEN --> 选择项目目录MMORPG\Frontend
Unity Editor会在MMORPG\Frontend文件夹下创建Library文件夹,存放依赖的库文件,也会重新导入资源文件
Backend用到了GeometRi,一个用于空间计算的library。进入项目目录:
dotnet add backend package GeometRi --version 1.3.5.3
- 更改配置文件backend.conf,改成自己的配置 (在MMORPG/Frontend/Assets/assets下,这个文件夹存的是从客户端导出的一些信息, 例如: 每个场景的阻档点,精灵出生点坐标等)
- 打开MMORPG.sln,发布bakcend项目(配置中将路径修改为自己的配置)
- 将backend设为启动项目,在VS中启动Backend.exe,命令行参数为配置文件路径
backend.exe [path_to_backend.conf]
backend.exe运行大致如下:
Backend start up and waiting for a connection on port 7777...
- 选择场景:打开scene-level1/...
- 点击上方小三角,进入调试
WASD移动
左键点击进行攻击
右键锁定视角
- Navmesh
- 出生点坐标
- Backend配置文件格式
- 通信接口
- 同屏全场景广播
- GRID广播
- A*寻路
- 空间索引
- UI
- 登录
- 注册
- UI
- 交易
- UI
- 聊天逻辑
- 走路
- 攻击精灵
- 攻击其它人
- 跳跃
- 受伤
- 出生
- 死亡
- 装备
- 背包
- 走路
- 攻击
- 受伤
- 出生
- 死亡
- 可捡取物品
- 可破坏物品
- 机关
- 装备
- Elegent Exit