作者xiue (蘇)
看板Emulator
標題[閒聊] 復活邪神3 Bug Level Up -原理
時間Sat Oct 1 12:30:45 2016
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繆斯
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.224.214.141
※ 文章網址: https://www.ptt.cc/bbs/Emulator/M.1475296249.A.5BA.html
推 RuinAngel: 早期遊戲真是容易在意想不到的地方有漏洞可鑽XD 10/01 16:35
推 tonybin: push 舊遊戲的另類趣味 10/01 19:11
推 protect6090: 推!先推再看 10/01 19:15
推 Cruel2: 推 蠻有趣的 10/01 20:02
推 mune: 推原理解說 10/01 21:38
推 conpo: 感謝分享! 10/01 22:00
推 cloverdiary: 太厲害了! 10/01 22:03
推 mydoc: 雖然很久前就看過 但還是要推的 10/02 01:42
推 vaper: 雖然敘述得複雜難懂(了解後其實很簡單),不過有寫就有推 10/02 02:07
→ vaper: 簡單說就是隊外的"第23個"會借用到隊內的Ram位址 → 溢出 10/02 02:09
很複雜嗎, 我改一下好了.
※ 編輯: xiue (36.224.214.141), 10/02/2016 08:47:25
推 os653: 我覺得寫的蠻好懂的呀,就爆表漏存資訊導致隊友被當新加入 10/02 09:29
推 gfneo: 大推 10/02 23:03
推 Bschord: 玩成精了 10/04 01:34
推 thioploca: 淺顯易懂 10/04 08:54