最終更新:ID:359ImI00EA 2023年04月12日(水) 15:54:54履歴
セクションはレース全体を24等分したもの。ここではそれぞれのセクション(セクション)をセクション1, セクション2, …, セクション24と番号をつける。
セクションはレース中の様々な処理の範囲として使われる。
1セクション毎に賢さ乱数を更新する。
セクション1〜セクション10:ポジションキープが行われる。
セクション2〜セクション9:掛かる場合の掛かり発動位置がこの間のランダムな位置になる。
[1セクション幅] = [距離] / 24 [m] |
1セクション毎に賢さ乱数を更新する。
セクション1〜セクション10:ポジションキープが行われる。
セクション2〜セクション9:掛かる場合の掛かり発動位置がこの間のランダムな位置になる。
元ステータスで1200を超過した分は効果値が半分になる。スキル補正などはその上から掛かるらしい。
1600 + 緑スキル(40) = 1200 + 400 / 2 + 40 = 1440
1600 + 緑スキル(40) = 1200 + 400 / 2 + 40 = 1440
[補正スピード値] = [元スピード値] × [やる気補正] × [コース補正] + [バ場補正] + [育成補正] + [スキル補正] [補正スタミナ値] = [元スタミナ値] × [やる気補正] + [育成補正] + [スキル補正] [補正パワー値] = [元パワー値] × [やる気補正] + [バ場補正] + [育成補正] + [スキル補正] [補正根性値] = [元根性値] × [やる気補正] + [育成補正] + [スキル補正] [補正賢さ値] = [元賢さ値] × [やる気補正] × [脚質補正] + [育成補正] + [スキル補正] |
やる気補正 | 絶好調 | 好調 | 普通 | 不調 | 絶不調 | |||
1.04 | 1.02 | 1.00 | 0.98 | 0.96 | ||||
脚質補正 | S | A | B | C | D | E | F | G |
1.1 | 1.0 | 0.85 | 0.75 | 0.6 | 0.4 | 0.2 | 0.1 | |
育成補正 | 育成 | それ以外 | ||||||
400 | 0 | |||||||
バ場補正 | 芝 | 良 | 稍重 | 重 | 不良 | |||
スピード | 0 | 0 | 0 | -50 | ||||
パワー | 0 | -50 | -50 | -50 | ||||
ダート | 良 | 稍重 | 重 | 不良 | ||||
スピード | 0 | 0 | 0 | -50 | ||||
パワー | -50 | -50 | -100 | -100 |
ポジションキープではセクション1〜セクション10の間で条件を満たすと通常モードから脚質によって以下のモードに移行する。
このときの脚質は掛かりによって影響を受ける。
モードによって目標速度や体力消費量などに影響を与える。
移行判定後は移行したかに関わらず、次の移行判定までに最低2秒クールダウンする。
非通常モードから通常モードの移行後に1秒と次の移行判定の2秒で計3秒クールダウンする。
このときの脚質は掛かりによって影響を受ける。
脚質 | 移行モードの種類 |
大逃げ | ・ペースアップExモード ・スピードアップモード ・追い抜きモード (掛かりで逃げになった場合はスピードアップモード) |
逃げ | |
先行 | ・ペースアップExモード ・ペースアップモード ・ペースダウンモード |
差し | |
追込 |
移行判定後は移行したかに関わらず、次の移行判定までに最低2秒クールダウンする。
非通常モードから通常モードの移行後に1秒と次の移行判定の2秒で計3秒クールダウンする。
脚質の前順は先頭から
逃げ > 先行 > 差し > 追込
レース中の先頭脚質は逃げ、逃げがいなければ先行、先行もいなければ差し、差しもいなければ追込
自身より後方脚質は先行で言えば差しと追込、差しで言えば追込
逃げ > 先行 > 差し > 追込
レース中の先頭脚質は逃げ、逃げがいなければ先行、先行もいなければ差し、差しもいなければ追込
自身より後方脚質は先行で言えば差しと追込、差しで言えば追込
[係数] = 0.0008 × ( [距離] - 1000 ) + 1.0 先行:[下限] = 3.0 [m] :[上限] = 5.0 × [係数] = 4.0 × [距離] / 1000 + 1.0 [m] 差し:[下限] = 6.5 × [係数] = 5.2 × [距離] / 1000 + 1.3 [m] :[上限] = 7.0 × [係数] = 5.6 × [距離] / 1000 + 1.4 [m] 追込:[下限] = 7.5 × [係数] = 6.0 × [距離] / 1000 + 1.5 [m] :[上限] = 8.0 × [係数] = 6.4 × [距離] / 1000 + 1.6 [m] |

