the cutting room mirror

ja

This article has a talk page!
view on tcrf.net

ポケモン 赤・ 青 は、ポケモンシリーズの第一作目である。もともと日本でポケットモンスター 赤 ・ 緑 、後の 青 として発売されたもの。 多くの子供達をポケモンマスターを目指す旅にハマらせ、ゲームボーイの虜にした。

Much like the early entries in the Final Fantasy series, these games have a messy history when it comes to localization. As a result, this page covers the initial Japanese versions, titled Red and Green, the updated Blue revision, and the subsequent international localizations (dubbed Red and Blue) that drew from the latter.

Code and Data#

Miscellaneous#

Unused Song#

Red and Blue contain a short unused song with no defined pointers. The song appears to be incomplete, and while it only has two channels whose octaves are set too high, it does have a defined song tempo, being relatively quick. The two channels are located in the ROM at offsets 0xA913 and 0xA9CF, and the tune can be patched into Pallet Town by using a Game Genie code or manually patching a set of offsets, both displayed below.

後のゲームと違って、ポケモンの種類の内部テーブルはぜんぜん整頓されていない。進化系列とか、なにか納得行く順番に纏められているということはまったくない。例えば0x01、0x02、0x03番目は、順にサイドン、ガルーラ、ニドラン♂だ。おそらく初期のポケモン図鑑順か、もしくはゲームに追加された順だろう。

ゲームセンターCXのスペシャルエピソードに『ポケモン』製作者の田尻智へのインタビュー回がある。インタビュー中に、おそらく初期段階の設計資料かゲーム提案書が、ニドキング、ヤドラン、ユンゲラーの3体分クローズアップで写っている。資料中には赤や緑のスプライトが、名前や図鑑番号とともに記されている。興味深いことに、この番号は最終版のポケモン図鑑番号と一致せず、むしろ内部の種族テーブルと一致する。ニドキングは0x07、ガルーラは0x08でユンゲラーは0x26だ。このスクリーンレイアウトとうっすら見えるスーパーゲームボーイの枠を考慮すれば、この画面はごく初期のゲーム内ポケモン図鑑によるものとも推定できる。

このニドキングの初期名称が、最終版のニドキングでなく、マイコー♂であることも注目に値する。

Restored Version:

Source Version:

To do:

  • けつばんと'Mの違いと類似点がわかりやすいように、どのデータが内部配列番号で、どのデータがポケモン図鑑番号で管理されているかの完全な説明。
  • 0x45の.oggファイル。この鳴き声はズバットのものと完全に一致している。 参考: http://pastebin.com/yCry6qce 記事に反映しなきゃ。
  • 会話ページの大半も。

おそらく全ゲームの中でも最も(悪)名高いバグ/没データだろう、けつばん(MissingNo.)は、190スロットあるポケモン種族データデーブルの空いている39スロット分を埋めるために利用される。このバグは、プレイヤーが前述の種族テーブルにおけるプログラミングのミスを悪用して役立つ副作用を起こそうとした際に、けつばんとエンカウントする方法を発見したことで一気に有名になった。ふたごじま東岸の水/陸タイルの境界やグレンタウンでは、水ポケモンではなく現在地の(草タイルでの)ランダムなやせいポケモンとエンカウントするように設定されている。これらのエリアにはやせいポケモンのエンカウントデータが設定されていないため、直前のエリアのデータがメモリに残っている。日本語版では、けつばん(Ketsuban)という名で、これはmissing numberを逐語訳したもの。ここに面白い説明文が書かれる予定

Unused Celadon Warp#

Location of the deleted entrance.

An unused warp to the fifth floor of the Celadon Department Store (map 136) exists in Celadon City, located on the building to the right of the Prize Corner where a door would normally be found. Exit location data also exists for the map, with the exit point index number being 08. Going from street level to the fifth floor makes little sense and the other Celadon Department Store floors number maps 122-125 consecutively, suggesting the fifth floor is a later addition.

You can create a door to access the warp with the GameShark code 017C72C8. You can appear where the warp is by using the GameShark codes 0108B5D3 0108B1D3, entering a certain map in Celadon City (such as the Pokémon Center), and exiting.

(Source: Glitch City Laboratories)

おじいさんバグ(Old Man Glitch)#

