きららファンタジア、タイムライン関係まとめ
夏の超高難易度クエストは当然のように何度も何度も挑戦を繰り返してようやくクリアしたのですが、事前にシミュレートできれば少しは楽だったのかなと思いました。
タイムラインをシミュレートするためにはタイムラインに関する仕様を集めないといけないのですが、まとまった記事とかは見当たらなかったので、集めた知見を書き記そうと思います。
「集めた知見」とはいえ、9割以上は他の方が検証してくださったものを引っ張ってきただけなので、何か問題あれば消します。
0. 用語の定義
0.1. タイムライン
キャラクターの行動順を示したもの。タイムライン上で最も画面右側にいるキャラクターが行動権を持つ。
0.2. SPD
キャラクターが持つステータスの1つ。クリエメイトやエネミーだけでなく、スキルカードもSPDを持つ。
0.3. 硬直値
行動毎に設定されている値のこと。硬直値が大きければ大きいほど、タイムラインの左側に移る。きらファンWikiの「硬直」の数値である。
0.4. 行動値
キャラクターのSPDと、行動の硬直値から計算される値のこと。キャラクターがその行動をとると、その行動値ぶんだけ左に移る。
1. 行動値
参考:きらファン計算機
キャラ(スキルカード含む)が行動を行うと、キャラ&行動に対応する位置に移動する。タイムラインは1次元であり、行動したキャラクターは現在の位置に行動値を足した位置に移動する。
行動値は以下の式で求められる。
最終的に上記の値を切り捨てて整数にする。
行動値は必ず15以上500以下になる。この範囲を逸脱した場合、この範囲に最も近い値になる。すなわち、15未満にはならないし、500より大きくはならない。
「スキル硬直減少値」は2020年8月現在「クイックドロウ」によってしか付与されない。
行動基数とはSPD値から求められる値である。
SPD なら、SPD なら である。なお行動基数は必ず0以上100以下になる。
2. 初期位置
参考:きらファン計算機
新たなWAVEに移行した時、すべてのキャラクターの位置は0になる。
その後、スキル硬直値の行動を行ったときと同じ値に移動する。なお、このとき「クイックドロウ」によるスキル硬直減少は反映されない。SPD変化は反映される。
同じ硬直値を持つキャラが複数いた場合、「クリエメイト」→「敵キャラ」の順に配置される。クリエメイトどうしの場合、画面左側に近いクリエメイトが先に行動するよう配置される。
3. とっておき関係
参考
とっておき版見つけたけどこれも古い&長いね。
— 紅葉 (@meister5036) 2020年4月21日
とっておきゲージ消費は仕様変更入ったし最初の方に移動。
サポートの残りターン消費&帰宅判定は、スキルの時の説明と同じくスタン判定の手前に来る。 https://t.co/qdRaeUhMPH
3.1. 移動先
とっておきを使用したキャラクターは、そのとき先頭にいるキャラクターの位置を基準として移動をする。
例えば、キャラAとキャラBがとっておきを2連鎖で使うシーンを考える。キャラAは先頭に居たため位置は0、キャラBが30の位置にいたとする。キャラAのとっておき使用による行動値は60、キャラBのとっておき使用による行動値が15だとする。すると、この行動によってキャラAは先頭(0)から60へと移動する。キャラBは今居た位置(30)ではなく、先頭(0)から移動するので、15へと移動する。
移動する順番はとっておきを使用した順番と同じになる。すなわち、キャラAが先頭にいる状態でキャラA,Bのとっておき連鎖をB→Aの順で行ったとすると、まずキャラBを移動させ、次にキャラAを移動させる。
3.2. SPD変化が反映されるタイミング
通常と異なり、とっておきによるSPD変化が入った状態で行動値が計算される。
3.3. 相手がスタンしたときのノックバック距離計算
とっておき連鎖(1連鎖含む)によって相手がスタンした場合、先頭キャラの行動値のみがノックバック距離計算に用いられる。
先頭キャラがとっておき連鎖に参加していなかった場合、先頭キャラのSPDを参照し、硬直で行動値を計算し、それを用いる(?)。
3.4. サポートがとっておき連鎖の直後に帰った場合
行動値はサポートが帰ったあとにそこに戻ってくるキャラクターの硬直値、SPD(?)を参照する。 ただし、スタンのノックバック距離計算は硬直値、戻ってくるキャラクターのSPD(?)を参照する。ただしサポートが帰った後に交代するキャラクターが居ない場合、サポートのキャラクターの行動値を参照してノックバック距離計算を行う。
4. SPD変化が反映されるタイミング
SPD変化スキルを使用した場合、そのスキル使用による行動値計算にその変化は反映されない。先に行動値が計算され、その後SPD変化が入る。
しかし、とっておきの場合はとっておきによる効果を先に入れ、その後行動値を計算する。ゆえにとっておきでSPDが変化した場合、そのSPD変化込みで行動値計算が行われる。
5. スタンによるノックバック
参考
盲点だったのは小数点の存在。
— 紅葉 (@meister5036) 2020年1月19日
通常の硬直値計算は最後に小数点切り捨てするので、42.7でも42.0でも42となり小数点は出ない。
が、スタン絡みの計算はおそらく小数点切り捨てしていない。
硬直値41の攻撃でスタン=41×0.5=20.5
硬直値41の攻撃でスタン中追い討ち
=41×0.2=8.2
のように小数点が出る。
スタンした場合、スタンした攻撃による行動値だけ後ろに下がる。とっておき連鎖によってスタンした場合、タイムラインの先頭にいるキャラのとっておきによる行動値のみが参照される。
またスタン中に自分にとって不利な属性からの攻撃を受けた場合、その行動による行動値 だけ後ろに下がる。
またスタン関係の計算は小数切り捨てをせず、それ以降タイムラインの位置は小数を含んだまま扱う。
6. 同じ位置に移動した場合
参考
この間ソースコード読んで確かめたけど、行動する時とスタンや追撃で飛ばされる時は確かに違うコードが作動してる
— Haidong Gong (@UCieloSereno) 2020年1月19日
簡単に言うと片方は自分より大きい数字に当たるまでどんどん超えていくけど
もう片方は自分より小さい数字だけを超えていくので
同位置になる場合、違う結果が見えるというわけ
通常は、先にその位置にいたキャラクターが先に行動する。スキルカード設置も同じく、先にその位置に居たキャラクターが先に行動する。
スタンによる移動の場合は反対に、後からその位置に来たキャラクターが先に行動する。
7. スキルカード設置場所
スキルカードを設置したキャラクターのSPDを参照し、スキルカードのスキルによる硬直値によって算出された行動値の場所に置かれる。
なお、きららスキルによるスキルカード設置の場合、タイムライン先頭のキャラクターのSPDを参照する。
また、スキルカードにはSPD変化は適用されない。ゆえに、例えば専用ぶきを装備したチノのSPDは、元々の値(コンテンツ施設等すべてLv.10で126)になる。