再发一个HTML5+WebSocket+PHP多进程 多人在线小蝌蚪游戏[强烈推荐]
2014-05-03 23:34
330 查看
在这个游戏中,你会化身一个小蝌蚪,然后在浩瀚的宇宙中游弋,时不时会看到和你同样的小蝌蚪游过来,这时候你可以和她打招呼或者聊天,非常有趣。
游戏截图:
首先说明:前端部分不是我开发的,前端使用的是国外一个开源代码,地址:https://github.com/danielmahal/Rumpetroll。这个代码库中包含了前端代码和ruby的后端代码。
后端代码:我用PHP基于workerman框架进行了重写,花费了大概2个小时左右完成(嘿嘿,用PHP基于workerman开发这类socket程序还是非常快的),完全替换了原有的ruby后端。
在这里workerman不仅提供了游戏后台WebSocket服务,而且还担当起Web Server的角色,非常强悍。
游戏原理:客户端使用HTML5绘画出小蝌蚪,当用户点击屏幕时,自己的小蝌蚪会向着鼠标方向游动,游动的过程中,通过websocket将自己的坐标数据发送给workerman,workerman接收到坐标数据后,通过其它蝌蚪的websocket连接广播给所有其它小蝌蚪,其它小蝌蚪收到广播的坐标数据后绘制这些蝌蚪,大家就可以看到其它蝌蚪的状态了。聊天也是同样的原理,就是把聊天内容广播给其它蝌蚪。
小提示:你的浏览器需要支持HTML5才能体验,如果你的手机浏览器也支持HTML5的话(例如手机火狐浏览器),也可以用手机体验,那么你就可以用手机通过小蝌蚪和PC浏览器玩家交互了。
游戏文档
游戏代码下载页面
游戏DEMO页面
游戏截图:
首先说明:前端部分不是我开发的,前端使用的是国外一个开源代码,地址:https://github.com/danielmahal/Rumpetroll。这个代码库中包含了前端代码和ruby的后端代码。
后端代码:我用PHP基于workerman框架进行了重写,花费了大概2个小时左右完成(嘿嘿,用PHP基于workerman开发这类socket程序还是非常快的),完全替换了原有的ruby后端。
在这里workerman不仅提供了游戏后台WebSocket服务,而且还担当起Web Server的角色,非常强悍。
游戏原理:客户端使用HTML5绘画出小蝌蚪,当用户点击屏幕时,自己的小蝌蚪会向着鼠标方向游动,游动的过程中,通过websocket将自己的坐标数据发送给workerman,workerman接收到坐标数据后,通过其它蝌蚪的websocket连接广播给所有其它小蝌蚪,其它小蝌蚪收到广播的坐标数据后绘制这些蝌蚪,大家就可以看到其它蝌蚪的状态了。聊天也是同样的原理,就是把聊天内容广播给其它蝌蚪。
小提示:你的浏览器需要支持HTML5才能体验,如果你的手机浏览器也支持HTML5的话(例如手机火狐浏览器),也可以用手机体验,那么你就可以用手机通过小蝌蚪和PC浏览器玩家交互了。
游戏文档
游戏代码下载页面
游戏DEMO页面
相关文章推荐
- 发一个WebSocket+PHP聊天室-PHP多进程实时服务器推送技术
- web策略类游戏开发(四)一个可以承载万人在线的架构
- 【PHP-socket框架】MeepoPS轻松构建在线实时聊天, 即时游戏, 视频流媒体播放
- web策略类游戏开发(四)一个可以承载万人在线的架构
- hyk-proxy - 一个支持基于GAE/Seattle/PHP的web proxy框架 (A web proxy framework support implementations on GAE/Seattle/PHP , could be used to break some firewall) - Google Project Hosting
- 一个PHP在线备份和恢复MySQL数据库的类
- 一个web应用程序统计在线用户列表的东东(带c#源码)
- php写一个web五子棋
- php多进程读写同一个文件锁的问题及flock详解
- 10 Levels of Security:又一个在线解谜游戏
- PHP多进程协作编程之-socket
- 一个不错的游戏 - flash webgame
- iis中创建、配置一个web站点,使其可支持asp和php
- 记录一个不错的web在线开发教程网
- 分享一个帮助你在线测试响应式设计的web工具 - Screenqueri.es
- 逆向在线游戏:创建一个包记录器和编辑器
- php和数据库结合的一个 简单的web实例 代码分析 (php初学者)
- 使用PHP创建一个socket服务端
- 通过一个Socket例子理解Http协议(实战Java Web服务器--使用HTTP协议和JAVA类实现)
- linux下php多进程与可响应http请求的socket server