编写服务端 · Writing Server
Go-MC 提供了一个轻量级服务端框架,可以用来快速实现一个服务端。
架构说明
从协议角度,玩家进入服务器游玩一共分为三个阶段:
名称 | 功能 |
---|---|
Ping & List | 玩家进入服务器前,展示服务器信息与在线玩家数 |
登录 | 玩家进入服务器游玩,处理登录协议,设置网络连接的压缩与加密 |
游玩 | 玩家登录成功进入游戏,处理游戏逻辑与玩家交互 |
Go-MC 围绕这三个阶段设计,通过接口提供了一个自由度极高的服务器框架。
以下是 Go-MC 提供的三个主要接口:
- LoginHandler:用于提供登录协议,默认提供 Mojang 登录验证的实现,用户可以通过编写自己的 LoginHandler 来实现自定义登录验证。
- ListPingHandler:为外部提供服务器状态信息的查询功能,用户可以通过编写自己的 ListPingHandler 来实现显示自定义的服务器状态信息。
- GamePlay:最有趣的部分,留给用户自行实现,用户可以参考 https://github.com/go-mc/server 由 Tnze 编写的版本。
//TODO