关于网页游戏断线重连的思路和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 ...
随机推荐
- libsvm参数说明[zz]
English:libsvm_options:-s svm_type : set type of SVM (default 0) 0 -- C-SVC 1 -- nu-SVC 2 -- one-cla ...
- haproxy 同一域名下分发请求
http://www.th7.cn/Program/java/201608/936162.shtml https://my.oschina.net/lockupme/blog/733375 还有一点要 ...
- JS中getElementByID,getElementsByName,getElementsByTagName的区别
<input type="text" name="mynumber" id="mynum1" value="" / ...
- 腾讯云服务器 Centos6.5 安装 nginx1.12.0
今天买了腾讯云,不要问我为什么没有买阿里云... 入正题: 如果出现 CentOS ping: unknown host 的话,表示没有配置dns vim /etc/sysconfig/network ...
- CentOS编译安装vim
#删除系统自带的vim rpm -qa | grep vim rpm -e vim-X11-7.4.629-5.el6_8.1.x86_64 vim-filesystem-7.4.629-5.el6_ ...
- UIScrollView中图片放大后不居中,或居中后移动有偏差解决办法
转自:http://blog.sina.com.cn/s/blog_6ae8b50d0100yret.html 问题的描述如下:要显示一张图片,也只需要显示一张图片,该图片可能很大,也可能很小,但是要 ...
- 浅谈hibernate的sessionFactory和session
一.hibernate是什么? Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. Hiber ...
- 从tableview中拖动某个精灵
virtual void registerWithTouchDispatcher(void); virtual bool ccTouchBegan(CCTouch *pTouch,CCEvent *p ...
- Spark VS Presto VS Impala
https://www.quora.com/What-is-the-difference-between-Spark-and-Presto
- Redhat6.5安装DB2 Express-C版本
Linux Redhat6.5安装DB2 Express-C版本: 创建相关用户和组 创建用户组: groupdel db2iadm1 groupadd -g 999 db2iadm1 groupad ...