admin 发表于 2020-1-13 19:28:03

关于多人游戏中怪物Nodrop特殊算法的简单说明

【1PP锁血】
游戏为1PP时先把需要杀的怪物都看一遍,被看过的全部怪物,生命/经验值/伤害等等数值,将被固定为单人难度,此时再进入其他玩家,这些数据也不会再发生变化。


【Nodrop算法】
[] 1PP锁血后不回城,此时视野内有锁血怪物,然后再进入其他玩家,锁血后怪物的Nodrop按照单人游戏(1PP)计算。
[] 1PP锁血后回城,此时视野内无锁血怪物,然后再进入其他玩家,锁血后怪物的Nodrop按照正常多人游戏计算。




【Nodrop测试】
[] 在标注为蓝色的代码处添加断点,服务端执行到断点处时, edi=参与nodrop计算的人数。


[] 1PP锁血后不回城,此时视野内有锁血怪物,然后再进入其他玩家后开始杀怪清场。此时edi=1,然后服务端开始跳转执行单人Nodrop算法。


[] 1PP锁血后回城,此时视野内没有锁血怪物,然后再进入其他玩家后开始杀怪清场。此时edi=N,N即实际玩家数,然后服务端开始跳转执行多人Nodrop算法。


【简单结论】
[] 玩家视野会导致已锁血怪物的Nodrop重置。
[] 下图紫色部分代码的edi值,表示服务端执行Nodrop计算时的参与人数,单人则edi=1。



页: [1]
查看完整版本: 关于多人游戏中怪物Nodrop特殊算法的简单说明