すし積む
シャリから始めて、同じネタ同士をぶつけて育てる落ち物パズル。
行き着く先は、金のすし桶。
どんなゲームか
桶の上からシャリを落とします。同じネタ同士が触れると、ひとつ上のネタに変わる。シャリが玉子に、玉子がエビに、エビがサーモンに——そうやって十一段を上っていきます。
桶からあふれたら、しまい。ただそれだけの遊びですが、大きいネタほど場所を取るので、後先を考えずに積むとすぐ行き詰まります。どこに落とすかを毎回選ぶ、その積み重ねです。
合体で生まれたネタが、間を置かずさらに合体すると「連鎖」。五つ繋がれば「大連鎖」で、点が跳ねます。
入っているもの
寿司図鑑
これまでに作れたネタだけ、姿が見えます。まだのものは影だけ。端末ごとの記録なので、人によって埋まり方が違います。全十二種(ガリを含む)。
番付(オンラインランキング)
その日の上位と、通算の上位。名前を入れて送ると並びます。パソコンで遊ぶと、画面の右に常に出ています。
お品書き
大将が「マグロを二貫」といった注文を出すので、時間内にその通り作るとボーナス。続けて捌くほど倍率が上がり、落とすと一に戻ります。点の出方が普通の遊び方の 1.6 倍ほどになるので、番付は別枠です。
ガリ
二十回に一度くらい、ネタの代わりにガリが来ます。触れたネタをひとつ消します。積み間違えたときの逃げ道です。
遊ぶのに要るもの
ブラウザだけです。導入も、登録も要りません。スマートフォンは指でなぞって位置を決め、離すと落ちます。パソコンは左右キーとスペースでも遊べます。
日本語・英語・スペイン語・ポルトガル語・フランス語・ドイツ語・イタリア語・ポーランド語・トルコ語・ロシア語・インドネシア語・ベトナム語・韓国語・中国語の十四言語に対応しています。
作りについて
全体が HTML ファイル一枚です。物理演算に Matter.js を使い、寿司の絵は画像ではなく Canvas に毎回描いています。番付は Cloudflare Workers と D1 で動いていて、送られてきた手順を向こうで検算してから並べています。
釣り合いの調整は、自動で遊ばせて数字を取ってから決めました。その話は開発の記録に書いています。
この作品の記録
- すし積むの番付に載らなくなった:ゲームの数字を変えて、サーバーの検算を直し忘れていた(しかも二つ) — 番付に、普通に遊んでも載らなくなった。ゲームの数字を変えて、サーバーの検算を直し忘れていた。金の桶の褒美(8,000→25,000)と、降るネタ(3種→5種)の二つ。注意書きでは守れず、同じ種で出題を比べる検査を足した。
- 押すものを六つから一つに絞った:初めての人は、どれを押せばいいか分からなかった — タイトル画面に押せるものが六つ並んでいた。初めての人に必要なのは最初の一歩だと考えて一つに絞った。iframeで保存が消える問題と、画面を離れたら止まる直しも含めた記録。
- 音は聴けないので、波形を測った:すし積むの和楽器を、WebAudioで作る — 音声ファイルを使わず、箏・太鼓・拍子木・鉦をブラウザで合成した。聴けないので、波形のピークを測って音量を決めた。番付のしきい値も、自動プレイの実測で引き直した記録。
- CrazyGames のプレビューで日本語が文字化け:ファイルは正しかった。原因は特定できず、ASCII 表記に逃がした — ゲームポータルのプレビューで「大連鎖!」の「連」だけが壊れた。ファイルのバイト列は正しく、原因は特定できなかった。ASCII 表記に逃がした経緯と、14言語の枠の検査の記録。
- 無料枠を半分しか使わない番付にした:呼び出し5回を2回に — 番付サーバーが無料枠を使う量を半分にした。一人が遊ぶ一回の呼び出しは5回から2回、読んだ行は421から221へ。順位の数え方と、前置きの呼び出しをなくした経緯。
- CrazyGames に落ちた:理由は書かれていなかったので、撮って探した — ゲームポータルの審査に「全体の品質が期待に達していない」とだけ書かれて落ちた。自分で画面を撮って見つけた四つの原因と、測って選んだ直し方の記録。
- 「山は89%で落ち着く」は誤りだった:測定のほうが間違っていた話 — すし積むのバランスを測りなおしたら、前の測定が落下中のネタを数えていた。大きさの階段の逆行、縦穴の桶、床のすり抜け。三つの原因と直したあとの数字。
- 広告の間隔を、回数ではなく時間で測る — 「5プレイに一本」をやめて「前の広告から7分」に変えた理由と、変えたあとの動きの記録。書きながら、一戦の長さが分かっていないことに気づいた。
- 穴子がデカすぎた話 — 落ち物パズルの最後の一手に、どうしても届かない。勘で直す前に、自動プレイで三百戦以上の統計を取って原因を突き止めた記録。