面白いスクラッチゲーム24ページ目
24ページ目では下記ジャンルのスクラッチゲームを紹介していくよ!
卓球と連打ゲームを融合させた斬新なアイデアがおもしろい!ラリー中に5秒間の連打タイムが発生し、相手より多く連打できれば打ち返せる仕組みになってる。連打数はリアルタイムでゲージに表示されて、自分の頑張りが目に見えるのが嬉しいポイント。
なんと350枚ものコスチュームを使った超大作アニメーションだよ!これだけ大量のフレームを使うと、読み込みに時間がかかるから、別のスプライトで進捗を監視しながらローディング画面で待たせる仕組みになってる。具体的には、アニメーション用スプライトのコスチューム番号を他のスプライトから参照して、それを総コマ数で割ることで読み込み率を計算してるんだ。
独自の物理エンジンを一から構築したスイカゲームなんだ!普通のスクラッチゲームとは全然違って、フルーツ同士の衝突や重力、空気抵抗まで本格的な物理計算で再現してる。特に「Apply Spring Forces」っていうカスタム定義では、フルーツが触れた時の反発力や合体判定を精密に計算してて、まるで本物の物理シミュレーターみたい。
敵AIの経路探索システムがめちゃくちゃ作り込まれてるね!上下左右の移動可能マスを動的に判定して、ゴールまでの最短ルートを自動計算してる。さらに4種類のユニットがそれぞれ異なる攻撃パターンを持ってて、強化ユニットによる周辺味方のバフシステムまで実装されてる。
驚くべきは16文字という超コンパクトなセーブデータ圧縮技術だね。このスクラッチでは、全てのキャラクターのアンロック状況や進化レベル、購入済みアイテムなどの膨大な進捗情報を、たった16文字の英数字コードに圧縮して保存してるんだ。各文字が複数の情報を同時に表現する巧妙な仕組みで、例えば1文字目で基本猫の進化段階を、2文字目で別のキャラ情報を...という風に効率的にデータをエンコードしている。
このFNFゲームの核心は、譜面を事前録音して再生する仕組みだね。開発者モードをオンにすると、キーを押したタイミングと種類が全部リストに記録される。それを後から読み込んで、タイマーと照合しながら矢印を生成してるんだ。
このプロジェクトの最大の魅力は、クラウド変数を使ったオンライン対戦と、本格的な詰み判定の両方を実装している点だね。特に詰み判定は技術的に面白くて、王が逃げられるかどうかを判定するために、王の周囲8マス全てについて相手の攻撃範囲リストと照合している。さらに、二歩チェックや持ち駒の配置制限など、将棋のルールを細かく再現していて、1手30秒の制限時間も設けられているから、本格的な対局が楽しめるようになっ…
ボールが地面やラケット、壁に触れた時の挙動を色判定だけで実現してるのがすごいね。緑色なら跳ね返り、黒色なら横方向に反転、青色ならラケットに当たって打ち返すっていう具合に、色ごとに違う物理演算を組み込んでるんだ。特にラケットに当たった時は、角度によって跳ね返る方向をランダムで変えることで、実際のテニスっぽい予測不能な動きを再現してる。
ブロックを叩くと砕けた破片が飛び散る爽快な演出は、クローン機能を巧みに使って実現しているんだ。破片ひとつひとつが独立したクローンとして生成され、ランダムな軌道で落下する物理演算が組み込まれている。さらに注目なのが、クラウド変数を活用した世界記録システム。
回転する針山に新しい針を刺していくシンプルなルールだけど、実装がめちゃくちゃ巧妙なんだ!一番すごいのは、クローン機能を使って動的に針を生成しながら、同時に色の当たり判定で既存の針との衝突を検出してる点。さらに各レベルで針山の回転速度を変えたり、360度を数学的に均等分割して初期配置の針を生成してるから、レベルごとに全く違う難易度になってる。
スマブラをScratchで再現したこのプロジェクト、キャラ選択からステージ選択、そしてバトルまでしっかり作り込まれてるよ!CPUモード・トレーニング・オンラインと複数のモードを用意していて、さらにモバイル対応のためにバーチャルジョイスティックと攻撃ボタンも実装されてるのが凄い。メニュー画面ではクローンを活用したボタンにホバーエフェクトがかかって、本家っぽいUIの雰囲気を出してる。
変身ベルトの動きをここまで忠実に再現してるのがすごいよね!ポイントは「別のスプライトのコスチューム情報を調べる」という仕組みを活用してるところ。メモリを選ぶと、その情報を光やスロットなど複数のスプライトがそれぞれ読み取って、みんなで連動してアニメーションするんだ。
自作の2Dリジッドボディ物理エンジン「Spaceship2D」がガチすぎる。シーソー、バネ、フライホイール、ジップライン、トレビュシェットまで全部物理演算で動いてて、全16ステージそれぞれ違うギミックが待ち構えてる。ジャンプも接触面の法線ベクトルから計算してるから、斜面での挙動がちゃんとリアル。
メッセージ機能を使った状態管理がすごく上手だね!足し算、引き算、掛け算、割り算という4つのモードを切り替えるとき、それぞれ専用のメッセージを送って、各ボタンの表示・非表示を一斉にコントロールしているんだ。例えば足し算モードに入ると、足し算ボタンだけが隠れて他のボタンは残る。
マインクラフトの世界を自由に冒険できる秘密は、高度なスクロールシステムにあるんだ。scrollXとscrollYという変数でカメラの位置を管理して、プレイヤーが移動するとすべてのブロックやモンスターが相対的に動く仕組みになっている。各オブジェクトは実際の座標からスクロール値を引いた位置に表示されるから、画面外にある大量のブロックも効率よく管理できるんだよ。
ペンで図形を描きながら奥行き関数を使って疑似3D空間を作ってるのがすごいところ。ブロックをカメラ距離順にソートして手前から描画することで立体感を出してる。さらにX・Y加速度の計算でプレーヤーが跳ねたり滑ったりする物理的な動きを再現し、収縮率の変数で着地時にグニュッと潰れる表現まで実装。
物理演算を自作してリアルなプラットフォーマーを実現しているのがすごいところだね。YVelocityとXVelocityという2つの変数で縦と横の速度を管理し、重力による加速度や慣性による減速を細かく制御している。ジャンプ時は速度を一気に上げて、その後重力で徐々に下降させ、地面に着地すると速度をリセットする仕組みになっている。
驚くべきは全国2000箇所以上の観測点データだね。それぞれに緯度・経度だけじゃなく地盤の揺れやすさまで設定されていて、マグニチュードと震源の深さから計算した基本震度に地盤特性を掛け合わせることで、かなりリアルな震度分布を再現してる。あと海陸判定データを連続する値をカウントする方式で圧縮保存することで、膨大なデータを効率的に扱っているんだよ。
90人以上のキャラから3人チームを組んで戦う本格格闘ゲーム!ストーリーモードで各サーガを攻略するとキャラがアンロックされていく仕組みが熱い。気(Ki)をチャージして必殺技を放ったり、テレポートからのコンボを決めたり、戦闘システムがしっかり作り込まれてる。
スプラのヒーローモードをスクラッチで横スクガチ再現してるのがヤバい。シューター・チャージャー・ローラー・マニューバーとか全11種のブキをそれぞれ固有の操作感で実装してて、インク管理やしゃがみ回復の仕組みもちゃんとある。スペシャルもサメライドやウルショ、ナイスダマなど10種以上あって、敵もタコトルーパーからタコツボックスのボス戦まで70ステージ超のボリューム。