# ddz **Repository Path**: adminwp/ddz ## Basic Information - **Project Name**: ddz - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-11-13 - **Last Updated**: 2023-11-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 斗地主 ♦️ 基于Hyperf框架开发斗地主游戏,实现斗地主游戏服务端逻辑,并采用原生js和WebSocket实现简单的客户端打牌逻辑,可以做到简单的玩斗地主游戏。 ## 特性 * 实现前后端二进制封包解包,采用的是[msgpack](https://github.com/msgpack/msgpack-php)扩展,msgpack对数据进行了压缩,并实现粘包处理; * 数据采用固定包头,包头4个字节存包体长度,包体前2个字节分别为`cmd`(主命令字),`scmd`(子命令字),后面为包体内容 * 采用策略模式解耦游戏中的每个协议逻辑 * 实现定义游戏开发`cmd`(主命令字)和`scmd`(子命令字)定义,cmd和scmd主要用来路由到游戏协议逻辑处理 ## 依赖 * 运行 Hyperf 的环境 * [msgpack](https://github.com/msgpack/msgpack-php) 扩展 ## 安装 ```bash git clone https://gitee.com/adminwp/ddz.git cd ddz composer install php bin/hyperf.php start ``` 安装完成后访问 URL:[http://127.0.0.1:9501](http://127.0.0.1:9501) ## 使用示例 ### 登陆 请随意输入英文或数字账号,这里是将用户账号当做`uid`使用,存入`redis`当中 ![登陆](public/example/1.png) ### 打牌 根据按钮来操作打牌逻辑,消息框里会提示打牌逻辑过程 ![打牌](public/example/2.png) ## 写在最后 此repo示例修改自[swoft-ddz](https://github.com/jxy918/swoft-ddz),已和原作者联系。