关于网页游戏断线重连的思路和demo求助
http://bbs.9ria.com/thread-146997-1-1.html
——————————————————————————————————————————————————
1:俺有什么方法可以获得到玩家当前是否已经断线.
心跳包,客户端每秒向服务器发一个带有时间戳的包,服务器连续4秒收不到包则判断玩家断开
2:断线之后,我弹出tips告诉玩家他已经断线了,怎么样控制玩家当前对手继续进行游戏.
需要看是什么样的游戏
如果是斗地主三国杀这类限时回合游戏,那么强制用AI对掉线玩家做出一步操作
如果是长局即时游戏,可能需要服务器发送信息给所有人,暂停游戏以等某个人(WC3思路)
如果是短局即时游戏,允许其它所有人继续游戏,但掉线时间一旦稍长则踢出掉线者(CS思路)
3:断线之后无法连接到服务器,我需要用什么方法去侦听玩家的网络是否连接上了.
断线之后重新用socket连接,连接成功后用客户端之前缓存的房间号向服务器发送要重连的信息
4:玩家网络连接上了,我发送信息后台告诉后台连接上了并请求数据,后台数据过来之后怎么样继续游戏?因为断线时间是多久谁也无法确定呢.
几种办法,对三国杀一类棋牌回合游戏,服务器将当前所有玩家状态、出牌一次性发送给客户端,这个数据量并不大(CS因为信息量不大也是这个思路)
如果是更大的即时游戏,客户端要求重连时声明自己最后一次收到信息的时间戳
服务器缓存若干秒前的数据,将从上述时间戳开始,到当前时间戳为止的数据一次性发出,客户端收到后一次性执行或者加速执行(WC3的思路)
5:假如玩家一直断线挂不上,我怎么办呢?
踢出该玩家。
6:问题太多了,求详细思路,有demo最好,
开什么玩笑,这个是相当大的东西
sfs(smart fox server)等第三方开源引擎就是最好demo,而且注释全面
楼主有这个想法可以直接下载
7:有木有在QQ,英雄联盟做过这些的大神啊...
有在腾讯的,没有在QQ的,
此外英雄联盟是外国游戏,腾讯只是代理
8:求指导,每次俺发问题都花光所有积蓄,每次回答的人基本看不到,求指导..感激不尽呢.
所谓花光积蓄,6个问题一共30两,合一个问题5两,等于平均价格。
对复杂项目求原文件本身就得不到有效回复
将很多问题一起问也不是好办法,对回答者来说一次解决这么多太麻烦了。此外一问答不上出于面子未必来凑这个热闹。
此外正是这个各种求的态度,以及随口的感谢不尽万分感谢一亿分感谢或者十亿分感谢让回答者感觉没什么答的价值。楼主恰当的做法是先自行进行尝试,写一点自己的东西出来,在开发过程中碰到具体问题再有针对性地进行提问,而不是上述很泛的,从项目一开始就问到很往后的位置。
关于网页游戏断线重连的思路和demo求助的更多相关文章
- [Mugeda HTML5技术教程之14]案例分析:制作网页游戏
本文档要分析的案例是一个爱消除的网页小游戏,从中可以体会一些Mugeda API的用法和使用Mugeda动画制作网页游戏的方法. (一)游戏规则: 1.开始游戏时,手机出现在最上面一行的任意一格: 2 ...
- Netty 如何实现心跳机制与断线重连?
作者:sprinkle_liz www.jianshu.com/p/1a28e48edd92 心跳机制 何为心跳 所谓心跳, 即在 TCP 长连接中, 客户端和服务器之间定期发送的一种特殊的数据包, ...
- 推荐21款最佳 HTML5 网页游戏
尽管 HTML5 的完全实现还有很长的路要走,但 HTML5 正在改变 Web,未来 HTML5 将把 Web 带入一个更加成熟和开放的应用平台.现在,越来越多的人尝试用 HTML5 来制作网页游戏等 ...
- arpg网页游戏之地图(三)
地图分块加载类MapEngine,主要包含以下属性: g 地图层graphics,地图将画在上面 buffPixelRange 地图加载范围矩形 viewPort 屏幕视窗 currZoneArr 已 ...
- arpg网页游戏之地图(二)
[转]http://www.cnblogs.com/BlueWoods/p/4684557.html 这一节说说视窗,这个视窗,也就是游戏的视角.现在的网页游戏分为2D游戏,2.5D游戏和3D游戏,2 ...
- arpg网页游戏之地图(一)
[转]http://www.cnblogs.com/BlueWoods/p/4681572.html?from=timeline&isappinstalled=1 开发arpg网页游戏一项比较 ...
- 关于socket tcp 断线重连
这个问题困扰过我几次,都没有来得及研究,今天研究一下. 首先写一个最简易的socket tcp程序,连接成功后再关闭服务器然后再用客户端各种操作看是什么情况 测试表明 (1)客户端已经连接,当服务端关 ...
- netty4 断线重连
转载:http://www.tuicool.com/articles/B7RzMbY 一 实现心跳检测 原理:当服务端每隔一段时间就会向客户端发送心跳包,客户端收到心跳包后同样也会回一个心跳包给服务端 ...
- 基于html5实现的愤怒的小鸟网页游戏
之前给大家分享一款基于html5 canvas和js实现的水果忍者网页版,今天给大家分享一款基于html5实现的愤怒的小鸟网页游戏.这款游戏适用浏览器:360.FireFox.Chrome.Safar ...
随机推荐
- laravel用redis保存session遇到的坑,没报错,但redis-cli就是查不到
laravel用redis保存session遇到的坑, 配置redis存储session流程是这样的 在.evn文件中把session驱动和连接改为了redis的 如下: SESSION_DRIVER ...
- IOS 视频流
https://github.com/kolyvan/kxmovie demo 项目
- Xilinx Vivado的使用详细介绍(2):综合、实现、管脚分配、时钟设置、烧写
前面一篇介绍了从新建工程一直到编写代码进行行为仿真,这篇继续进行介绍. 修改器件型号 新建工程时选择过器件型号,如果新建好工程后需要修改型号,可以选择菜单Tools - Project Setting ...
- Multi-Cloud & Kubernetes: Cloud Academy November 2018 Data Report
https://cloudacademy.com/research/multi-cloud-kubernetes-devops-cloud-academy-data-report-nov-18/ No ...
- Nginx配置优化参考
Nginx配置优化参考 ...
- [iOS]终极横竖屏切换解决方案
[iOS]终极横竖屏切换解决方案 大家的项目都是只支持竖屏的吧?大多数朋友(这其中当然也包括博主),都没有做过横屏开发,这次项目刚好有这个需求,因此把横竖屏相关的心得写成一遍文章供诸位参考. 01.综 ...
- Linux--多网卡的7种Bond模式【转】
转自:http://www.cnblogs.com/lcword/p/5914089.html 网卡bond是通过把多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡.在应用部署中是一 ...
- 关于事件冒泡和键盘事件 以及与Angular的区别
一.事件冒泡 方法一.使用event.cancelBubble = true来组织冒泡 <div @click="show2()"> <input type=&q ...
- Spring boot下添加filter
https://www.cnblogs.com/OnlyCT/p/7133639.html ****************************************************** ...
- QQ通信原理及QQ是怎么穿透内网进行通信的?
http://blog.csdn.net/frank_good/article/details/51160027 ******************************************* ...