塊魂サイズ計算検証
概要
塊魂シリーズにおいて、モノを巻き込んだ際のサイズの計算方法は作品によって異なることが知られています。
特に『塊魂』(以下「初代」)と『みんな大好き塊魂』(以下「みんな大好き」)の2作品について、
次に述べるような違いが経験的に知られているようです(未検証なので正確には「予想」です)。
初代: モノを巻き込む順序によらず、同じモノを巻き込めば最終サイズが等しい(可換)
みんな大好き: 同じモノを巻き込んでも、モノを巻き込む順序により最終サイズが変化する(非可換)
上の違いを含む既知の現象について、仮説を立てつつ検証を行っていきたいと思います。
最終的に上記2作品のサイズの計算方法を解析することを目標とします。
既知の現象
以下ではサイズ計算について知られている細かい現象についてまとめています。
初代
同じモノを同じ塊のサイズで巻き込んでも、ステージによってサイズ変化が異なることがある
特にサイズが大きくなると増加しにくくなるステージが存在する
例えば「星をつくる4」では、サイズが 1m30cm 付近になるとかなり増加が遅くなる
みんな大好き
飽和サイズ
ステージによっては「それを超えると急激に増加しにくくなるサイズ(飽和サイズ)」がある
初代より明確(極端な変化)で、あるサイズを超えると増加が 0 になることもある
(例)雪だるまステージ
モノを巻き込み続けても 10m 直前でサイズが増加しなくなる
特定のタイミングで大きなモノ(本ステージではマンモス)を巻き込むことで 10m を突破することは可能
同一フレーム巻き込み
同一フレームで複数のモノを巻き込むと、一つずつ巻き込んだ場合より結果が大きくなることがある
巻き込み優先度
モノによって、塊サイズに対する増加量の変化の仕方が異なる
最初のほうに取ると得なものと、後に取ると得なものがある
(例)とにかく大きく5
「2400m 以上で巻き込めるジャンボシロクモ」(以下「2400m クモ」)を早めに巻き込むほうが最終サイズが大きくなるということが知られている
他にも細かい優先度があると考えられている
仮説
初代の計算方法
初代については、上で述べた「可換性」が成立していると仮定すれば、計算方法として考えられるものはかなり絞られます。
おそらく以下のような計算を行っているのではないかと考えています。
塊には常に現在の体積$ Vという値が定められている
ステージごとに体積から直径を計算する関数$ fが固定されており、現在の体積$ Vに対する$ D = f(V)がサイズとして表示されている
各ステージの序盤においては、関数$ fは球の体積を計算する式$ V = \pi D^3/6の逆関数に近いと考えてよい?
特定のステージでは、終盤になるにつれて関数$ fの増加が緩くなると考えられる
各モノにも固有の体積$ vが割り当てられており、これを巻き込むと塊の体積が$ v増加する
みんな大好きの計算方法
「みんな大好き」については、初代ほど単純な計算ではなく、厳密な式の特定は難しいようにも思います。
しかし、経験上の挙動から「直径の増分基準」で計算しているのではないかと考えており、
大まかには以下のような計算を行っているのではないかと仮定します。
塊には常に直径$ Dが定められている
各モノには固有の体積$ vが割り当てられている
直径$ Dの塊で体積$ vのモノを巻き込んだ際の標準増分$ f(D, v)が定義されている
(何も補正がかからない場合、直径$ Dの塊で体積$ vのモノを巻き込むと直径$ D + f(D, v)になるという意味)
ステージごとに、直径$ Dに対して単調減少であるようなステージ補正係数$ c_\mathrm{s}(D)が定められている
モノごとにモノ補正係数$ c_\mathrm{t}が定められている(多くのモノでは$ c_\mathrm{t} = 1)
上記の補正を含めて、直径$ Dの塊で体積$ vのモノを巻き込むと直径$ D' = D + c_\mathrm{t} c_\mathrm{s}(D) f(D, v)に変化する
以上のように仮定しているのは、前述の現象がある程度説明できるためです。
飽和サイズ(雪だるまステージ)
$ Dが 10m 以上のとき常に$ c_\mathrm{s}(D) = 0となると考えればよい
$ c_\mathrm{s}(D) がまだ大きい段階で大きなモノを巻き込めば、一気に$ D' が 10m を超える可能性があるので、現象と矛盾しない
同一フレーム巻き込み
上記計算が1フレームごとに行われており、上記「直径$ Dの塊で体積$ vを巻き込むと~」の$ vは1フレームごとの巻き込みモノの体積の合算値であると考えると説明がつく(詳細略)
巻き込み優先度
「2400m クモ」は素敵コレクションに存在せず、通常の「ジャンボシロクモ」の拡大により作成しているようである(「みんな大好き」には他にも拡大モノがある)
そのため内部的な計算は、通常の「ジャンボシロクモ」として標準増分を計算し、モノ補正係数で「拡大の体積比倍」するという実装になっているのではないか
この場合、塊サイズが小さいほど球体の曲がり具合の影響を強く受け、増分が過大評価された形になることが計算によって分かる(詳細略)
検証
(その他、検証方法を検討中)
(メモ: ポーズ時の「~何個分の大きさ」がヒントになるかも)