Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sy-records/game-ddz
♦️ 使用Hyperf框架开发斗地主游戏
https://github.com/sy-records/game-ddz
game hyperf php swoole
Last synced: 2 days ago
JSON representation
♦️ 使用Hyperf框架开发斗地主游戏
- Host: GitHub
- URL: https://github.com/sy-records/game-ddz
- Owner: sy-records
- License: apache-2.0
- Created: 2020-02-17T08:06:53.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2021-07-20T05:50:02.000Z (over 3 years ago)
- Last Synced: 2024-10-31T16:57:28.026Z (9 days ago)
- Topics: game, hyperf, php, swoole
- Language: PHP
- Homepage:
- Size: 587 KB
- Stars: 221
- Watchers: 8
- Forks: 78
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-seeds - game-ddz
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://github.com/sy-records/game-ddz.gitcd game-ddz
composer install --no-dev
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),已和原作者联系。