Mario.js — World 1-1 Remakeについて
Mario.jsは、開発者のGarrett Johnsonがエンジン制作の練習として書いた、NES版第1ステージのクローンです。土台にゲームフレームワークはありません。メインループ、スクロール、衝突判定、スプライトアニメーション、描画順序まで、すべてプレーンなJavaScriptで手書きされています。
だからこそ、World 1-1をもう一度遊ぶのにぴったりです。このステージは、チュートリアルの文章が一行もないまま、ひとつの世代にプラットフォームゲームの遊び方を教えました。最初のGoombaはジャンプを教え、最初の?ブロックは下から叩くことを教え、土管は世界に秘密が隠れていることを教えてくれます。
作者自身のメモには設計が説明されています。敵は画面に現れる少し前から動き出し、当たり判定はスプライトより少し広めで、レイヤーは背景、小道具、アイテム、敵、飛び道具、地形、プレイヤー、最後に土管の順に固定で描画されるので、Marioが土管の中へ入っていけるのです。
操作方法
| 入力 | アクション |
|---|---|
| ← → | 歩く |
| Z | ダッシュ |
| X | ジャンプ |
| ↓ | 土管に入る/しゃがむ |
特徴
- 隠し土管やゴールポールまで、World 1-1のレイアウトをピクセル単位で忠実に再現
- フレームワークを使わずゼロから書き上げた60fpsのエンジン
- オリジナルに近い当たり判定と、画面内にスクロールして入る直前に敵が動き出す仕組み
- スーパーキノコ、ファイアフラワー、スター、コイン、壊せるブロック
ヒント
- Xでジャンプ、Zでダッシュです。多くのPCゲームとは逆なので、指が慣れるまで少し時間をかけてください。
- 最後の階段の上からZを押したままジャンプすると、ゴールポールのいちばん高い位置をつかめます。
- 土管の上で↓を押してみてください。オリジナルと同じく、どれか1本は特別な場所につながっています。
- キー操作に反応しないときは、ゲーム画面内を一度クリックしてください。フレームにキーボードフォーカスが必要です。


