php 游戏开发swoole,Swoole+websocket多人在线游戏示例

利用Swoole,可以使用PHP来开发Websocket服务器,实现多人在线游戏。本文通过一个最简单的摇骰子游戏来介绍Server端(由PHP+Swoole实现)和Client端(由H5+Websocket实现)。

基本原理

由Swoole创建Websocket服务,用户的所有操作(登录、准备、摇骰子等)通过Websocket发送到服务器。游戏状态的改变(用户所有操作、游戏开始、用户摇骰子结果、游戏结束、游戏结果等)也通过Websocket发送到客户端。

流程

游戏初始化

用户连接到服务器即实现了登录。服务器维护在线用户列表。用户登录或退出都push给所有客户端。

所有用户点击“准备”后,游戏开始。用户点击“摇啊摇”后,服务器为该用户生成点数。所有用户都生成点数后,得到点数最大的用户。游戏结束。

本文忽略了房间的设置,把所有用户都统一到一个房间。

运行

运行Server

php Server.php

然后用浏览器访问index.html即可。可以同时用不同浏览器打开,以实现多用户同时在线的效果。部分运行截图如下:

c4686cc466203943cbbfca15e7809542.png1.服务器运行状态

14402ae46442796b54cf6e2f2d8eb112.png

2.用户准备中

c506b2cc67157757424ec8bfe0a05bdd.png

3.用户摇骰子

1c7234a067b4eb4e06b5b6943d278cf4.png

4.游戏结束

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>