🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
### 6.1 构建项目 `api`:主要是注册一些mmo业务的一些Router处理业务。 `conf`:存放mmo\_game的一些配置文件,比如"zinx.json"。 `core`:存放一些核心算法,或者游戏控制等模块。 `game_client`:存放游戏客户端。 `pb`:存放一些protobuf的协议文件和go文件。 1、我们在`mmo_game`下,创建一个`server.go`作为我们main包,主要作为服务器程序的主入口。 > mmo\_game/server.go ```go package main import ( "zinx/znet" ) func main() { //创建服务器句柄 s := znet.NewServer() //启动服务 s.Serve() } ``` 2、在`conf`文件添加`zinx.conf` > mmo\_game/conf/zinx.conf ```go { "Name":"Zinx Game", "Host":"0.0.0.0", "TcpPort":8999, "MaxConn":3000, "WorkerPoolSize":10 } ``` 3、在`pb`下创建msg.proto文件和build.sh编译指令脚本 > mmo\_game/pb/msg.proto ```go syntax="proto3"; //Proto协议 package pb; //当前包名 option csharp_namespace="Pb"; //给C#提供的选项 ``` > mmo\_game/pb/build.sh ```go #!/bin/bash protoc --go_out=. *.proto ``` 当前我们的项目路径应该结构如下: ```bash . └── mmo_game ├── api ├── conf │   └── zinx.json ├── core │   ├── aoi.go │   ├── aoi_test.go │   ├── grid.go ├── game_client │   └── client.exe ├── pb │   ├── build.sh │   └── msg.proto ├── README.md └── server.go ```