[闲聊] 复活邪神3 Bug Level Up -原理

楼主: xiue (蘇)   2016-10-01 12:30:45
PttWeb图文一起看: https://www.ptt.cc/bbs/Emulator/M.1475296249.A.5BA.html
说明BLU原理前, 得先了解RSAGA3有队伍外升级的机制.
每个角色都有既定的初始能力,
但随着游戏进行、战斗次数、队伍内角色成长,
已离队一阵子的角色再次加入, 或从未加入的角色第一次加入,
能力都会比原先/默认的能力高出一些.
要细究队伍外升级, 首先要介绍一个隐藏数据,
日文专栏称为お供LV, 意义类似红白机吞食天地的队伍等级,
http://i.imgur.com/Hqpupzu.png
本文且用队伍等级代称.
RSAGA3队伍外升级的机制是,
伙伴离队会保留离队当时的队伍等级, 姑且命名为离队等级,
从未加入过的伙伴没有离队等级, 所以是0.
角色初加入or再加入时, 他的能力值会是
默认能力值or离队前能力值 + [ ( 队伍等级 - 离队等级 ) 再套入一个公式去算成长 ]
照理来说, 若所有角色离队时都成功保存离队等级
只能进行一般的队伍外升级, 无法办到BLU.
但由于当时科技还不发达, 游戏设计十分计较储存空间.
存盘只有配给队伍外22名的空间储存资料,
(日文专栏是说21个, 我测是22个, 有兴趣请自行测试.)
当离队超过22人, 系统只好“借用”队伍内的内存保存人物资料, 程式话术就是溢出.
然而队内“借用”的内存, 在存盘中不会保留人物的离队等级.
导致RESET再加入时, 该员离队等级以0去计算, 造成BLU.
用图示来说明第一篇文章的实作
队伍内 队伍外
卡塔丽娜 01朱利安 12夏尔
哈曼 ┌ 02胖罗宾 13福布莱特
托马斯 │ 03迈克尔 14妖精
胖罗宾 离队 ┘ 04哈利德 15华特
05莎拉 16温蒂妮
06艾伦 17波士顿
07莫妮卡 18芝琳
08诺拉 19白媚娘
09放浪娘 20杨芳
10保罗 21象
11罗宾 22缪斯
队伍内 队伍外
卡塔丽娜 01朱利安 12夏尔
哈曼 02胖罗宾 13福布莱特
托马斯 离队存盘 03迈克尔 14妖精
资料保留 04哈利德 15华特
05莎拉 16温蒂妮
06艾伦 17波士顿
07莫妮卡 18芝琳
08诺拉 19白媚娘
09放浪娘 20杨芳
10保罗 21象
11罗宾 22缪斯
队伍内 队伍外
卡塔丽娜 01朱利安 12夏尔
哈曼 02胖罗宾 13福布莱特
托马斯 03迈克尔 14妖精
04哈利德 15华特
RESET后失去 05莎拉 16温蒂妮
离队等级 06艾伦 17波士顿
07莫妮卡 18芝琳
08诺拉 19白媚娘
09放浪娘 20杨芳
10保罗 21象
11罗宾 22缪斯
队伍内 队伍外
卡塔丽娜 01朱利安 12夏尔
哈曼 02胖罗宾 13福布莱特
托马斯 03迈克尔 14妖精
再加入造成BLU 04哈利德 15华特
05莎拉 16温蒂妮
06艾伦 17波士顿
07莫妮卡 18芝琳
08诺拉 19白媚娘
09放浪娘 20杨芳
10保罗 21象
11罗宾 22缪斯
换人BLU
队伍内 队伍外
卡塔丽娜 01朱利安 12夏尔
哈曼 02胖罗宾 13福布莱特
托马斯 ┐ 03迈克尔 14妖精
诺拉 │ 04哈利德 15华特
│ 05莎拉 16温蒂妮
↑ 2.后离队 06艾伦 17波士顿
│ ↘ 07莫妮卡 18芝琳
└ 1.先加入 ─ 08诺拉 19白媚娘
09放浪娘 20杨芳
3.重复BLU 10保罗 21象
11罗宾 22缪斯
作者: RuinAngel (左)   2016-10-01 16:35:00
早期游戏真是容易在意想不到的地方有漏洞可钻XD
作者: tonybin (Courage)   2016-10-01 19:11:00
push 旧游戏的另类趣味
作者: protect6090 (山茶花)   2016-10-01 19:15:00
推!先推再看
作者: Cruel2 (君若无心我便休)   2016-10-01 20:02:00
推 蛮有趣的
作者: mune (越来越它了)   2016-10-01 21:38:00
推原理解说
作者: conpo (狮子たちの旗)   2016-10-01 22:00:00
感谢分享!
作者: cloverdiary (四叶草)   2016-10-01 22:03:00
太厉害了!
作者: mydoc (成为守护神)   2016-10-02 01:42:00
虽然很久前就看过 但还是要推的
作者: vaper (风雨飘摇的世代)   2016-10-02 02:07:00
虽然叙述得复杂难懂(了解后其实很简单),不过有写就有推简单说就是队外的"第23个"会借用到队内的Ram位址 → 溢出
作者: os653   2016-10-02 09:29:00
我觉得写的蛮好懂的呀,就爆表漏存资讯导致队友被当新加入
作者: gfneo (gfneo)   2016-10-02 23:03:00
大推
作者: Bschord (bschord)   2016-10-04 01:34:00
玩成精了
作者: thioploca (喵喵狗)   2016-10-04 08:54:00
浅显易懂

Links booklink

Contact Us: admin [ a t ] ucptt.com