スケジュール終点から別路線のスケジュールへジャンプする機能 - teamhimeh/simutrans GitHub Wiki

スケジュール終点から別路線のスケジュールへジャンプする機能

v45より追加された、スケジュールの終点から別の路線のスケジュールへ自動でジャンプ(所属路線を変更して運転継続)する機能です。従来のスケジュールの設定上限であった254駅以上に停車する路線や、甲種輸送後に営業路線に自動で投入する場合などに導入できます。

使い方

スケジュールウィンドウの詳細部分の下の方に、Next_line:という項目があります。

ここからスケジュール終了後にジャンプする先の路線を決定します。 路線を決定すると、スケジュールの最後の欄がジャンプ先の路線のスケジュールの1番最初の駅になります(現在のスケジュールに停車駅/中継点が254駅設定されている場合は一番最後の駅を上書きします)。ただし、「仕様について」で後述する通り当該駅は全員降車Unload All、乗車無しNo Loadとなります。

スケジュール上の最後の駅に到着すると、所属路線がNext_lineで設定された路線に切り替わり、駅もその一番最初の駅に変更されます。

以下、注意点です。
1.路線をジャンプする地点の駅(折り返し駅)はNext_line設定時に勝手に設定されるため、事前に設定する必要はありません。
2.Next_lineを設定した場合、スケジュールの最後の欄はNext_lineの最初の駅に固定されます。削除や編集はNext_lineの設定を解除しない限りできません。 3.Next_lineに設定できるのは以下の路線のみです:

  • スケジュールの最初の地点が駅(中継点ではない)
  • 自社の路線、同じ属性(waytype)の路線
  • 2駅以上設定された路線
  • 個別のスケジュールを設定することはできません

仕様について

本スケジュールジャンプ機能は、従来のsimutransの経路検索や路線等に関する設計の変更を最低限に抑えて実装しました。そのため、以下の仕様に注意してください。

旅客経路計算

旅客経路計算では、路線に所属している編成が存在する場合に、その路線のスケジュール内で移動可能な駅を判定して経路を構築しています。そのため、元のスケジュールの駅からNext_lineの駅までの旅客経路は発生しません。また、Next_lineを設定してスケジュールが最初に戻らない場合に、意図しない乗車経路が発生しないよう最後の駅には自動でUnload AllNo loadを付与しています。

また、路線に所属している編成が存在しない場合、旅客経路としては計算されません。そのため、例えば上り用路線スケジュールと下り用路線スケジュールを設定し周回で2路線以上を交互にジャンプするような設計をした場合、なんらかの理由で上り用路線に全編成が偏って所属した時には下り用路線の旅客経路が消滅してしまいます。ダイヤ設計や旅客経路設計時には注意してください。

主な使い方

次のような使い方を想定しています。

  • 254駅/中継点以上に停車する場合
  • 回送後に別の営業路線に切り替える場合
  • 線路切り替え等でスケジュールを大幅に変更する場合に、従来の列車を折り返し駅等で自然に新路線に切り替える場合