ネタ
2016/02/13
アホが120キロバイトでアクションゲーム作ったら残念な事になった
みなさんこんにちは。大松です。今日はゲームの話です。
名作アクションゲーム「スーパーマリオブラザーズ」の事は
皆さんご存知かと思いますが、このゲームがたったの40キロバイトという
容量で作られた事は意外と知られていないかもしれません。
いやこれ、さらっと書いたけど40キロバイトってすごくね?
だって↑の画像86キロバイトだぜ?
そんな画像1枚にも満たない容量にゲームの全てが詰まっていたと
考えると何だか感慨深いものがありますね。
さて、時は流れて2016年。パソコンのディスク容量は何百ギガバイトとなり、
ファイルのサイズもメガだのギガだのが当たり前になったわけですが、
もし、今の技術で40キロバイトのアクションゲームを作ったらどうなるんでしょうか。
これってトリビアになりませんかね?よーし、やったるわーい!!
<様々な制約>
といわけで、ゲームを作っていくわけですけれども
極端に少なすぎる容量ゆえ、様々な制約があります。
・制約1 画像使えない
ゲームを作る場合、基本的には画像を用意してそれを表示させるのですが、
画像は容量食うので使えません。
・制約2 音声ファイル使えない
これも画像と同じ理由で使えません。
・制約3 ツクールとか使えない
たぶん画面表示しただけで何メガとかいきそうなので使えません。
てか何も使えねぇじゃねーか!
<開発環境>
で、VisualStudio2010(一から全部プログラムするやつ)で
作ろうと思ったんですが、ウィンドウを表示するだけで
普通に1メガとかになっちゃうんですよね。
この時点でもう諦めて「福豆10万粒食ってみた」みたいな
ネタに変更しようかなとか思ったんですが、
色々調べたところ、コンソールアプリケーションにすれば
何とかいけそうってのが分かりました。
コンソールアプリケーションってのは要するに文字だけを表示するアプリケーションです。
本来ならばこんな感じのプログラムをうって、
実行させてこんな感じのを表示させます。
これをどうやってゲームにするかって話ですが、
一応、文字の色や背景色、表示場所などを指定する事が出来るらしいので、
それを使って強引にゲーム化したいと思います。
<コーディング>
まずはアクションゲームの基礎的な部分を組み込みます。
コーディングについては、面白い要素が1個もないのですっとばします。
この時点で既に100キロバイト超えたので40キロバイトに収めるのは諦めました。
なので、せめて120キロバイトに収めようと思います。120にした理由はなんとなくです。
エンジンが出来たのでステージを作っていきます。
・・・と思ったのですが、ステージ4を作った時点で121キロバイトになったので
ステージは全3ステージです。
<そして妥協へ・・・>
試行錯誤の末、ようやく完成いたしました。
120キロバイトで作ったアクションゲームです!(Youtubeに飛びます)
実行ファイル。120キロバイトに収まりました。
タイトル画面。
メイン画面。主人公は"ホ"です。
背景に描いた申し訳程度の雲が悲壮感を一層引き立てます。
音声ファイルが使えないので効果音にはビープ音を使用。
これにより「ピ」とか「ピー」とか「ピ(高音)」など、多種多様な効果音が鳴らせます。
方向キーを押しながらジャンプボタンを押すと
垂直に上昇→そのまま垂直に落下という、実に頭の悪い動きをしますが、
技術的な問題で解決できなかったのでそういう仕様ってことで押し切ります。
敵キャラ登場。クリボー的な奴です。
本来は文字を表示させるアプリケーションの為、敵も当然文字になります。
敵キャラその2。ぴょんぴょん跳ねます。
容量の都合で敵キャラはこの2体のみです。
本作品のラスボス "メ" 登場。
地味に難しい。
余談ですが、「昔のゲームは少ないステージ数で長く遊んでもらうために
あえて難易度を難しくしている」みたいな話を聞いたことがあります。
どんなことにもちゃんと意味があるのですね。この記事とは大違いです。
エンディング画面。お疲れ様でした。
こんな感じで、「120キロバイトで作ったんだ」と言ったら「うんそうだね」って
言われそうなゲーム(っぽいゴミ)が出来たわけですが、
前述のとおり、マリオはこれよりも少ない容量で作られているわけです。
一体どうやって作ったかって?
そらもう要領(容量)よく作ったんでしょうね。
お後がよろしいようで。
おわり
ネタトップへ