この記事は、Pokémon Past Generation Advent Calendar 2023の339日目の記事となります。
スペインROM担当のつっかかりです。
スペインROMの三種の神器を購入しました。
(RSは持ってません😞)
購入して、嬉しい~~ってツイットしているときに、私は気づいてしまいました。
スペインROMのID調整、初期seed公開してる人、いなくね??
気付くの遅い
1から自分で全部やるしかないんですが、今はもう令和です。
神マクロがあるので時間さえかければなんとかなるはずです。
①初期seedを集める
まずは、FR20の初期seedから集めることにしました。
初期seedを集めるマクロをスペインROM用に自分でいじくり倒してなんとかイーブイの性格と実数値を読み取るように調整してなんとかできました。
(性格集めるのめっちゃめんどかった)
モノラル/ヘルプ
モノラル/LR
モノラル/かたて(L=A)
ステレオ/ヘルプ
ステレオ/LR
ステレオ/かたて(L=A)
の6種類をすべて集めました。
2090F~約4000Fぐらい集めたので、キー入力も含めれば初期seedは2000個×6パターン×4キー入力=48000個ぐらい集まりました。
(LGはまだやってません、後でやります)
キー入力の調査については、これでやりましたので、自分で調査する人は参考に
ご厚意で、眼鏡ポッポさんのがらくた2ごうに私が集めた初期seedを公開していただけることになりました。やったね。
ESP_FR_AGB-E02-20 ってやつです
英語に慣れてるからSpanishのSPAが略だと思ったら、自国のEspañaが由来でESPって略なんですね。無知は恥なんですよね
②ID調整をする
ID調整のタイミングも一人でコツコツ集めてたんですが、北米と違って、スペインFRはIDの後ろに謎の ./ があるので、初期設定からちょっとだけキャプチャ位置をずらさないといけないんですよね。しかし、なんと奈都さんが私が渡したキャプチャ位置や、画像などを既存のID調整マクロにESPを追加していただきまして、神です。
(たぶん誤認識があると思うんですけど、気合でなんとかしてください)
Em ID調整自動化とFRLG ID調整自動化をESPに対応させました。バージョンが更新されてますが、既存のフレーム設定が使えなくなるとかは無いです。今後は言語を追加していくだけかと。https://t.co/r7O5XiBEfthttps://t.co/mADzCmcPXW
— 奈都 (@Natu5307051) 2024年10月20日
オーキドの話すタイミングなども少しずつずらさないといけないので、いい感じに調整しました。IDの文字範囲が日本語より狭いので、画像認識が良くズレるんですが、全部気合でなんとかしました。力こそパワー
ID00000が出たフレームを公開しておきます。
~ESP FR20~
Frame1:1249F
Frame2:1265F
OP待機:0.936秒
設定:はやい みない かちぬけ モノラル ヘルプ タイプ1
~ESP LG20~
Frame1:1387F
Frame2:1596.5F
OP待機:8.071秒
設定:はやい みない かちぬき モノラル LR タイプ1
~ESP Em~
Frame1:1904.3F
Frame2:1507.3F
OP待機:9.079秒
設定:はやい みない かちぬき モノラル ノーマル タイプ1
わりと回してたので、このID狙いたいんですけど、ありますか?って声かけてもらえれば、任意のIDにする近道になると思いますので気軽に声かけて(スペイン友達欲しい)
●ID調整してて思ったこと
FRLGについては、設定(主にモノラル⇔ステレオ、ヘルプ・LR・かたて)をいじると、出てくるIDが微妙に変わったので、近いID引けてるのに全然でない!って人はちょっと設定いじるといいと思います。
OP待機時間ランダム機能がマクロについているので、そこで総当たりするのもいいと思います(主にこっちつかってた)
Emは、全然ID00000が出なくて、結局1か月ぐらいずーーーーーっと回してました。やっとでて、安心しました。
③裏IDについて
ツイッターの天才(奈都さん)から海外ROMはSID決定タイミングが違う可能性がある
というお話をいただき、実際にSIDがどの位置なのか確認したんですが…
これが結構な面倒なことになってまして
【FRLG】
Frame3に 1000 入れると 1075 がでる(75遅いので早くする)
Frame3に 2000 入れると 2008 がでる(8遅いので早くする)
Frame3に78592入れると78603がでる(11遅いので早くする)
Frame3に78656入れると78667がでる(11遅いので早くする)
だいたい1000周辺で調べてたら75F遅かったので、あぁ、75F早くすればいいんだと思って、本番で75F早いものを入れたら、全然ちんぷんかんぷんなところが光ったんですよね
原理はよくわかりませんが、1000付近は危険地帯な気がします。
フレームが長くなるとその分若干2,3F遅くなることはついったーの皆様も言っていたのでわかるんですが、1000いれて1075が光るのは謎。しかも再現性あり。(間違ってないか5回ぐらい確認した)
基本は8Fズレで、そこからフレームに合わせて少しずつフレームを足していく方法がいいかも
④実際に乱数してみた
5世代の民なのと、私がはるか昔にニコニコ生放送で色サファリラッキーの乱数をしていたのもあり、理想個体の色サファリラッキーをスペインROMで欲しい!ということになり、やってみることにしました。
まず個体検索。
検索方法については、Hopeさんのアドカレ28日目記事の絵画seed解説記事 にあるとおり、個体検索をします。
初期seedは膨大な数があってかつ、フレームは教えテレビがあるので、大体何でも出せます。(きわどい再計算数のメソッド1狙いたいとかだとつらいかもだけど)
開始seed:F053072F にMethod4ですが理想個体のラッキーがいました。
メソッド4を狙うので、ある程度の再計算がないときついんですが
まぁ、これについては先駆者が色々調査してくれているので、なんとかなるので頑張ることにします。
奈都さんが作ってくれた、神シートのおかげで検索がらくらくでした。神
初期seed:4819 の 680886Fに光る個体がいることがわかりました。
これを、奈都さんが作成した、神マクロを使うことにします。
(デバッグできてないそうなので貼るなって言われそうだけど貼るよ)
実際にマクロを動かしたら、サファリゾーン北エリアへのルートがバグってまして
奈都さんに直接確認したら・・・
固定•野生乱数自動化。バグ多いのは知ってるのは認知してるけど、サファリ (特にビードロ関係) の処理全部消えたまま公開してるではないか。ちゃんと保存しろ。
— 奈都 (@Natu5307051) 2024年11月3日
FRLG固定•野生乱数もRSEレベルにバグまみれなので、修正箇所合ったらまとめて教えて下さい…。捕獲するまでループ等の動作も以前は動作確認できてましたが一部の処理消えちゃってました☆
— 奈都 (@Natu5307051) 2024年11月3日
☆がかわいい
本当に晒しではなく、あとでやる人の参考のために貼っただけです本当だよ
消えちゃったなら、しょうがない。自分でなんとかすることにしました。
マクロに詳しくないし、超絶力技で記事の最後の方に移動ルートと付随する調整をのっけてます、やりたい人はやってみてね
今回、再計算7なので、意図的にメソ4を狙うために以下のことをやります。
・白いビードロを使う(RSEのかざんばいで1000歩でゲット可、FRLG単体ではゲット不可能)
・低レベルの特性:はっこう持ちのヒトデマンを先頭にする。(直前でね)
・スプレーを使う
・エンカウントを振り向き(動かないで別の方向向くやつ)を使う
あとは自転車乗り降りとかいろいろあるみたいなので、足りない場合は色々追加
初期seedによって振り向きエンカでエンカする回数が決まっているので
(いわくだき乱数の初期seedによって岩を砕く回数が決まっているのとおなじ)
今回は何回目でエンカするか確認をしたら・・・
2回目!
競合するものも調査
2416F:FF2D(4回目以降でエンカ)
2417F:4819(2回目でエンカ)【目標】
2418F:ED48(2回目でエンカ)
一個下のフレームと競合しちゃいますが、まぁ許容範囲
①白いビードロを道具の一番上にセット
②むしよけスプレーを道具の2番目にセット
③教えテレビを便利ボタンに登録
④1匹目にレベル33以上のポケモンを配置、2匹目に発光レベル5ヒトデマン
ここまでセットしたら、スプレーを使ってレポートし、マクロ起動!
そうすると・・・
捕獲率が悲しいですが、試行回数で破壊。
偽トロで撮った画質いいバージョン
ちなみに、低レベル発光ヒトデマンとスプレー併用だるいなーって思って使わなかったらメソッド1が普通に出てきたので、注意してください(1敗)
ジュナリさん監修のもと、FRLGについてはストーリー周回もデバックしました。
エメはこれからね
スペインROMも乱数しやすい環境になっていると思われますので、
皆様ぜひ買ってみてください!!!!
そんな感じで終わりです。
閲覧いただきありがとうございました。
以下は力業調整なので、みなくていいです
// サファリゾーンに移動する(北エリアへのルート)
{
Press(LEFT_L, 0.15, 0.10)
Press(LEFT_L, 0.15, 0.10)
Press(LEFT_L, 0.15, 0.10)
Press(LEFT_L, 0.15, 0.10)
Press(LEFT_L, 0.15, 0.10)
Press(UP_L, B, 0.50, 0.10)
Press(RIGHT_L, 0.20, 0.10)
Press(RIGHT_L, 0.15, 0.10)
Press(RIGHT_L, 0.18, 0.10)
Press(DOWN_L, 0.20, 0.10)
Press(RIGHT_L, B, 1.80, 0.10)
Press(UP_L, B, 1.80, 0.10)
Press(LEFT_L, B, 2.30, 0.10)
Press(DOWN_L, 0.10, 0.10)
Press(LEFT_L, 0.15, 0.10)
Press(LEFT_L, 0.15, 0.10)
Press(LEFT_L, 0.15, 0.10)
Press(LEFT_L, 0.15, 0.10)
Press(UP_L, 3.20, 0.10)
Press(A, 0.10, 0.50)
Press(A, 0.10, 1.50)
Press(A, 0.10, 0.50)
Press(A, 0.10, 1.20)
Press(A, 0.10, 0.70)
Press(A, 0.10, 1.50)
Press(A, 0.10, 2.00)
Press(A, 0.10, 1.30)
Press(A, 0.10, 0.70)
Press(A, 0.10, 4.20)
}
==============================
// しろいビードロを使う
If(Flute == "あり")
{
Press(START, 0.10 , 0.30)
Press(DOWN_L, 0.10, 0.10)
Press(DOWN_L, 0.10, 0.10)
Press(DOWN_L, 0.10, 0.10)
Press(A, 0.10, 1.80)
Press(A, 0.10, 0.30)
Press(A, 0.10, 0.80)
Press(A, 0.10, 0.60)
Press(A, 0.10, 0.80)
// スプレーつかう
Press(DOWN_L, 0.10, 0.20)
Press(A, 0.10, 0.30)
Press(A, 0.10, 0.80)
Press(A, 0.10, 1.00)
Press(B, 0.10, 1.20)
// はっこうもちを先頭に
Press(UP_L, 0.20, 0.20)
Press(A, 0.10, 1.80)
Press(A, 0.10, 0.30)
Press(DOWN_L, 0.20, 0.10)
Press(DOWN_L, 0.20, 0.10)
Press(A, 0.10, 1.00)
Press(DOWN_L, 0.40, 1.50)
Press(A, 0.10, 1.00)
Press(B, 0.10, 1.20)
Press(B, 0.10, 0.50)
Press(DOWN_L, 0.05, 0.15)
{
Wait((Frame2)/59.7275)
Press(LEFT_L, 0.10, 0.10)
Frame2 = Frame2 - 12
}