英雄联盟破败王BUG解析

英雄联盟英雄破败之王-佛耶戈在登陆游戏的初期有个很有意思的bug,由黑暗封印触发在这里插入图片描述
破败王开局购买黑暗封印,一级团击杀敌方英雄,获得2层荣耀,即获得6点法强。然后触发被动技能,
在这里插入图片描述
变成敌方英雄被敌方防御塔击杀,按理论上讲,此时荣耀数应该为0层,获得0点法强,但是实际上,死亡后的破败王获得了65534层荣耀,即131068点法强。开局3分钟,游戏基本就结束了。
在这里插入图片描述
分析65534由来,即获得2层荣耀后,按道具描述,死亡后减去4层,即-2层,游戏里不应该存在-2,即应显示为0层。其他英雄均未显示出-2的bug。但是破败王是个特殊的英雄,死亡后变成了对方的英雄,在这里应该是游戏的设计师忽略了这一点,变成敌方英雄后的-2未被展示为0,但是前台也不能展示-2,非要展示为非负数应该展示为什么呢,答案是:1111111111111110(8位-2的原码)=1111111111111110(32位65534的补码)。简单的说就是,己方英雄程序员展示荣耀层数用的原码,敌方英雄程序要展示黑暗封印用的补码。描述下这个过程,即己方破败王杀敌,获取2层荣耀,展示为原码2;然后变成敌方破败王后,荣耀层数-4,变为-2,但此时,-2在敌方破败王这里已经展示为了-2的补码65534,变回己方破败王后即获得了65534层数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值