项目

Projects · 我做过的一些东西

1 个项目 · 全部开源
TinyDDT 项目截图
开源

TinyDDT

协程微服务架构的多人实时弹道射击游戏

TinyDDT(仿弹弹堂)是一款基于 C/S 架构的实时多人回合制弹道射击游戏。 玩家在同一张地形图上轮流发射炮弹,考虑风向和角度,击中对手以减少其 HP,率先将对方 HP 降为零者获胜。

项目整体分为服务端(微服务 + 共享物理引擎)和 客户端(战斗/网络/UI 模块)两大模块, 附带一套基于 Protobuf + etcd 的 RPC 框架。

服务端基于 sylar C++ 协程框架构建, 采用微服务架构拆分为 gate / login / lobby / battle / data 五个独立服务, 通过 etcd 做服务注册与发现、 Protobuf 定义 RPC 接口; 客户端使用 Unity (C#) 实现, 通过 TCP 长连接接入网关。

C++ C# Unity etcd Protobuf MySQL Redis
Yinghuo12 / TinyDDT