大体こんな感じの範囲になる。
馬群もこんな感じになる。
優先順位は上から
ペースメーカはよくわからないけど多分先頭にいるウマ娘のこと?。
自分より前の順位に自分より後方脚質がいるとき、自分が前に行こうとするのがペースアップExモード?。
ペースアップExモードの終了条件
自分より前の順位に自分より後方脚質がいないとき
または移行してから1セクション進んだとき
スピードアップモードの終了条件
2位との距離が4.5m(単騎逃げ:12.5m・大逃げ17.5m) 以上になったとき
または移行してから1セクション進んだとき
追い抜きモードの終了条件
同脚質(掛かりなら変化後脚質)内で2位以下のとき継続
(元同脚質が2人以上なら)元同脚質内の2位のウマ娘と10m(大逃げ:27.5m)差をつけたとき
または移行してから1セクション(大逃げ:3セクション)進んだとき
ペースアップモードの終了条件
先頭脚質内の1位(ペースメーカに変更?)との距離差が脚質毎の[上限]〜[下限]間のランダムな距離以下になったとき
または移行してから1セクション進んだとき
ペースダウンモードの終了条件
速度アップスキルを発動したとき
先頭脚質内の1位(ペースメーカに変更?)との距離差が脚質毎の[上限]〜[下限](中盤は[下限]〜( [下限] + [上限] ) / 2?)間のランダムな距離以上になったとき
または移行してから1セクション進んだとき
脚質 | 移行条件 | 移行確率 | 移行モード |
大逃げ | 自分より前に自分より後方脚質がいるとき | 100% | ペースアップExモード |
掛かり & 1位で2位との距離が17.5m以下なら | 100% | スピードアップモード | |
1位で2位との距離が17.5m以下なら | [確率A] | ||
掛かり & 2位以下なら | 100% | 追い抜きモード | |
2位以下なら | [確率A] | ||
逃げ | 自分より前に自分より後方脚質がいるとき | 100% | ペースアップExモード |
掛かり & 1位で2位との距離が4.5m(単騎逃げ:12.5m)以下なら | 100% | スピードアップモード | |
1位で2位との距離が4.5m(単騎逃げ:12.5m)以下なら | [確率A] | ||
掛かり & 2位以下なら | 100% | 追い抜きモード | |
2位以下なら | [確率A] | ||
先行 差し 追込 | ペースメーカーが自分より後方脚質のとき | 100% | ペースアップExモード |
掛かり & 先頭脚質内の1位との差が[上限]以上のとき | 100% | ペースアップモード | |
先頭脚質内の1位との差が[上限]以上のとき | [確率B] | ||
速度アップスキルが発動しておらず 自身がレース先頭脚質内の1位ではなく レース先頭脚質内の1位との差が[下限]未満のとき | 100% | ペースダウンモード | |
全脚質 | どれにも当てはまらないとき または移行確率を外したとき | 100% | 通常モード |
自分より前の順位に自分より後方脚質がいるとき、自分が前に行こうとするのがペースアップExモード?。
ペースアップExモードの終了条件
自分より前の順位に自分より後方脚質がいないとき
または移行してから1セクション進んだとき
スピードアップモードの終了条件
2位との距離が4.5m(単騎逃げ:12.5m・大逃げ17.5m) 以上になったとき
または移行してから1セクション進んだとき
追い抜きモードの終了条件
同脚質(掛かりなら変化後脚質)内で2位以下のとき継続
(元同脚質が2人以上なら)元同脚質内の2位のウマ娘と10m(大逃げ:27.5m)差をつけたとき
または移行してから1セクション(大逃げ:3セクション)進んだとき
ペースアップモードの終了条件
先頭脚質内の1位(ペースメーカに変更?)との距離差が脚質毎の[上限]〜[下限]間のランダムな距離以下になったとき
または移行してから1セクション進んだとき
ペースダウンモードの終了条件
速度アップスキルを発動したとき
先頭脚質内の1位(ペースメーカに変更?)との距離差が脚質毎の[上限]〜[下限](中盤は[下限]〜( [下限] + [上限] ) / 2?)間のランダムな距離以上になったとき
または移行してから1セクション進んだとき

