魔兽争霸的基本理论原理
魔兽争霸1.20版玩RPG地图经常掉线,然后出一堆英文怎么回事?
我也碰到过好多次,应该不是war3问题,一般有这几种情况:
1。地图本身错误,刚开图就退出;
2。地图过于复杂或玩的中途过于复杂(比如突然出现一大堆小兵,原理类似卡屏),内存CPU难负重荷;
3。网络连接有问题。
魔兽世界简单点说圆桌理论?
这样吧,我尽可能简单的给你讲一下原理
怪物对玩家的攻击的结果,是从上到下计算的
未命中
躲闪
招架
格挡
爆击
碾压
普通攻击
战士用盾牌格挡技能避免碾压,是因为格挡排在碾压上面,也就是说,如果从上向下累加,到了格挡一项百分比就超过了100%(实际上是超过102.4%因为BOSS比自己高3级),那么后面的所有项目都不可能出现
距离:假设骑士开了神圣之盾后,拥有70%格挡几率,20%躲闪几率,10%招架几率,BOSS未命中占了5%
那么攻击结果头四项已经达到了105%,也就是说,所有后面的项目,都被挤出了“攻击桌面”之外,都不可能出现,这种状态的骑士,BOSS用普通攻击打他只会出现未命中躲闪招架格挡,而绝不可能出现爆机,碾压,普通攻击
贼坦克扛BOSS更变态,未命中+躲闪+招架已经超过102.4%,也就是说所有后面的状态都不会发生,也就是说,BOSS的普通攻击绝对打不到贼
P.S.人物面板上的百分比数据都是绝对百分比,如果躲闪50%招架50%,代表普通攻击50%被躲闪,剩下50%全部被招架
而不是50%被躲闪,剩下部分的50%被招架
魔兽争霸官方对战平台怎么断线重连?
在游戏的过程中假如意外掉线,那么重新登录继续进入游戏后可以由系统进行断线重连,快速追赶游戏进度,让你去找战友们继续战斗。
简单说一下断线重连的原理:
断线重连的核心其实就是两个:1)封包回放;2)在合适的时机屏蔽用户的操作。
对于第一点实事上很多平台已经实现,原理比较简单,就是把用户的所有封包原封不动的发给他,由于war3的机制,当收到大量的封包的时候,war3会采取加速的形式追赶进度。
这里稍微提一下加速的倍率,在我内部测试的时候,如果不产生操作指令(例如一直站着不动50分钟),加速的倍率可以到128倍以上(由于war3限制了最高8倍速,所以这个值也是需要hack修改的),而如果是实战中,比如一局dota,即使我将内部的速度调成128倍,这个速度最高只能是十几倍。
那么有没有更好的方案,比如不追赶进度,像dota2那样直接加载不是更好吗?很可惜,当时在我研究的时候发现这个方案不可行,原因是war3并没有保存全局状态的逻辑,也没有从一个状态加载游戏的功能。
再谈谈第二点,这个应该是断线重连的核心问题了。其实这个问题需要注意的很多,比如如何保证在追赶进度的时候用户不能输入操作,同时追赶完进度后要在合适的时机放开限制。
这里只提一下难点,因为war3的封包处理和逻辑计算是在不同的线程的,如果处理不当会导致各种诡异的bug,比如和队友在不同的时空中(进去玩过的朋友应该有这种体会,那种在你的电脑里你已经成神,但是在队友或者其他人那里你早已成鬼,但是你们还可以打字交流。这个bug后来发现是封包发送部分处理的时候有些bug,并没有完整的回放所有封包导致的,并非是断线重连这个解决方案本身的bug)。
断线重连的核心其实就是两个:
1)封包回放;
2)在合适的时机屏蔽用户的操作。
对于第一点实事上很多平台已经实现,原理比较简单,就是把用户的所有封包原封不动的发给他,由于war3的机制,当收到大量的封包的时候,war3会采取加速的形式追赶进度。这里稍微提一下加速的倍率,在我内部测试的时候,如果不产生操作指令(例如一直站着不动50分钟),加速的倍率可以到128倍以上(由于war3限制了最高8倍速,所以这个值也是需要hack修改的),而如果是实战中,比如一局dota,即使我将内部的速度调成128倍,这个速度最高只能是十几倍。那么有没有更好的方案,比如不追赶进度,像dota2那样直接加载不是更好吗?很可惜,当时在我研究的时候发现这个方案不可行,原因是war3并没有保存全局状态的逻辑,也没有从一个状态加载游戏的功能。
在游戏的过程中假如意外掉线,那么重新登录继续进入游戏后可以由系统进行断线重连,快速追赶游戏进度,让你去找战友们继续战斗。
简单说一下断线重连的原理:
断线重连的核心其实就是两个:1)封包回放;2)在合适的时机屏蔽用户的操作。
对于第一点实事上很多平台已经实现,原理比较简单,就是把用户的所有封包原封不动的发给他,由于war3的机制,当收到大量的封包的时候,war3会采取加速的形式追赶进度。
这里稍微提一下加速的倍率,在我内部测试的时候,如果不产生操作指令(例如一直站着不动50分钟),加速的倍率可以到128倍以上(由于war3限制了最高8倍速,所以这个值也是需要hack修改的),而如果是实战中,比如一局dota,即使我将内部的速度调成128倍,这个速度最高只能是十几倍。
那么有没有更好的方案,比如不追赶进度,像dota2那样直接加载不是更好吗?很可惜,当时在我研究的时候发现这个方案不可行,原因是war3并没有保存全局状态的逻辑,也没有从一个状态加载游戏的功能。
再谈谈第二点,这个应该是断线重连的核心问题了。其实这个问题需要注意的很多,比如如何保证在追赶进度的时候用户不能输入操作,同时追赶完进度后要在合适的时机放开限制。
这里只提一下难点,因为war3的封包处理和逻辑计算是在不同的线程的,如果处理不当会导致各种诡异的bug,比如和队友在不同的时空中(进去玩过的朋友应该有这种体会,那种在你的电脑里你已经成神,但是在队友或者其他人那里你早已成鬼,但是你们还可以打字交流。这个bug后来发现是封包发送部分处理的时候有些bug,并没有完整的回放所有封包导致的,并非是断线重连这个解决方案本身的bug)。
上一篇:邓紫棋和张杰是否曾有过恋情?
下一篇:黄石港生态运动休闲公园