WangJun d8acc7babd Savanna biome (#127) 6 năm trước cách đây
..
readme-zh.md d8acc7babd Savanna biome (#127) 6 năm trước cách đây
readme.md d8acc7babd Savanna biome (#127) 6 năm trước cách đây
terrain-zh.md d8acc7babd Savanna biome (#127) 6 năm trước cách đây
terrain.md d8acc7babd Savanna biome (#127) 6 năm trước cách đây

readme-zh.md

开发者指南

简介

安装

从源码安装

  • 1 . 下载并安装 .NET Core sdk 2.0
  • 2 . 下载并安装 MongoDB
  • 3 . 从 github page 下载MineCase(或者使用 clone: 指令)。

    git clone [email protected]:dotnetGame/MineCase.git
    cd MineCase
    
  • 4 . 解压 Minecase 压缩包.

  • 5 . 构建并运行 build_and_run

    • OSX : 运行 build_and_run.sh.
    • Linux : 运行 build_and_run.sh.
    • Win : 双击 build_and_run.bat.

使用二进制安装

  • 1 . 暂不提供

文件夹介绍

  • build - 存放编译后的二进制文件和发布后的二进制文件

  • client - 一个基于Unity的Minecraft游戏客户端的实现

  • common - 存放一些客户端和服务器公用的代码

  • data - 数据文件,例如Minecraft合成配方等

  • docker - 服务器docker文件

  • private - 暂不使用

  • server - 存放服务器代码

  • tests - 存放对上述代码的单元测试

项目介绍

Client文件夹

  • MineCase.Client - 存放unity项目文件
  • MineCase.Client.Engine - 存放游戏核心结构,类似wpf属性系统
  • MineCase.Client.Scripts - 存放游戏逻辑

Common文件夹

  • MineCase.Algorithm - 存放MineCase服务器和客户端公用的逻辑代码,例如噪声生产、低下生成、生物AI
  • MineCase.Core - 存放MineCase核心概念和数据结构,例如Block、Chunk等
  • MineCase.Nbt - Minecraft NBT结构解析
  • MineCase.Protocol - Minecraft 网络协议
  • MineCase.Serialization - MineCase一些结构的序列化

Server文件夹

  • MineCase.Gateway - MineCase的Gateway程序,相当于Orleans中的Client,用于和玩家的游戏通信,并转发信息到Server中的逻辑进行响应。
  • MineCase.Server - MineCase的Server程序,相当于Orleans中的Silo,负责游戏逻辑的处理。
  • MineCase.Server.Engine - MineCase的核心结构,结合WPF属性系统和ECS架构。
  • MineCase.Server.Grains - 存放Orleans中的Grain,也就是Virtual Actor
  • MineCase.Server.Interfaces - 存放Virtual Actor的接口

可能的项目列表

  • 完善地形生成,实现The End和Nether
  • 实现熔炉
  • 实现聊天
  • 实现命令解析
  • 实现灯光计算 采用洪水填充算法,为chunk中每个block赋予skylight和blocklight值
  • 实现物理
  • 实现红石
  • 实现生物AI

可能的项目指南