「山は89%で落ち着く」は誤りだった:測定のほうが間違っていた話

English version

すし積む 開発の記録 / 2026年10月

すし積むは、同じネタをぶつけて合体させ、桶いっぱいに育てていく落ち物パズルです。バランスを直していたとき、自分が出した測定結果が、間違っていたことに気づきました。何が間違っていて、どう見つけて、どう直したか。コミットに残っている数字で書きます。

この記事の数字は、2026年9月7日の時点のものです。このあと、ネタの寸法は一律 0.8 倍になり、9月10日にもう一度(降ってくるネタの種類と、桶の形)変わっています(穴子の記事に書きました)。いまの数字とは違います。

「89%で落ち着く」は、誤りだった

最初の測定では、「山が桶の89%の高さで落ち着く」という結果が出ていました。つまり、積んでも溢れず、負けないゲームだ、ということです。

測りなおすと、これは落下中のネタを数えていたための見かけでした。実際の山は、上がり続けていました。ただし上がり方が遅すぎて、240回落としても、桶の3分の1しか埋まりません。「負けられないゲーム」とは、安全という意味ではなく、負けようがないほど山が育たないという意味でした。

原因は三つ

コミットでは、原因を三つに分けています。どれも、計測で確かめてから潰したものです。

1. 大きさの階段が、三か所で逆行していた

ネタの大きさを、同じ面積の円の半径(等価半径)で並べて比べると、次の三か所で、合体したあとのほうが小さくなっていました。

合体すると、前より小さい塊ができます。いちばん通り道になる「シャリ → 玉子」では、落とした分の半分以上が、その場で消えていました。そこで、大きさの比が 1.19 で、単調に増える階段に組み直しました。

2. 桶に対して、ネタが小さすぎた

9:16 の縦長の桶を、そのまま落下領域にしていたので、実物のすし桶ではなく、縦穴になっていました。桶を、画面の下半分に収まる浅い形にして、上の空いた所には、暖簾(すし積む)と板壁を描きました。デッドライン(これを超えたら負け)は、桶の縁そのものになりました。

3. 大きなネタが、床をすり抜けていた

壁と床の物理的な厚みが、見た目と同じ 12 しかなく、重くなったネタが、一枚板を貫通して桶の外へ落ちていました。厚みを 80 にして、合体で生まれたネタが壁に食い込む場合の位置も丸めました。こぼれたネタを片付ける処理(sweepStrays)も入れてあります。

直したあとの数字

測ったもの直す前直した後
240回落としたときの桶の埋まり方約3分の1—
ゲームオーバーまでの回数到達せず385回(ランク:中堅職人)
得点(同じ条件)7,29810,658

山は縁の手前で上下して、大きな合体で一気に空く。この手のゲームらしい緊張が出ました。得点が伸びたのは、すり抜けて消えていた分が、戻ってきたからです。iPhone SE から 15 Pro Max、横向き、デスクトップで、9:16 が保たれること、はみ出しもエラーも無いこと、満杯の状態で 60fps が出ることを確かめています。

分かったこと

測っているものが、知りたいものとは、限らない。

最初の「89%」は、落下中のネタを数えに入れていたので、「山の高さ」を測れていませんでした。測定の結果が良すぎたときは、数字そのものよりも、何を数えているのかを疑ったほうがいい、と記録しておきます。そのうえで、直したあとの数字は、穴子の記事と同じやり方(自動プレイで何百戦も回す)で、あらためて測りました。

この記事の数字は、コミット(2026年9月7日)の記録から取りました。

この話に出てくるもの

遊ぶ作品ページへ

ほかの記録

コメント

感想や、記事の間違いの指摘は、ここへ。書くには、GitHub のアカウントが要ります。

押すと、giscus(giscus.app)と GitHub に接続します。押さなければ、接続しません。詳しくはあつかいに書いています。