トキワシティのおじいさんにポケモンゲットのチュートリアルをしてもらっている間、プレイヤー名は「おじいさん」に変更されている。もともとの名前は、やせいポケモンエンカウントテーブルに一時的にコピーされている。プレイヤーがやせいポケモンとエンカウントするエリアに足を踏み入れる際にこのテーブルは再設定されるので、通常プレイではなんの影響もない。しかし、誤った水タイル設定を利用することで、プレイヤー名がエンカウントテーブルに入ったままやせいポケモンとエンカウントできる。そうすると、どのポケモンがどのレベルで現れるのかは名前の文字列によって決まることになる。いくつかの文字は不正なIDに対応し、けつばんや'M、あるいは異常な高レベルのバグトレーナーとのエンカウントをもたらす。日本語版ではこれは機能せず、またこうしたタイル上ではどんなエンカウントも発生しない。

TX_SOUND_POKEDEX_RATING,       SFX_POKEDEX_RATING
TX_SOUND_GET_ITEM_1_DUPLICATE, SFX_GET_ITEM_1
TX_SOUND_CRY_DEWGONG,          DEWGONG

(Source: Pokémon Red Disassembly)

アイテム複製#

けつばんを一躍有名にしたのはアイテム複製バグである。プレイヤーがけつばんや'M、その他のポケモン図鑑番号が000のバグポケモンとエンカウントすると、ゲームは「ポケモンを見つけた」フラグをそれらのポケモン図鑑エントリにセットしようとする。このフラグアドレス計算時に整数型(integer)のアンダーフロー(訳注:下側オーバーフローの間違いでは?)が起こり、代わりにプレイヤーのバッグ6番目のアイテムの量についての最上位ビットをセットするため、効率的に128個もアイテムを増やせる。もし捕まえると、6番目のアイテムはもう一度増える(128個以下に減らされていたとすればだが)。

Confusion / Disable Mewtwo#

The most notable case is Mewtwo, which has Confusion and Disable in its Level 1 learnset. However, because it learns Barrier at Level 63 and Recover at Level 70, and it's caught at Level 70, it cannot learn them under normal circumstances. Glitches such as Trainer-Fly can allow the Level 1 learnset to manifest.

(Source: Pokémon Red Disassembly - Mewtwo Learnset)

バリエーション#

ほとんどのけつばんは上のスクリーンショットと似たような姿をしているが、場合によってはニビ科学博物館の化石や、ポケモンタワーのゆうれいのスプライトを想定していることもある。(ただし名前は、日本語版でポケモンタワーに出てくる「ゆうれい」ではなく、未使用テキストの「ゴースト」となる)。また、それぞれのけつばんは個別の鳴き声を持つ。ほとんどの鳴き声は単純に3つとも0に設定されているため、ニドラン♂と似たような鳴き声になるが、ユニークな鳴き声もいくつかある(1 を参照)。また、けつばんの個々のエントリには、空のわざ習得・進化テーブルがそれぞれ固有に設定されており、これらのスロットは削除されたポケモンのものであると考えられている。さらに、「けつばん」という名はROMの中で39回登場し、それぞれのエントリに対応する。

Starter Dex Entries#

Note Ivysaur (002)

To display the Pokédex entries for the starter Pokémon, the game marks them as owned for a brief time, then shows the Pokédex data screen, and then clears the Pokédex. However, for an unknown reason, aside from just marking Bulbasaur, Charmander, and Squirtle as owned, the code also marks Ivysaur as owned. This doesn't matter in the grand scheme of things, as it gets cleared and the player never gets to see this, but it's still there. Ivysaur was probably not meant to be a starter, and it was likely added into the function by mistake.

Note that this doesn't mark the starters as seen, only owned, as it wasn't necessary for the Pokédex entry to work. However, if it was possible to view the Pokédex's list during this time, the entries, while owned (with a Poké Ball icon) cannot be viewed and are not named, as in the screenshot on the right (unless the player had already seen them, e.g., receiving the gift or as wild Pokémon).

Additionally, if the player already owned Bulbasaur, Charmander, Squirtle, or Ivysaur in the Pokédex prior to viewing the Pokédex entry and backed out, all of those owned entries will be disabled after backing out with B. This also doesn't really matter, however, as there is no way to get Pokémon, and as such the player is expected to not own any Pokémon prior to getting the Pokédex.

Watch on YouTube

; this function temporarily makes the starters (and Ivysaur) owned
; so that the full Pokedex information gets displayed in Oak's lab
StarterDex:
   ld a, 1 << (DEX_BULBASAUR - 1) | 1 << (DEX_IVYSAUR - 1) | 1 << (DEX_CHARMANDER - 1) | 1 << (DEX_SQUIRTLE - 1)
   ld [wPokedexOwned], a
   predef ShowPokedexData
   xor a
   ld [wPokedexOwned], a
   ret

(Source: Pokémon Red Disassembly)

技術的な詳細については、 ここ と ここ を参照。