勾配(%) = [垂直距離] / [水平距離] × 100 [%] |
高低差200mの坂は東京競馬場にある坂で水平距離は大体150mなので200 / 150 × 100で133%の勾配である。
(実際は2mなので2 / 150 × 100で1.3%の勾配)
勾配(rad) = arctan( 垂直距離 / 水平距離 ) [rad] 勾配(度) = arctan( 垂直距離 / 水平距離 ) × 180 / π [°] |
いわゆる角度。直感的にはこっちの方が分かりやすい。
高低差200mの坂はarctan( 200 / 150 ) × 180 / πで53°の勾配である。
(実際は2mなのでarctan( 2 / 150 ) × 180 / πで0.76°の勾配)
相互変換
勾配(度) = arctan( 勾配(%) / 100 ) × 180 / π [°] 勾配(%) = tan( 勾配(度) × π / 180 ) × 100 [%] |
上り坂のとき、目標速度がパワーに反比例して下がる。
[上り坂補正] = -勾配(%) × 200.0 / [補正パワー値] [m/s] = -tan( 勾配(度) × π / 180 ) × 100 × 200.0 / [補正パワー値] [m/s] |
下り坂では、1秒ごとに [補正賢さ値] × 0.04 [%] で下り坂モードに移行、または下り坂モードなら 20% で終了する。
下り坂でも下り坂モードに入ってなきゃ補正は受けられない。
下り坂のとき、下り坂モードに入ると目標速度が上がる。体力消費量も0.4倍になる。
[下り坂モード補正] = 勾配(%) / 10.0 + 0.3 [m/s] = tan( 勾配(度) × π / 180 ) × 100 / 10.0 + 0.3 [m/s] |
坂の配置と勾配は多分史実に合わせているはず。
ただし過去に特定のコースの特定の距離で坂がなかったり、史実にないよくわからない坂判定があったりするので注意。
昔は勾配によって坂の判定を決めていた(阪神や東京は上り坂はあるのに下り坂がないためバベルの塔と化していた)が、現在は位置によって坂を区別している。
また、仕様変更によって回復以外の坂スキルは上り坂スキルならレース全体の上り坂からランダム、下り坂スキルならレース全体の下り坂からランダムになった。
回復系の坂スキルは従来通り上り坂スキルなら一番最初の上り坂(の入り)、下り坂スキルなら一番最初の下り坂(の入り)に発動する。
代表的な坂(ゴールから遠い順)(全部およその値)
中山 | 東京 | 京都 | 阪神 |
上り坂(200m):0.71°(1.24%) 下り坂(360m):0.76°(1.33%) 上り坂(110m):1.26°(2.2%) | 下り坂(610m):0.18°(0.31%) 上り坂(90m):1.08°(1.89%) 下り坂(250m):0.58°(1.01%) 上り坂(150m):0.76°(1.33%) | 上り坂(110m):1.05°(1.83%) 上り坂(250m):0.44°(0.77%) 下り坂(150m):1.34°(2.34%) | 上り坂(90m):0.3°(0.52%) 下り坂(410m):0.19°(0.33%) 上り坂(100m):1.04°(1.82%) |
スタートすると初速度 3[m/s] から加速し始め、 [基準速度] × 0.85 [m/s] に達するまで +24[m/s2] の圧倒的加速度補正が入る。(通常の加速度は0.3〜0.4ぐらい)
[基準速度] × 0.85 [m/s]を超えたフレームで速度は [基準速度] × 0.85[m/s] に丸め込まれ、基本的に次のフレームは最低速度未満なので最低速度になる。#最低速度
[基準速度] × 0.85 [m/s]を超えたフレームで速度は [基準速度] × 0.85[m/s] に丸め込まれ、基本的に次のフレームは最低速度未満なので最低速度になる。#最低速度
[出遅れ秒数] = random( 0, 0.1 ) × [スキル補正] [s] |
<超遊び癖>は0.1秒に固定、<アタシに指図しないで!!!>は0.085秒に固定。
その上で<集中力>は0.9倍、<コンセントレーション>は0.4倍、<ゲート難>は1.5倍にする。
0.08秒を超えると「!出遅れ」と表示される。
レースの計算は1秒間に15回しか行われないため、出遅れの影響は1F(0.0666…秒)以下か以上かで大きく変わる。
![]() ^赤線が0.0666秒、青線が0.0667秒のパワー1200・根性600・逃げのスタート1秒間(15F)の速度と距離 |
![]() |
![]() 出遅れとステルス出遅れ |
[スパート必要体力] = ( [残り距離] - 60 ) / スパート基準目標速度 × [スパート基準目標速度の体力消費量] [HP] |
[スパート必要体力] > [現在体力](常にスパート速度でゴール60m手前まで走ると体力が持たない)なら
[スパート基準目標速度]を[スパート基準目標速度]から[終盤の基準目標速度]まで 0.1[m/s] ずつ下げていき、そのときの[スパート基準目標速度]と[スパート開始位置]を記録する。
[ゴール予測タイム] = [スパート開始位置] / [スパート基準目標速度] + ( [残り距離] - [スパート開始位置] ) / [終盤基準目標速度] [s]? |
[ゴール予測タイム]が早い順に15 + 0.05 × [補正賢さ値] [%]の判定を行い成功したときの[スパート基準目標速度]を採用して[スパート開始位置]でスパートを開始する。
スパート開始位置?
[スパート開始位置] = [現在体力] × [スパート基準目標速度] / [スパート基準目標速度の体力消費量] + 60 [m]? or [スパート開始位置] = ( [現在体力] - ( [残り距離] - 60 ) × [終盤基準目標速度] / [終盤基準目標速度の体力消費量] ) × ( [スパート基準目標速度] × [終盤基準目標速度の体力消費量] + [終盤基準目標速度] × [スパート基準目標速度の体力消費量] ) / ( [終盤基準目標速度の体力消費量] + [スパート基準目標速度の体力消費量] ) + 60 [m]? |
結論:最速スパートが重要なので最速スパートできるようなスタミナと回復スキルを用意しよう!
[前視野距離] = 20 + [スキル補正] [m] [横視野距離] = ( 11.5 × 相対距離 / 視野距離 + 2 ) / 2 [ウマ幅] |
![]() |
金視野スキル+15m
視野が伸びるとより前を見えるようになるが横は相対的に狭くなるところがある。(青線)
自分の前をブロックしているウマと視野内にいる以下の条件を全て満たしたウマは追い越し対象に加わる。
- 前1m〜20mの範囲にいる
- 自分の目標速度 > 相手の目標速度(相手が前をブロックされてるなら、自分の目標速度 > 相手の現在速度)
- 現在速度差 × 15 > 距離差(今の速度差なら15秒以内に追い付ける)
基準速度 | コースの距離によって決められた定速度 |
基準目標速度 | 基準速度・スピード(距離適性)・賢さ乱数に脚質やフェーズなどのレース展開に左右されない要素を加えた速度 |
目標速度 | 基準目標速度にレース展開(ポジションキープやスキル、坂等々)を加えたレースで実際に使用される最高速度 一般的な速度スキルはこれを上げる |
現在速度 | レース中に加減速の基準になる速度 これが目標速度未満なら加速、目標速度以上なら減速することで目標速度を保とうとする |
最終現在速度 | レースに実際に使われる速度 現在速度に現在速度系スキル(一般的な速度デバフスキルと一部の速度スキル)を加えた速度 速度デバフで最終現在速度が下がると減速なしでそのまま速度が下がり、効果が切れれば加速なしでそのまま速度が戻る |
[スパート基準目標速度] = ( [基準目標速度] + 0.01 × [基準速度] ) × 1.05 + [スピード速度補正値] + [根性速度補正値] [m/s] = [基準速度] × ( [脚質補正] + 0.01 ) × 1.05 + [スピード速度補正値] × 2.05 + [根性速度補正値] [m/s] |
ただしラストスパートにある通り、体力が足りずフルスパートでないと[スパート基準目標速度]は上記より低くなる。
同ステータスで基準速度が20m/sの場合の各脚質の基準目標速度は先行を基準にすると次のようになる。
脚質補正 | 大逃げ | 逃げ | 先行 | 差し | 追込 |
基準目標速度差[m/s] | -0.525 | -0.273 | 0 | +0.399 | +0.525 |
#スピード速度補正値
[スピード速度補正値] = √( 500.0 × [補正スピード] ) × [距離適性] × 0.002 [m/s] ≃ √[補正スピード] × [距離適性] × 0.0447 [m/s] |
速度補正 | S | A | B | C | D | E | F | G |
---|---|---|---|---|---|---|---|---|
距離適性 | 1.05 | 1.0 | 0.9 | 0.8 | 0.6 | 0.4 | 0.2 | 0.1 |
終盤以降の基準目標速度に使用される。
#根性速度補正値
[根性速度補正値] = ( 450 × [補正根性値] )0.597 × 0.0001 [m/s] ≃ 0.00384 × [補正根性値]0.597 [m/s] |
ラストスパートの基準目標速度に使用される。
簡単にいうと最高速度。レース中にかなり細かく変動する。
目標速度に達していない場合には加速して、オーバーした場合には減速することで目標速度を維持するように走る。
#坂
目標速度に達していない場合には加速して、オーバーした場合には減速することで目標速度を維持するように走る。
[目標速度] = ( [基準目標速度] + [賢さ乱数] × [基準速度] ) × [ポジションキープ補正] + [内側移動補正] + [スキル補正] + [坂補正] + [レーン移動スキル補正] + [位置取り争い] + [追い比べ] [m/s] |
モード | 通常 | ペースアップEx | スピードアップ | 追い抜き | ペースアップ | ペースダウン |
ポジションキープ | 1.00 | 2.00 | 1.04 | 1.05 | 1.04 | 序盤:0.915 中盤:0.945 |
上り坂 | 下り坂モード | |
坂補正 | -勾配(%) × 200.0 / [補正パワー値] | 勾配(%) / 10.0 + 0.3 |
[体力消費量] = 20.0 × ( [最終現在速度] - [基準速度] + 12.0 ) ^ 2 / 144.0 × [ウマ状態補正] × [バ場状態補正] × [坂補正] × [根性消費量補正値] [HP/s] |
#根性消費量補正値
[根性消費量補正値] = 1 + 200 / √( 600 × [根性] ) = 1 + 8.165 / √[根性] |
実際には二乗に依存するので速度が上がれば上がるほど一気に体力消費量は増える。
終盤に入ると終盤補正で消費量が増加するため、後半に捲る脚質の方がスタミナの必要量が多くなる。
そのため全体としてスタミナ必要量は大体 大逃げ ≧ 先行 > 追込 ≧ 差し > 逃げ の順になる。
トップに戻る |
このページへのコメント
位置取り調整とかスタミナ勝負とかも説明した完全版出してくれないかな
15回/1sとはいえ、これだけの演算量があるにもかかわらず、レーススキップすると一瞬。
結果が先に決まって過程(レース内容)が後付けで決まるくらいに思ってた。これくらい大した計算量じゃないって事?
描画しなくていいなら一瞬で終る
ラストスパート時、レース毎に定められた加速区間内でしか加速は出来ない仕様でもあるのかね?その加速区間内で最高速に到達できなかったら、到達できた速度がそのレースにおける最高速度になるってこと。
そうでもしなけりゃ、スピスタ500好調の先行が、スピスタ300絶好調の差しに2400で、ゴール前で差し切られるなんてあり得ないと思うんだが?
・先行側がかかったり速度スキルや追い比べが出てスタミナが不足した
・差し側のスキルや追い比べが強かった
・下り坂の上振れ下振れでスタミナ差が逆転した
・(東京2400の話かな?という前提で)終盤の登り坂でパワー差が影響した
・モブロック
その時の詳しい状況がわからんからなんとも言えないけど、あり得ないなんて事はないと思うな
細かいけど「レース処理は1秒間に15回(0.066…秒に1回:1f = 0.066…秒)行われる。」は誤りで正確には0.0666[s]の約15fps
ソース:ttps://twitter.com/umamusu_reveng/status/1405911937418858503
いつの間にかめっちゃ見やすい&分かりやすくなってた。
お疲れさんやで