看板 Rockman 關於我們 聯絡資訊
------------為了方便查閱,先把重點放最上面-------------- ┌────┬───┬─────┬─────┬────┐ │分項積分│8 │4 │2 │1 │ ├────┼───┼─────┼─────┼────┤ │過關時間│1min內│1m~2min內 │2m~5min內 │5min以上│ ├────┼───┼─────┼─────┼────┤ │受傷總量│0~15 │16~31 │32~63 │64以上 │ ├────┼───┼─────┼─────┼────┤ │殺敵數目│0~39 │40~79 │80~149 │150以上 │ ├────┼───┼─────┼─────┼────┤ │最大輸出│8以上 │7~6 │5~4 │3~1 │ ├────┼───┼─────┼─────┼────┤ │毒發次數│0 │1 │2 │3以上 │ └────┴───┴─────┴─────┴────┘ 另外直接引用巴哈姆特BBS精華區的積分→等級換算 (每份攻略都一樣) Rank 降級 維持 升級 MEH 0-31 32-40 PA 0-31 32-39 40 GA 0-23 24-35 36-40 SA 0-19 20-31 32-40 A 0-17 18-31 32-40 B 0-14 15-27 28-40 C 0-11 12-19 20-40 E 0-15 16-40 -------------------------------------------------------- 好,既然有了記憶體位址之後, 我們終於可以確實的分別指定進入關卡的等級,指定五項數據之後, 讓他回報跑完關卡的等級。 只要我們跑一關...不對,這還是太累了。 ----- 仔細檢查評價變化的瞬間,都發生在打完boss之後, Now Loading消失,要跑出結算音樂的那一刻。 (對,我又是一個一個Frame去對照了...) 也就是說,只要在那一刻之前即存,改好記憶體,讀取存檔, 然後馬上就可以讀取記憶體格子看到結果。 當然這整件事情也可以通通寫成Script自動輸出 http://pastebin.com/U3zqmUNm 不過總之先檢查一下這些數值是怎麼被分段的 -------- 時間: 測試 "(0~9)分59秒98",只取評價變化的部分上下列出來 ==================================== 進入 過關 消耗時間 受 殺 輸 毒 評價 評價 傷 敵 出 發 ==================================== PA MEH 0m59s98 15 39 8 0 PA PA 1m59s98 15 39 8 0 ==================================== GA PA 1m59s98 15 39 8 0 GA GA 2m59s98 15 39 8 0 ==================================== B A 4m59s98 32 39 8 0 B B 5m59s98 32 39 8 0 ==================================== 從這裡可以猜出?[1;36mA1min內,1min~2min內,2min~5min內,5min以上 是不同的區間 公式大家給的方式都是8/4/2/1, 但是之前有很多評價攻略寫 2min有滿分8分, 假設升等條件沒有寫錯,這會造成矛盾: GA GA 1m59s98 15 39 8 1 後四項分數應該是8/8/8/4 如果2min有滿分8分,這樣就會36分升PA 可是他沒有。 SA SA 1m59s98 15 39 8 2 後四項分數應該是8/8/8/2 如果2min有滿分8分,這樣就會34分升GA 可是他沒有。 區間的部分有盡可能以min為單位作對照, (鎖殺敵、輸出、病毒三項滿分,其它可變) 有發現2'59"58 3'59"58 4'59"58的行為是一樣的,這應該是2分的區間。 ------------------------------------------------------------- 受傷 測試 "16n-1,16n,16n+1 ",只取評價變化的部分上下列出來 ==================================== 進入 過關 消耗時間 殺 輸 毒 評價 評價 敵 出 發 ==================================== PA MEH 0m59s98 15 39 8 0 PA PA 0m59s98 16 39 8 0 ==================================== GA PA 0m59s98 31 39 8 0 GA GA 0m59s98 32 39 8 0 ==================================== B A 2m59s98 63 39 8 0 B B 2m59s98 64 39 8 0 ==================================== 很明顯的,區間分別是0~15(8分) 16~31(4分) 32~63(2分) 64以上(1分) 之前有很多攻略寫0~16 17~32 .... 這些都會在計分出問題。 -------------------------------------------------------------- 殺敵數 測試 39 40 41 79 80 81 149 150 151 ==================================== 進入 過關 消耗時間 受 輸 毒 評價 評價 傷 出 發 ==================================== GA PA 0m59s98 15 39 7 0 GA GA 0m59s98 15 40 7 0 ==================================== GA GA 0m59s98 15 79 3 1 GA SA 0m59s98 15 80 3 1 ==================================== GA GA 0m59s98 15 149 5 1 GA SA 0m59s98 15 150 5 1 ==================================== 也很明顯,區間分別是0~39(8分) 40~78(4分) 80~149(2分) 150以上(1分) 之前有很多攻略寫0~40 41~80 81~150.... 這些都會在計分出問題。 ------------------------------------------------------------------ 最大輸出 ==================================== 進入 過關 消耗時間 受 殺 毒 評價 評價 傷 敵 發 ==================================== GA PA 0m59s98 15 39 8 1 GA GA 0m59s98 15 39 7 1 ==================================== GA PA 0m59s98 15 39 6 0 GA GA 0m59s98 15 39 5 0 ==================================== GA GA 0m59s98 15 40 4 2 GA SA 0m59s98 15 40 3 2 ==================================== 這個在數據上,攻略都沒有問題, 有問題的是「這對所有敵人都有效」─這格記憶體也會記錄對小兵的輸出。 有很多攻略都寫對Boss的輸出,但是其實對小兵的輸出更高更有優勢。 所以X在這一項是很佔優勢的,集氣炮炸下去就是。 (不過我沒有測蓋亞,不期不待...) --------------------------------------------------- 病毒 ==================================== 進入 過關 消耗時間 受 殺 輸 評價 評價 傷 敵 出 ==================================== GA PA 0m59s98 15 40 8 0 GA GA 0m59s98 15 40 8 1 ==================================== GA GA 0m59s98 15 40 3 1 GA SA 0m59s98 15 40 3 2 ==================================== GA GA 0m59s98 15 40 4 2 GA SA 0m59s98 15 40 4 3 ==================================== 這個在數據上,攻略也都沒有問題, 有問題的是「這是毒發才會記錄」有不少攻略寫"碰到的病毒數量",這不影響。 所以跑關過程遇到病毒也就別刻意躲了, 是要去哪裡找四個病毒來毒發阿。 大概只有No Data 2注意一下就好,要真的搞到四個還真不容易。 -------------------------------------------------------------- 好,列出了一套規則,不過這套規則到底對不對呢? 為了檢查這個規則的正確性,套用上面的Lua Script, 對八個等級 {"MEH","PA","GA","SA","A","B","C","E"} 四種過關時間 {"0m59s98","1m59s98","4m59s98","5m59s98"} 四種受傷總量 {15, 31, 63, 64} 四種殺敵數目 {39, 79, 149, 150} 四種最大輸出 {8,6,4,3} 四種毒發次數 {0,1,2,3} 用前面提到的Script, http://pastebin.com/U3zqmUNm 跑所有組合的結果:共8x4x4x4x4x4=8192項組合 讀取結算前的即時存檔,寫入記憶體指定數值組合, 等5個frame讓他結算,然後讀取結算後的實際等級, 最後把這些都記錄下來, 同時套用以上規則,自行判斷出一個結算後的理論積分, 套用攻略的積分表換算成理論等級, 最後檢查實際等級是否與理論等級相同(TRUE/FALSE) 輸出結果,8192個TRUE,全數符合! https://goo.gl/a9P8GH ---------------------------------------------------------------- 結論,應該沒有什麼根據等級調整評分標準的問題。 每個項目的得分標準應該修正成向上面那樣。 除此之外,許多攻略對最大輸出和毒發次數有所誤解。 以上。 -- ███◣ ◢██◣ ◢██◣ █ ◢█ ◣ ◢ ◢██◣ ◣ █ █ ██ █ ██ █ ██ █◢█◤ █◣◢█ █ ██ █◣ █ █ ██ █ ██ █ ██◤ ████ █ ██ ██◣█ @ ptt.cc ███◤ █ ██ █ ██◣ █◥◤█ ████ ████ █◥█◣ █ ██ █ ██ █◥█◣ █ ██ ◥█ 鴉片(Append) ◥█ ◥██◤ ◥██◤ █ ◥█ █ █ █ ██ twitch.tv/append -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 81.158.81.134 ※ 文章網址: https://www.ptt.cc/bbs/Rockman/M.1448581753.A.07E.html
mdkn35: @@ 真是專業 11/27 09:52
Siu: 感到這世上的謎少了一個 (雖然我賺晶片也不會就是了) 11/27 11:08
superrockman: 原PO好認真......竟然算的到這麼細的地方 11/27 11:15
ainamk: 我有點好奇第一篇no data 2升不上去問題點在哪邊_A_ 11/27 11:17
ainamk: 該不會是混亂壁畫W怎樣都沒辦法打出夠高的損傷吧 11/27 11:18
很好,可能是我標示的不夠清楚,直接拿出來算一下 : 於是辛苦的打到3分鐘內KO,確實避開所有病毒,壁畫的每顆眼睛都用剋武集氣, : 傷害15以內,殺敵數39以內,這樣...看起來應該有滿足條件。 三分鐘內KO: 2min~5min內 2分 傷害15以內 8分 殺敵數39以內 8分 每個眼睛都用剋武集氣 傷害8 8分 確實避開所有病毒,毒發狀態0次 8分 2+8+8+8+8=34 GA升級PA條件是36~40分,無法升級,維持GA 會有這問題就表示"用剋武打BOSS才能在隱藏的輸出評價拿到高分"這個觀念深植人心。 這是錯的。用集氣炮打個路上的小兵,輸出評價就直接滿分了。 需要擔心這個的只有Dynamo,沒有小兵,一定要旋風集氣或Nova。 Nodata3獵鷹和蓋亞炮打小兵有多少輸出我沒測,但是giga打Zero都有8。
superrockman: 綠眼模式比較麻煩 他亂丟的子彈(?)是可以殺的 也會 11/27 11:32
superrockman: 計算KO數...... 11/27 11:32
ainamk: 綠眼的子彈會被算殺敵數這點很早就知道了 ND2的盲點之一 11/27 11:49
emulators: 我現在覺得不想研究這麼麻煩了... 11/27 12:14
欸...我以為Lua Script在模擬器上的應用是你會有興趣的東西耶, 前天發現有好多模擬器都支援Lua Script, 這表示可以用來做很多奇妙的金手指輸入或數據檢測之類的
gericc: X5的等級評價難度很高 11/27 14:05
Append: 超過兩分鐘,評價只有兩分,總分34,GA升PA要36 11/27 15:42
Append: 然後"打出高的損傷" 因為關卡裡有很多小怪 這非常簡單 11/27 15:48
Append: 更何況刺球打盾兵傷害10 一開始就已經解決問題了 11/27 15:48
因為對時間的區分還是有一點心虛 所以從(0~9)min59sec98十種組合搭配其它各種組合,共20480項, 全部計算一遍──20480個TRUE,全部符合,所以時間的區分方式應該就是這個規則。 ※ 編輯: Append (81.158.81.134), 11/27/2015 18:07:19
ainamk: 我突然想到一個問題→直接找積分的位址行不通嗎? 11/27 18:22
Append: 他似乎沒有真的算出這個積分存進記憶體。找不到這個值。 11/27 18:27
Append: 他如果實作寫(a+b+c+d+e)>35之類的,並不需要真的存起來 11/27 18:29
Append: 當然他說不定其實有存,只是我沒找到,不過這很難找 11/27 18:30
h1236660: 太好了,解開一個世紀之謎 11/27 19:14
h1236660: 不知為何之前好像沒人研究過的樣子 11/27 19:14
h1236660: 前人也不算弄錯吧,因為沒人特別研究所以就以為是那樣 11/27 19:15
h1236660: C社有沒有放出公式?大全書也沒寫 11/27 19:16
emulators: 我玩模擬器只是想要玩到我想玩的遊戲而已啊xd 11/27 19:34
ainamk: C社連MEH都沒講是什麼了_A_ 11/27 20:28
Append: 我猜C社大概有放出來8421這四個數字 和五項沒解釋的評分 11/27 20:43
h1236660: 有人知道MEH啥意思嗎 11/27 20:43
Append: 其他條件八成是被猜出來的? 然後因為當初沒辦法像我這次 11/27 20:44
Append: 作的暴力嘗試 所以即使想要驗證也會搞得很辛苦 11/27 20:44
Append: 我目前聽過最合理的說法是Master Irregular Hunter 11/27 20:45
Append: 相對的 美版會寫MMH 可能是Master Maverick Hunter 11/27 20:45
Append: 那個E可能是取Irregular的發音 11/27 20:45
ainamk: 59'98"這個我在想會不會是把「以下」跟「未滿」搞混的結果 11/27 22:28
ainamk: 原本真的是打算切兩分鐘以上和未滿 結果判定式切錯了 11/27 22:29
h1236660: 這樣一說感覺很合理 11/27 22:53
h1236660: 也許由於X5評價系統本來就設得不好,尤其是時間 11/27 22:54
h1236660: 所以乾脆就不解釋評分條件,叫玩家和出版社自己去猜... 11/27 22:54
Append: 我其實沒看懂ainamk後面說的這句 11/28 00:03
Append: 59'98只是因為他用frame計算時間 59frame就是0.98333秒 11/28 00:05
Append: 這個時間是我故意卡出來表示幾分鐘內 11/28 00:06
RuinAngel: 美版也是MEH吧?真的不知道啥意思XD 11/28 07:11
Append: https://youtu.be/FghTULc--bE?t=143 結算時跳MMH 11/28 08:05
Append: 同影片2:49,存檔時跳MEH。然後你就知道這Capcom.... 11/28 08:06
ainamk: R20+5大訪談的時候好像有玩家問MEH是什麼 可是沒人回答XD 11/28 10:45
RuinAngel: 難怪我就記得也是MEH啊我都玩美版XD 11/28 21:49
Append: 就...翻譯改一半... 11/28 22:43
os653: 寫論文嗎XD 12/01 10:08
ColdP: 太感動了, 像X5這樣的老遊戲還是有人願意研究當年的謎題並 12/01 17:49
ColdP: 寫成文章! 想當初為了拼評價, 基本上陸上的小兵都是能閃則 12/01 17:50
ColdP: 閃, 根本不會想到要去殺他取最大傷害。 12/01 17:51
ColdP: 不過實務上除了Dynamo外有機會拿MEH的就只有No Data 3和 12/01 17:52
ColdP: 薔薇關了。 12/01 17:55
Append: 我覺得關鍵是沒有人想到對小兵的最大傷害有計分 12/01 18:35
gfneo: 大推 12/05 10:47