バグに魅了されたユーザーたち【2023/03/28】
皆さんはバグに対してどのような印象をお持ちでしょうか?
少なくとも良い印象を持っている方はいないかと思います。
継続する上で大事なのは、「モチベーションUP」以上に、「やる気の根を絶やさないこと」です。
大人気ゲーム「ポケモン」の新作『ポケットモンスター スカーレット バイオレット』(ポケモンSV)も「セーブデータ損傷バグ」が話題になっています。
発現の絶対数こそ少ないものの、SNSへ日に日に報告が増していることも事実。1度バグを起こせば復旧の見込みも限りなく薄く「理由が分かるまで起動しない」プレイヤーも現れはじめています。
Nintendo Switch本体の故障からゲームデータが消える悲劇は、これまでにもなかった話ではありません。
世界中で原因追求が進められ、憶測が飛び交う理由は『ポケットモンスター』シリーズで起きた不具合であるからでしょう。
しかし1996年に産声をあげた、いわゆる『初代(ポケットモンスター 赤・緑)』においてバグ技は、シリーズの知名度をあげるひとつの魅力としても語られていました。
バグ技を使うと、「ポケモンのレベルを一気に100にする」「本来覚えられない技をポケモンに好きなように覚えさせる」「マスターボールのような希少アイテムを大量増殖させる」といった様々な現象を引き起こし、ゲームバランスを崩壊させることができ、果ては幻のポケモン・ミュウを含む151種類のポケモンを自由に生成したり、IDや個体値を変更することすらもできてしまいました。
なぜそんなことができたかというと、仕様の穴を突いたバグ技のトリガーが発見されたからです。
バグが起こる理由の1つとしては、道具を入れ替える仕組みそのものがプログラムのメモリの値を入れ替えるという仕組みを使っているからです。
道具欄でセレクトを押すと、コンピューター側はいわゆる「メモリの値を入れ替える」という状態のモードになります。
道具欄を閉じたり、メモリ数値入れ替えモードのときにキャンセルボタンを押すと 「メモリ数値入れ替えモード」から「道具選択モード」に切り替えなければいけません。
しかし、プログラマはその切り替え機能の呼び出しが出来ておらず、フィールド移動画面に戻ってもメモリ数値入れ替えモードが解除されていないままになっていました。
つまり、これを活用すれば様々なデータを他のデータと入れ替えることが可能になるというわけです。
初代ポケモンが流行ったのはインターネットが普及する前だったので、裏技専門のゲーム雑誌や口伝で広まり、多くのプレイヤーに興奮をもたらしました。
そして、発売から20年以上経った今も初代ポケモンのバグや仕様の解析が行われているのです。
(と言いつつも、既にほぼ解析されきったようですが)
中には、バグの過程で呼び出せなくなったセーブデータを復元するということもできた方もいるようです。
そのために当時のゲーム開発で用いられていたアセンブリ言語という機械語に近いプログラミング言語を学ぶ必要もあったそうです。
今となっては、ゲームのバグはすぐにネットで拡散され、メーカーはネット経由で修正パッチを配布するなどで「バグは悪として取り除く」ということができるようにもなりましたが、プレイには影響がないものの裏ワザ的なことをして遊ぶという楽しみも減ってしまったのではないかと思います。
(もちろん正規の遊び方ではないので推奨はできませんが)
幼少期に夢中になったゲームに思いを馳せてしまうのも、こういった時代の変化があるからなのかもしれませんね。
参考: 『ポケモンSV』ファン騒然の「データ損傷バグ報告」 赤・緑世代は日常茶飯事だった?https://news.yahoo.co.jp/articles/f11677c8eb200f06445fb43b1ea8e25983996a1e
セレクトバグ(ポケモン)
https://w.atwiki.jp/aniwotawiki/pages/53234.html
ポケモン赤緑を通してアセンブリ言語を学ぼう:入門編
https://naokeyzmt.com/rogue/skillup-asm-pokered/