网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
可签
7
级以上的吧
50
个
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
01月13日
漏签
0
天
ce吧
关注:
196,098
贴子:
3,799,564
看贴
图片
吧主推荐
玩乐
1
2
3
下一页
尾页
51
回复贴,共
3
页
,跳到
页
确定
<返回ce吧
>0< 加载中...
组包中断的原因分析和几种解决办法
只看楼主
收藏
回复
远_寐
一方大佬
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
送TA礼物
IP属地:河南
1楼
2016-06-22 02:40
回复
整点新花样儿
称霸一域
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
围观,前排遛打脸大神
@HellO丶Days
IP属地:广东
2楼
2016-06-22 02:41
回复(2)
收起回复
西安指尖跳动教育咨询
职业资格证书一键查询,技能等级证书一键查询,证书覆盖全面,手机一键查询,职称评级人事任免,提高自身竞争力,防范就业风险,规避商业合作风险
2025-01-13 02:29
广告
立即查看
铁血灬流浪
锋芒毕露
6
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
围观前排打脸
3楼
2016-06-22 02:42
回复
收起回复
铁血灬流浪
锋芒毕露
6
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
不给15字!
4楼
2016-06-22 02:42
回复
收起回复
远_寐
一方大佬
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
关于组包中断的原因,现在有两种说法
咱们不讨论那个对哪个错。我更倾向于第二种
1:重复快速发包而又不走主线程,这时候会导致服务器没有处理完第一个包的情况下,你又发送了第二个封包,或者服务器正在处理主线程包的时候你发包,这时候就会被服务器踢下线,也就是网络链接中断。
2:发包接口占用,也就是主线程发包动作未完成,然后你也来了一发,导致中断。具体原理参照Obj闪退。一个原理,不过一个是服务器,一个是内存分配。
原因清楚了,接下来说解决办法。
IP属地:河南
5楼
2016-06-22 02:43
回复
收起回复
整点新花样儿
称霸一域
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
楼主 贴不贴那种,就是.....就是那种.......我没见过的“VB”嘛? 我想看大神撕你
有请大神
@HellO丶Days
IP属地:广东
6楼
2016-06-22 02:45
回复(1)
收起回复
铁血灬流浪
锋芒毕露
6
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
发发,表偷懒我要凑齐15字,等着睡觉,
8楼
2016-06-22 02:50
回复
收起回复
DX3906
铁血诸侯
10
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
学学,看看
IP属地:福建
来自
Android客户端
9楼
2016-06-22 02:52
回复
收起回复
西安指尖跳动教育咨询
快速查询个人各类证书信息,了解自身资质与职业发展潜力轻松获取职业资格、技能等级等个人证书的详细信息,降低就业风险
2025-01-13 02:29
广告
立即查看
远_寐
一方大佬
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
1:这个办法并不能解决线程外部发包和主线程发包的冲突,但是能解决线程内部发包冲突。也就是说还有几率中断(网络较差的情况下),但是能基本上一条疲劳入包不中断。
具体实现:以入包为例子(本帖子所有功能以大家最容易中断的入包为例子)
首先看一下入包的流程 怪物死亡-》掉落物品-》向服务器发送拾取请求 -》 服务器收到请求 -》 处理 -》 服务器向本地发送拾取包 -》 本地执行拾取动作
中断出在 重复发送拾取请求,也就是服务器在没有处理完一个请求的情况下 又收到了一个请求。然后就踢你下线。
这里我们只讨论入包冲突,也就是如果入包的同时你有其他发包动作也是会导致中断的。
解决入包冲突只需要一个判定。
判定是否拾取成功。那么来写一下伪代码
for(遍历图内物品){
if (type == 273){
组包拾取();
while(拾取成功);
执行下一个拾取();
}
}
这样我们就初步解决了拾取很多物品秒中断的问题,但是拾取速度在网络差的情况下就会变得延迟略高
那么有小伙伴问了,如果出现制裁或者负重。这个物品一直捡不起来那要如何判定?
我贴出我以前用过的伪代码
ItemOI[64];(地面物品对象数组,保存地面所有的物品对象)
然后先遍历完成,将地面所有物品存入这个数组,然后依次执行入包操作,加一个超时判定即可,
由于楼主本人不会易语言所以只能以伪码的形式写出来,大家可以找易语言大神实现这一部分。
IP属地:河南
10楼
2016-06-22 02:55
回复
收起回复
远_寐
一方大佬
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
大晚上语言组织能力好差,有啥不懂的此楼留言明天统一回复。
IP属地:河南
11楼
2016-06-22 02:57
回复
收起回复
远_寐
一方大佬
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
上面那种方法并不能真正的解决组包中断,只是减少了百分之九十的中断而已。真正要做到不中断还是要从根源下手。
IP属地:河南
12楼
2016-06-22 03:00
回复
收起回复
远_寐
一方大佬
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
也就是大神们所说的主线程发包,这个小夏已经开源过了,收包hook,说下这个原理。物品掉落收包和怪物死亡收包走同一个包。
所以收包hook就是从怪物死亡收包中提取出来物品ID。
然后执行收包动作。
因为收包肯定走游戏主线程,所以在这里发送拾取包肯定不会中断。
IP属地:河南
13楼
2016-06-22 03:02
回复
收起回复
我开宝马的乞丐
一方大佬
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
李菊福
来自
iPhone客户端
14楼
2016-06-22 05:09
回复
收起回复
度娘cao你
德高望重
8
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
胡扯
来自
Android客户端
15楼
2016-06-22 07:46
回复(1)
收起回复
Acr
涿鹿大千
12
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
那组包进图中断和卖物中断呢
IP属地:上海
来自
Android客户端
16楼
2016-06-22 07:54
回复(2)
收起回复
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧热议榜
1
学生对沪爷自称老奴被老师挂科
2942940
2
象棋录音门全员塌房
2640073
3
黑神话再与宇宙机器人争年度最佳
2144884
4
贴吧老哥智斗诈骗分子
2126925
5
Bin哥爆典是为队友抗压
2119858
6
韩国核电站泄漏29吨核废液
1758450
7
一诺获最佳选手是否实至名归
1752168
8
LPL揭幕战WBG零封OMG
1676700
9
来点漫威争锋搞笑梗图
1230306
10
丹麦愿与美国讨论格陵兰岛问题
1007475
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示