
全部取って、全部よけた1,552mより、人間は72m先を走っていた|おはようカノジョ #303
はじめに
「おはようカノジョ」は、AIイラストの彼女が毎朝7:30にいってらっしゃいを言ってくれるXアカウント。生成AIや個人開発について、開発日記を毎日書いている。
心野けいかさんが作ったゲーム「ふみまる20秒ラン」。ハムスターのふみまるが20秒間走って、その距離を競う。
タップでジャンプ。チーズを取ると加速。赤いチーズで2倍速。ブラウザで、登録なしで遊べる。
けいかさんは今、このゲームで大会「最速王決定戦」を開いている。(10月4日 23:59まで)
僕は、これでどこまで伸ばせるかを試してみたくなった。
全部取って、全部よけた
僕の案は単純だった。
「事前に計画してタップイベント発生させればいけるちゃう?」
コースは毎回同じ。なら、どこで跳ぶかは先に決められる。決めた時刻どおりにタップを送れば、手のぶれも無い。
計画したのは、チーズを全部取って、障害物を全部よけて、穴にも落ちない走り方。
プレイ中に AI が画面を見て判断しているわけではない。先に決めた時刻にタップを送っているだけ。ゲーム本体にも手は入れていない。
結果は 1,552m。チーズ27個。ぶつかった0回。落ちた0回。
ところが、結果画面の横のランキングを見ると、1位は 1,624m。
全部取って、全部よけた走りより、72m 先を人が走っている。
「え、1,624 とかおるんだがw」
なんで?
澪に解析を任せた
全部取って、全部よけた走りより、先を走っている人がいる。
細かい操作の差なのか。
それとも、別の走り方があるのか。
ここからは、澪(Claude)に解析を任せた。澪は、僕が Claude Code につけた名前。
まず、ジャンプのタイミングを少しずつ前後にずらして試してもらった。
少しは伸びる。
でも、1位には届かない。
どうやら、細かいタイミング調整だけで埋まる差ではなさそうだった。
そこで次に、ゲームの中で速さがどう計算されているかを見てもらった。
引っかかったのは、坂だった。
坂の上では、速さに補正がかかる。下り坂は最大1.2倍、上り坂は0.8倍
補正が変わるのは、地面にいるときだけ
空中では、跳ぶ直前の補正がそのまま残る
つまり、下り坂で速くなったまま跳べば、その速さを空中へ持ち出せる。
上り坂も、空中で越えれば遅くならない。
それなら、着地するたびに跳び続ければいい。
澪にそれも試してもらうと、今度は別の問題が出た。
穴に落ちる。
チーズを取り逃す。
障害物に当たる。
跳び続けるだけでは足りなかった。
どこで跳び続けて、どこで地面に降りるか。
澪には、地面にいる瞬間ごとに「跳ぶ/跳ばない」を先読みして、有望な走り方を数百通り追いかけてもらった。
最初に見つかった走り方は、赤いチーズを取らずに走っていた。
目先の距離だけで候補を絞ると、赤いチーズを取りに行く走り方が早めに切り捨てられていた。
そこで、赤いチーズを取る走り方を優先するように条件を調整して、もう一度探し直した。
その走り方を、実際のゲーム画面で走らせた。
1,710m。
ぶつからず、落ちず、チーズも全部。赤いチーズも取れている。
この記録はランキングには登録していない。
▼ プレイ動画
差のほとんどは、坂だった
澪に、この走り方で一番効いていたものを聞いた。
返ってきたのは、これだった。
「下り坂でもらった1.2倍を、地面に降りずに持ち続けること」
澪は、全部取って全部よけた走りと、この走りを1秒ごとに並べて見せてくれた。
坂の補正の平均:1.10倍と1.00倍
空中にいた時間:81%と64%
下り坂では最大1.2倍まで上がる。ただし20秒全体で平均すると、今回の走りは1.10倍だった。
距離の差は約1割。坂の補正の差と、ほぼ同じ大きさだった。
下り坂で補正をもらう。着地した瞬間に、また跳ぶ。上り坂は空中で越える。
ジャンプは、速さを運ぶ操作だった
ジャンプは、障害物をよけるための操作に見える。でも、このゲームでは速さを運ぶ操作にもなっていた。
けいかさんの10月1日の途中経過の記事でも、キャラクターのミソマルが「理論上の最高到達距離」を 1,459m と予測していた。その時点の1位は 1,609m。記事の中では「計算上、存在しない150m」と書かれている。
予測を超えて走っている人は、もういた。
人の手でやるなら
自動操縦の動きを、人の手でそのまま再現するのはかなり難しい。
空中で押したタップは無視される。1/60秒早く押すだけでジャンプが出ず、連続ジャンプが切れる。切れたところで、穴や障害物に当たる。
なので、人の手でも使えるところだけを置いておく。
1. チーズは12個目で打ち止め
チーズ1個ごとにスピードが1段上がり、12段で最高速。13個目からは速さに効かない。最高速に届いたら、危ない位置のチーズは捨ててもいい。
2. 赤いチーズはジャンプのてっぺんで取る
てっぺんに近いほど、2倍速が長く続く(約1.3〜2.4秒)。
3. 下り坂は地面を走る
下りに入ってすぐ跳ばない。地面を走っているあいだに補正が上がる。
4. その加速を、ジャンプで持ち越す
着地した瞬間に、また跳ぶ。地面にいる時間が短いほど、補正が残る。
5. 上り坂は空中で越える
上り坂に入る前に跳んでおく。
6. 連続ジャンプは少し遅めに
遅れて押すと、地面にいる時間が少し増えるだけ。早く押すと、ジャンプそのものが出ない。
早押しの失敗のほうが痛い。
おわりに
大会「ふみまる20秒ラン 最速王決定戦」は、10月4日23:59で終了した。
途中経過では何度も順位が動いていて、僕が見ていたときの1位も、最初に気づいた1,624mからさらに伸びていた。
僕の1,710mは、ランキングには登録していない。
今回やりたかったのは、記録を取りにいくことよりも、
「なぜ人の手が、僕の考えた“完璧”より先まで走れるのか」を確かめることだった。
調べてみると、答えはジャンプそのものではなく、
下り坂でもらった速さを、どこまで消さずに運べるかにあった。
大会は終わった。
でも、ふみまる20秒ランの見え方は、始めたときよりずっと変わった。
ただ跳ぶだけだった操作が、
今は「速さを運ぶ操作」に見えている。
関連記事
▼ふみまる20秒ラン「最速王決定戦」
▼最速王のリンファさんの記事
🌱この記事の推し庭
🐓 クリックして、はしゃもの庭を育ててね 👇️

月子の一言

記録はもう出そろったわね。
あとは、何が速さを分けたのか見ていきましょう。
👉「おはようカノジョ」は @ohayo_kanojo で毎朝7:30に投稿しています
#ふみまるラン #ふみまる20秒ラン #ゲーム攻略 #ランゲーム #ブラウザゲーム #AI活用 #生成AI #個人開発 #開発日記
#ChatGPTCreativeClub
#アカリウム
#創作あそびUP系