Instructions Game Logic Details
Meisyo+では試合ロジックを公表しています。
全体処理
初期設定
オモテチーム、ウラチーム、試合環境など試合開始に必要なデータを読み込みます。試合終了処理
試合終了時にデータを保存します。イニングごとの処理
イニング開始処理
守備チームから、投手・守備・ベンチを読み込みます。攻撃チームから、打順・打者・打者リストを読み込みます。
イニング終了処理
攻撃チームと守備チームを一時保存します。一球処理
塁設定
塁上のランナーを設定します。選手HP補正
試合に出場しているすべての選手HPを計算、ステータスに反映します。 投球、守備、打撃ごとにHPが減少します。* 走塁、盗塁によって体力が減少することはありません。
状況表示
投手HP・ステータス、打者ステータス、ランナーなどを表示します。属性効果発動
投手・野手の属性値(心・技・体)の組み合わせにより、打者の能力値(ミート・パワー・反応)を加減します。スキル反映
スキル効果を反映します。一球表示(通常表示)のとき、発生タイミングが特定のスキルが発動すると画面に表示されます。
配球結果呼び出し・配球選択
今までの配球結果を呼び出します。投手ごとに設定した通りに配球を選択します。
投球座標設定(開始点)
投球モーションごとに異なる投球開始点が設定されます。身長により補正されます。
投球ステータス設定
投球の初速、各種変化球の変化量・キレ量を設定します。投球座標設定(終了点)
投球する位置を設定します。基本的にストライク位置であり、ストライクかボールか際どい位置に設定されます。
打者スイング・ミートポイント設定
打撃モーションごとに異なるミートポイントが設定されます。投球コースの内外によりスイングタイミングが変動します。打者が自分から見て外の球であるほど、待って(流し打ち傾向で)打ちます。
投球が速球の場合、その速度によりスイングタイミングが遅くなります。振り遅れると一切当たりません。
ミートポイントが、打者のミート値に応じて少しブレます。
ミートポイントが、投球コースの難易度に応じてブレます。つまり、制球のよい投手であるほど際どいコースに投げ分けられるため、打ちにくくなります。
ミートポイントが、投球の変化量と打者のミートの差異に応じてブレます。
ミートポイントが、投球のキレと打者の反応の差異に応じてブレます。
ミートポイントが、投球が速球の場合少しブレます。
打者待ち球設定
今までの配球結果から、次に待つ球種を選択します。投手コントロールミス判定
制球により確率で失投が発生します。失投になると、投球球種・待ち球が速球(0)に、投球位置(終了点)・ミートポイントがど真ん中に変更されます。
打者スイング判定
待ち球と変化前の投球終了位置から、ストライクかどうかを判定します。ストライクならスイングするか判定します。
カット・バント判定
状況から、バントを行うかどうか判定します。バントを行わない場合、待ち球が実投球と違っていた場合、カットするか判定します。
実投球実施・投球移動計算
投球開始点から投球を移動させます。スイング計算
スイングするバットの移動状況を計算します。簡易ストライク計算
投球を投球終了点まで移動を行い、投球がストライクであるかどうかを判定します。打撃判定
投球とバットが接触するかどうかを判定します。打球ベクトル設定
投球とバットが接触する場合、打球のX・Y・Z座標のベクトルを計算します。バットの反発係数は金属バット程度(0.40)に設定されています。
守備処理
打球を球場に飛ばし、守備処理を行います。重力加速度は地球(9.81)です。微分で落下点を計算し、落下点間の球の移動(バウンド処理)を複数回(最大100回)行います。空気抵抗を加味(地球)しています。
1回でもバウンドした場合ゴロ、していなければフライ(打球角度が浅い場合はライナー)として処理されます。
守備者は「それぞれの落下点まで直線・加減速なしで到達できる」として計算しています。
また、守備者は打球の高さが0~2m以内でのみ捕球可能です。捕球可能範囲は守備能力によって変動しません。
エラーは確率で発生します。発生すると、その選手はバウンド処理を1回無視されます。
守備時の送球はアウトにできる最大の塁に投げます。現実味がない送球(例:ダブルプレイで本塁 → 2塁)も実行されます。
走塁は最良のところまで行き暴走しません。