昔のポケモンの裏技を語る【アネ゛デパミ゛】 15
■ このスレッドは過去ログ倉庫に格納されています
とりあえず意外にデータって飛ばねーよな。
質問の前にまず↓ ま と め サ イ ト↓を見れ。
■GB版ポケモン裏技まとめサイト
ttp://pokemonbug.oh.land.to/
■pokemonbug @ ウィキ
ttps://www49.atwiki.jp/pokemonbug/sp/pages/5.html
■fifth氏のサイト
ttp://web.archive.org/web/20071216143227/geminism.hp.infoseek.co.jp/index.html
■ポケモン研究所
ttp://web.archive.org/web/20071101112118/www.geocities.com/TimesSquare/Castle/5553/pm.html
■不自由帳 ポケモンのバグ技
ttp://goki.s17.xrea.com/poke.html
■Pokemon Analysys
ttp://psense.lib.net/Analysis/RGB/
ttp://psense.lib.net/Analysis/AuAg/
ttp://www.google.com/search?hl=ja&c2coff=1&q=teamPA&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_ja
■ネオ・グリーン
ttp://g-modoki.s59.xrea.com/
■Pokemon Bug Litches
ttp://www.geocities.jp/kattempla/pokebug/index.html
●前スレ 昔のポケモンの裏技を語る【アネ゛デパミ゛】 14
http://medaka.5ch.net/test/read.cgi/poke/1477904768/ >>393
その後ネットで色々調べてみたが、ポケモンの技や努力値は暗号化されているから、コードを単純に作るには結局性格値及びIDの調整が絶対必要になりそうだ
でも理論上は性格値とID値を一致させる、即ちRSで出た適当な表裏IDと同じ値となる性格値のポケモンを孵化乱数調整で入手するだけでいいということなので、今現在行われている研究でのID調整とかよりは遥かに簡単そうだ
問題は、その努力値などを記録している48バイトデータを参照するバグ技が存在するかどうかだな
ボックス内を参照するバグ技は20種程存在するとのことだが、上手いこと努力値を読み込んで且つ戦闘で使用出来る技が果たして1つでもあるのか… >>398
ざっと調べてみたけど、良い感じに48バイトデータを読み込めそうなのは0x0D1Dくらいだな
ボックス12の28番目のポケモンの48バイトデータ(0x020304C0)を読み込めるが、最大PPが0で技名が約150字か…
どうなんだ?
理論上は該当位置に性格値=ID値且つmod 0x18=0xC〜11のポケモンを配置すれば努力値と格好良さ・美しさで作ったコードを読み取れる >>399
この理論は正しかった
実機Emで任意コード実行成功した 久々にザロクバグの事を思い出して来てみたら実機で任意コード実行できた人が居るとは…
こちらも実機で試してみたいんだけど参考になるサイトかコミュニティはあるだろうか
ザロクバグの知識が数年前のダブルコラプション辺りで止まってるもんで ポケモンBBSだったか、それにしても凄い
ざっくりとした手順は
[1]ボックス12の28番目に条件を満たすポケモンを配置
[2]適当なマップで戦闘
[3]技0x0D1Dを使用してスクリプト実行
[4]戦闘終了
[5]あなぬけのひもを使用
で合ってる?
技0x0D1Dは適当に作るとして、ボックス配置用のポケモンの性格値=ID値でなければならない理由って何なんだろう
H努力値〜コンディションに書き込むコードは、従来のPC内アイテムを参照する方法のコードを真似つつ適宜変えていけば良いんだろうか >>403
https://pokeglitch.game-info.wiki/d/%B7%EA%C8%B4%A4%B1%A4%CE%C9%B3%28%A5%DD%A5%B1%A5%E2%A5%F3%BB%C8%CD%D1%29
参考サイト
ここのコメント欄に私が行った方法をざっと書いておいたので興味があったら是非
性格値=ID値にするのは、>>398で書いたように、ポケモンの努力値や技などのGAEMブロック内データはメモリ上、性格値(PID)及びID値(SID-TID)とXORされて暗号化されているから、この暗号化を無効化する為
PID ^ SID-TID ^ 暗号化前データ = 暗号化後データ
即ち、PID = SID-TIDの時
暗号化前データ = 暗号化後データ 現時点では性格値=ID値にすることで暗号化を無効化するようにしているが、逆にこの暗号化の仕組みを利用して努力値振りを楽にする方法を調査した
結果、性格値=ID値^0x08006000とするのがベストであると落ち着いた
[最果ての孤島行き]
メモリ上の値(目標値)
・0x020304C0:03 11 05 03 02 FF 00 08
・0x02030510:38 20 00 02 24 E0
・0x02030560:1A 30 27 49 24 E0
・0x020305B0:08 60 F0 BD
・0x02030600:28 57 06 02
暗号化前データの値
^60 ^08 ^60 ^08
・0x020304C0:03 71 05 0B 02 9F 00 00
・0x02030510:38 40 00 0A 24 80
・0x02030560:1A 50 27 41 24 80
・0x020305B0:08 00 F0 B5
・0x02030600:28 37 06 0A
必要努力値コンディションの値
H A B S C D 格 美
・0x020304C0: 3 113 5 11 2 159 0 0
・0x02030510: 56 64 0 10 36 128
・0x02030560: 26 80 39 65 36 128
・0x020305B0: 8 0 240 181
・0x02030600: 40 55 6 10
性格値=ID値^0x08006000とすることで、上記のようにコンディション調整は一切必要なくなり、4匹目のポケモンの努力値合計を510以内に抑えることが出来る(性格値=ID値だと合計533になるのでダブルコラプション必須だった) >>405
うわぁ…折角スペースで間隔調整したのに滅茶苦茶になった… >>404
重ね重ねありがとう
というか解説ブログの人か!分かり易いんでよく参考にしてます
EmのID値が ID値 % 0×18 = 0×C〜11 を満たすのならば、わざわざRSで孵化乱数せずともEmのみで該当性格値の個体を用意できそうで楽そう
というかスクリプト実行時に、ボックス1匹目の個体でジャンプ先のアドレスを自由に指定できるなら、
ブロック内データの最初がEにならない性格値を持つ個体にも応用できそう
頓珍漢な事を言っていたら申し訳ない >>407
確かにコード用ポケモン1匹目の個体で任意のアドレスに飛べるよう指定出来るが、肝心のこの1匹目のデータを読み込むバグ技のアニメーションが限られているので、ブロック配列がEから始まる個体は絶対必要になる
それならば、態々別の性格値のポケモンを用意し別のアドレスを指定するよりは素直にこの1匹目を使い回した方が楽かと思う
また、Emで特定の性格値を狙うことは非常に困難(性格値で個体検索出来るツールが一切存在しない為)なので、余程豪運の持ち主でもなければ性格値=ID値(^0x08006000)を満たす性格値のポケモンを見つけることは出来ない
>>405
sage方ミスってるし…w 遅レスになってしまうが何から何まで詳しくありがとう>>408
エメラルドで特定の性格値を引き当てるのが難しいのは初耳だった
RS孵化乱数はやった事なかったからこの機会に挑戦してみます >>409
ツールさえあればEmのみでも見つけられると思うんだけどね
でも恐らく、「RS孵化乱数調整の方が楽だ」ってなると思われる
入力フレーム確認用に孵化するパッチールがそのまま流用出来るしね
今ブログにやり方纏めて動画上げようと色々用意しているけど、先に軽く個体情報などを書いておく
<ID調整>
・ID:表42070裏11155(0x2B93A456)
・初期シード:0x5A0
・待機時間:3001F
<孵化乱数調整>
・性格値:0x2393C456
・PID%0x18=0xE(EAGM)
・性格:無邪気
・LID待機時間:48302F→48916F
・生成判定:57
・HID待機時間:44359F→44946F
・個体値:後-1-後-13-先-2
<ボックス配置:努力値調整>
12/28:H3 A113 B5 S11 C2 D159
12/29:Hxx A64 S10 C36 D128
12/30:H26 A80 B39 S65 C36 D128
13/1:H8 B240 S181
13/2:H40 A55 B6 S10 >>410
南の孤島:xx=9
最果ての孤島:xx=56
誕生の島:xx=58
臍の岩:xx=66
殿堂入り部屋:xx=11且つ12/30のH16 Em任意コード実行の動画撮った
興味のある方ご視聴あれ
https://youtu.be/ITdf_zKS0SI 久しぶりぶりに来てみたら新発見されてたのか…すごいな、おつかれさん
俺のGBAとGBASPはもうすっかり壊れてしまって起動すらできないから羨ましい
吸い上げてエミュプレイダルいし つ「ゲームキューブ」
器用な奴なら数台もてば同時に何匹でも乱数調整できるぞ >>410
すげー話題になってるじゃないですか!
お疲れ様です 任意コード作成に詳しい方、「0x5先にジャンプする(今いるアドレスの+0x5番地に分岐して処理を実行する)コード」の値をご存知ありません?
例えば26 E0なら0x50先に、24 E0なら0x4C先にジャンプすることになるんだけど、これはどういう仕組みなんでしょうか?(ジャンプする距離÷2−2?) それはCPUのThumbモードアセンブリのオペコードね
XX E0 の E0 っていうのが b というジャンプ命令の一種で
XX がオペランドになる (b命令の場合は自分で言っている通り距離を表す)
ついでに言うとGBAのCPUは基本的にROMからリトルエンディアンで読み込むので
実際にCPUに読まれた後の並びは E0 XX になる
でジャンプする距離に関してはThumbモードは16bit = 2byteごとの処理なので
1h増やすごとに倍の分飛ぶわけだ
ただ 00 E0 でも次に進むわけじゃなく2h先に飛ぶのでそこは注意
hexとオペコードについてはno$gba使って実際に値を打ち込むとすぐ結果が表示されるからそれ使うと楽だよ >>421
実は数日前に知恵袋でも同じ質問していたりするんですよね
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13209991343?__ysp=MHg1IOWFiOOBq%2BOCuOODo%2BODs%2BODlw%3D%3D
でも真面な回答が得られなかったので、助かりました
ありがとうございます
オペランドの値はジャンプしたい距離÷2−2で合っているのでしょうか?
これだと0x5含め奇数先にジャンプすることは出来ないということになりますが、どうすれば良いでしょうか? 知恵袋でこんなマニアックな質問しても回答得るのは厳しいだろうw
奇数番地にジャンプというのはGBAの場合無理(のはず)
理由は前述の通り16bitか32bitでの処理が前提の設計だからとしか言いようがない
計算式としてはたぶんそれで合ってると思うけど
先に書いたようにno$gbaていうエミュでいろいろ試したほうが早いよこっちもそんな詳しいわけじゃないし
一応計算せずにオペランドで指定した番地にジャンプさせる bx blx という命令もあるけど
これはARMCPUの場合は↓にもある通り命令セットを切り替えるためのものでしかない
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0204ij/Cihfddaf.html
GBAの場合は0bit目を見て1ならThumb(16bit)になり、実際のジャンプ先は指定番地から1h引いた所に飛ぶ
余談だがこれは自分がGBAのアセンブルを調べ始めた時にわかってなくて引っかかったからよく覚えてるよ ん、でも知恵袋の回答見てみたらプログラムカウンタで指定してみって書いてあるな
もしかしてそれかリンクレジスタに直接飛ばしたい値書けばジャンプさせられるのかもしれん
試したことないから適当ですまん PCを直接書き換えても、下1bitは無視されるかCPUモードを変えるだけで終わりそう
仮に通ってもバスエラーで落ちそうな気がする >>423
昨夜no$gbaをDLしてみたんですけど、ロムデータを持っていないので使い方がよく分かりませんでした…
0x5先が無理なら偶数の0xE先になら飛べますかね?
05 E0とすれば理論上は可能0xE先にジャンプとなるはずですが
因みに今やろうとしてるのは穴抜けの紐(穴を掘る)ワープの任意コードをボックスの名前データを使って記述する研究です
0x5先にジャンプなら次のボックス名に、0xE先にジャンプなら次の次のボックス名に飛び、1ボックスにつき8文字(8バイト)まで使用可能なので、ボックス名だけで十分コードが記述出来る寸断です >>426
なんか色々誤字ってしまった…
「可能」は余計な予測変換、「寸断」は寸法の打ち間違い あ、やべぇ
1文字だけ使えない記号が…(F0=:)
タイプ:ヌル的なノリで普通に使えるものだと思ってた…
この話は無かったことに
素直にNPC交換ポケモンの内部値を調べることにしよう… >>428
たった1文字使えないだけならどうにかなるのでは(GB任意コード勢並感)
と思ったけどGBAはGBと違って2バイト命令が多かったりするのかな?
だとしたら1文字使えないだけでも致命傷になりそう >>430
F0 BD(0xBDF0)
っていう命令(POP{Rlist,PC}って命令らしいが意味はよく分からない)があるんだけど、これのF0に該当する文字「:」が使えないみたいなんですよね…
Register listがF0ってことになるらしいのだが、まずRegister listが何なのか分からんから下手に変更出来ない… >>431
たった一命令使えないだけならなんの問題も無いと思う
実際GBだと入力できない文字なんてザラだから入力できる文字だけでやりくりしてたのよ
しかしGBAが2バイト命令が基本で「511種類以上もの命令が使えなくなる」なんていう状態なんだったらどうしようもないと思う r0-r7の指定したレジスタとPCをまとめてpopする命令でしょ?F0だとr4-r7を指定することになる
NO$GBAのヘルプに全部書いてあるから読むがよい >>433
debuggerの方DLしたらエディタっぽいこと出来ました
確かにメモリビュアー的な所に打った値が上の部分に反映されて具体的なニーモニックとかが表示されますね
コレハイイモノダ
このPOP命令ですが、R4〜R7,PCを同時ではなく
30 BC C0 BD(0xBC30,0xBDC0)
と分けても同じ結果が得られますかね?
同時じゃないとダメ(例えば0xBC30の命令が次の0xBDC0の命令で上書きされ、無かったことにされる)とかだったら終了ですが… >>435
GBAのことは知らないけど使えない命令を別の命令で代用するのはGBの任意コード実行では基本テクニックだったし大丈夫じゃない?
そして調べてみたら16bit命令モードと32bit命令モードがあるのね
これじゃあ1文字使えないだけでも致命傷たりえそう 勝ち申した
https://img.pokemonbbs.com/upl/23/1562900503-1.jpg
https://img.pokemonbbs.com/upl/23/1562900503-2.jpg
・0x02030400:03 31 18 03 02 FF 00 08
・0x02031830:38 20 00 02 01 E0 FF FF FF
・0x02031839:00 1A 30 03 49 00 E0 FF FF
・0x02031842:08 60 30 BC C0 BD FF FF FF
・0x0203184B:00 08 57 06 02 FF FF FF FF
・ボックス12/26:H3 A81 B24 C2 D159 S11
・ボックス1:「ぎみ いあl」
・ボックス2:「 はぃうべ l」
・ボックス3:「くタぃBFC」
・ボックス4:「 くキかい」 >>435
ていうかこの件のアンサーが>>429のぼんじりさんのツイートに書かれていたという…
まあ自分で気付いて自分で試してみることも大事だし…ね?
後は0x02030400に配置するポケモンを非乱数調整で調達する方法を見つけるだけだな
一応、経験値をEXP65536+αにし鳴き声だけ覚えさせたプラプラに努力値をH92 A43と振り、ダブルコラプションをして0x2B5Cを覚えたラフレシアを作り、
そのラフレシアをコピーして努力値コンディションを調整すれば、乱数調整不要で合理的にバグ技もボックス配置用ポケモンも用意出来る計算 >>439
せっかちプラスル
0x0000006F
@元気の塊
鳴き声/なし/なし/なし
H92A43 格5美5 愛30 賢5 逞5 毛艶10
EXP125025(Lv50)
↓ダブルコラプション
臆病ラフレシア
0x4000006F
0x2B5C/なし/なし/0x0505
H97A1 B25S0 C97D232格1美0
EXP0(Lv0)
↓調整
アロマセラピー/0x2B5C/痺れ粉/メガドレイン
H96A44 B25S3 C97D222格1美8
EXP1以上(Lv1以上)
美8…ウブの実をNPCと3人で混ぜて(rpm7.03〜23.30※重要)出来る灰色ポロックを1つ与える
これでどうだ ・0x02030400:03 0D 18 03 02 FF 00 08
・0x0203180C:38 20 00 02 01 E0 FF FF FF
・0x02031815:00 1A 30 03 49 00 E0 FF FF
・0x0203181E:08 60 30 BC C0 BD FF FF FF
・0x02031827:00 E4 56 06 02 FF FF FF FF
・ボックス1:「ぎみ いあl」
・ボックス2:「 はぃうべ l」
・ボックス3:「くタぃBFC」
・ボックス4:「 pカかい」
>>440のラフレシアをボックス12の26番目に置き、ボックス1〜4の名前を上記の通りに変更する
そして戦闘で0x2B5Cを使用し穴抜けの紐(穴を掘る)
理論上はこれで行けるはず >>441
なんか成功するまでにメチャクチャ時間かかったけど、無事この方法でワープ成功を確認
てことで穴抜けの紐ワープを乱数調整不要で実行可能であることが証明されました
以降はこっちの方法を使おう >>443
特殊なバグ技を生成する為にザロクバグを使う以外はザロクバグほぼほぼ関係ない ぼんじりさんの手によりもっと楽な乱数調整不要任意コード実行方法が開発されてしまった…
もう流石としか言いようがないね
俺の脳ミソを幾ら集めようとも到底勝てやしないその発想力 ザロクバグで変化させる素材ポケモンはリピートボールで捕まえた方が良いの?
何かザロクバグのサイトとかでリピートボールを推されているけど……
他のボールじゃ駄目なの? >>447
ボール自体はどれにしようが問題はない
どのボールが推奨されるかは場合による そういえばともしびやまでなんかダート使ってジャンプしてたらポケモンと遭遇したとたんにフリーズしたんだけど……
偶然かなと思ってまたジャンプしたらまた同じくポケモンと遭遇したとたんにフリーズしたよ……
かなり鬱陶しかったな…… >>449
送り火山でなく?
まず態々あそこで跳ね回る意味があるのかどうかが疑問だが >>450
チリーン探す為にジャンプしてた
動き回るめんどいし
後、ゴールドスプレーの効力がきれないようにするためにジャンプしてた。
そしたらフリーズした おくりびやまのフリーズは有名だね
しかしなるほど、そうやって発見されたのか スプレーケチるのは基本だし、ダート派の人の半分はフリーズ経験してそう 裏技wiki見てみたらレベル28のポケモンを先頭に〜 てあったけど、これは特定レベルのポケモンを先頭に置くと起こるやつ? レベル28が駄目なのか?
カゲボウズが28だったよ
じゃあレベル27のマッスグマなら大丈夫かな? スプレーで出現ポケモンを絞る事自体がダメだったはず
おくりびやまだけでなくどこでも起こる >>456
マジで!?
怖っ!
つまり、スプレー使った状態で一ヵ所でジャンプするなってことか……。 ザロクバグで素材ポケモンを欲しいポケモンに変化させる時、素材ポケモンに欲しいポケモンに合わせた努力値を振れば良いのでしょうか?
それとも、欲しいポケモンの図鑑番号と同じ番号技を覚えさせれば良いのでしょうか?
どちらが成功するのでしょうか? >>458
素材の何を合わせるかっていうのは、素材ポケモンの性格値によって変わるよ
ドーブルからミュウを作る方法はいろいろな人がブログにまとめてるから、まずはそれを真似するのがやりやすいんじゃないかな
ドーブルの技だけを変えれば、好きなポケモンを作れるよ
はっきり作りたいものがあるなら、答えられる範囲で答えるよ >>460
出来上がりのポケモンの性格にこだわらないなら無理ではないとは思うけど、捕まえたドーブルの性格値を確定できないと難しいと思うよ
GBAエンカウントっていうサイトで、エンカウントしたフレーム毎の性格値を確認できるから、それが使えればできると思う
例えば、臆病ミュウを作るのであれば、性格値3CFA62BCのドーブルを捕獲すればいい
GBAエンカウントとエメタイマーを使えば、そんなに苦労せずに捕獲できると思うよ 乱数調整が無理って感じなら、ゲーム内交換で手に入るタネボー(ニックネームはセブン)に努力値を振れば好きなポケモンを作れるよ トレーナーから貰ったセブンで努力値を振れば、任意のポケモンに変化できるのか……。
情報ありがとうございます! >>463
セブンを使うなら、
フシギダネからセレビィまでは、H努力値=図鑑番号
キモリ以降は、H努力値=図鑑番号−237、A努力値=1
とセブンの努力値を振ればOK
例えば、図鑑番号260のラグラージならH23、A1と振る
ちょっと検索したけど、この方法ってあんまり記事になってないのね
ドーブルを素材にできるなら、個体値はほぼ自由で、できたポケモンにスケッチを覚えさせられるから、そっちばっかり紹介されてるんだろうね ルナトーンが欲しい場合は、セブンにH100、A1と振れば良いのかな? >>465
それだと生まれてくるのはアサナンとなる
正直、ホウエンポケモンの内部番号は図鑑番号と無関係に並んでるから、バルバペディア辺りを見て正しい内部番号を確認した方が良い >>466
すみません、そうですね
ご指摘ありがとうございます
バグ初心者向けにと思って、なるべく簡単に書こうと思ったら、間違えました https://m.bulbapedia.bulbagarden.net/wiki/List_of_Pok&#233;mon_by_index_number_(Generation_III)
ホウエンポケモンについては、このリンク先にあるリストの左から2番目の数字から256を引いた数だけHに振ってください
Aに1だけ振るのは変わらないです
ルナトーンなら、348-256=92です
例にしたラグも間違えてましたね(29でした)
誤情報すみませんでした… 理屈の上では可能だけど、実現させた人がいるかどうかは知らない >>472
可能なんだ……
ザロクバグすごいな
できない事って無いのか…… ザロクバグと簡易ザロクバグの解除方法はどうすれば良いのでしょうか? VC赤を簡単なバグだけ使って遊んでるけど小学生の頃にこれ知ってたら厨ポケ量産しまくっただろうなぁ 裏技かバグか解らないけど
ポケモン図鑑のデータが消えたwww
しかもパソコンやポケモン達は消滅していない
何が原因なんだ…… 図鑑のデータがおかしくなるのはよくある 気にするな ________________
|☆☆ポン・デ・ライオンレス☆☆ |
| .|
| ○ ○ ..|
| ○・ω・○ モッチモッチ! |
| ○ ○ ..|
| .c(,_uuノ ..|
|このレスを24時間以内に九つの .|
|スレに貼り付けてください .|
|そうするとポン・デ・ライオンが ...|
|あなたの家にモチモチしに行きます ..|
|________________| バタフリーとスピアーの硬くなるはバグ技に見えてバグ技じゃないよ!ノーマルタイプだけに 久し振りにこのスレ来たんだけどクリスタルの任意コード実行方法って確立された? 赤を解析してたんだけどこんなショップデータって本編で使われてるっけ?
スーパーボール
すごいキズぐすり
いいキズぐすり
なんでもなおし
げんきのかけら シオンだかタマムシデパート辺りがそんなラインナップじゃなかったっけ
セキチクからはハイパーボールあるから違うだろうし >>485
実際のデータと合わないって事はそうなのかもね
スプレーないのも謎だし、開発中に削った街とかあるのかも >>488
データ的にはちゃんとしたショップのデータみたいだな
他にもあるんだろうか つべにエメラルドの最新版配信マップ侵入方法の動画上がってるね
随分と簡単になったものだ >>490
良ければURLを教えていただけないでしょうか 任意コード実行でエメラルドの裏ID特定できるらしいけど誰かやり方わかる人います? 任意コード実行でエメラルドの裏ID特定できるらしいけど誰かやり方わかる人います? 今の所任意テレポート用コード以外に作製したのは
・裏ID特定用
・TN変更用
・表裏ID変更用
・夢幻のチケット配達員出現用
・0x2B5C成功率100%化ダメタマゴ配置用
こんなもんか >>495
これに加えてバグ技0x38C9持ちポケモン(タマゴ)生成用コードも作った
折角0x2B5Cの成功率を100%に出来るのだから色々なコードを用意したい所だけど、その他にどんなコードに需要があるのだろうか
取り敢えず、ミュウ捕獲済み古びた海図入りロムを入手した人の為にもなるミュウ復活用コードとか作ろうと思ってるけど…
任意アイテムの作製とか? タマゴバグを試してるけど難しいねこれ
だいたいダメタマゴか変化なしになっちゃう
↑キー押す回数が足らないのかな? ■ このスレッドは過去ログ倉庫に格納されています