この記事はSimutrans Advent Calendar 2022 に参加しています。
みなさんこんにちは、ahakuokuです。今回はSimutransの拡張版であるOTRPのダイヤの組み方を解説しようと思います。
Simutrans OTRPにおけるダイヤの組成方法は様々で、主に次のような方法があります。
・Oudiaなどの外部ツールを併用する
・外部ツールを使用せずに、試運転を重ねながらダイヤを組む
・始発駅のみで待機設定をし、後は信号に任せる
本記事では、外部ツールを利用する方法でのダイヤ組成について解説します。
ダイヤ組成作業をするために、外部ツールをダウンロードします。今回はOuDiaSecondV2を利用します。
※本家Oudiaの利用はおすすめしません(機能が少なすぎるため)。
上記のリンクから、OudiaSecondV2の最新版をダウンロードしてください。
インストーラーパッケージ、インストーラーが使用できない場合とありますが、特段理由がなければインストーラーパッケージの方が良いでしょう。
インストーラーをダウンロードしたら、zipを解凍し、インストーラーを起動します。
起動したら、画面の指示に従いインストールしてください。
Tick: OTRPを起動すると画面左下にいろいろ出てきますが、そのうちの下の画像にある一番右にあるものです。
Oudia時間: 下の画像の右から2番目です。時間をOudiaに入力する場合はこれを使います。
※show_monthを1にした場合の一番左に出る時間表示は、ずれることがあるためダイヤ目的で参照してはいけません。
所要時間を計測するところから、ダイヤ組成作業というものは始まります。
まずは、走らせたい種別の停車パターンを決めます。
停車パターンの分だけ計測することになるので、最初のうちはあまり増やし過ぎないようにしましょう。
次に、走らせる車両を決めます。複数車両が混在していてもかまいません。
複数車両が混在している場合は、最も遅い車両を基準に計測します。
※車両ごとの加速を比較する場合、応荷重制御を適用させたうえで、出庫後一旦スケジュールボタンを押してから比較してください。
応荷重制御を適用させた場合、車庫から出た直後の状態では所定より加速が遅くなるバグがあります。
次に、計測用のスケジュールを設定します。
ホームが複数ある駅では、最も所要時間が長くなるホーム(副本線など)を指定しましょう。
この時点では発車時刻を指定しなくてもかまいません。
また、計測用スケジュールには必ず応荷重制御を入れましょう。
乗降時間制御は入れなくてもかまいません。
とまあ長々と書きましたが、スケジュールは下の画像のようになっていれば問題ありません。
その他の注意点ですが、1tickがデフォルト設定の2倍以上長い場合は、1tick未満の差だけでダイヤ乱れの原因になります。
その場合、計測時のみspacing_shift_divisorの数値を数倍に大きくしましょう。
最後に、所要時間を計測します。
注意点として、早送り(Shift+.の方)を適用させた状態で計測してはいけません。
所要時間が変わり、ダイヤ乱れの原因になります。
早送り(Shift+wの方)でも所要時間は若干変わりますが、誤差の範囲なのでこちらは問題ありません。
また、所要時間計測は本番環境以外の環境で、経路上の全車両を消した状態で計測しましょう。
所要時間計測にも二つの方法がありますので、どちらとも説明します。
1. OTRP備え付けの「路線所要時間」を使用する方法
2. 完全手動で行う方法
まず1. からです。
そもそも「路線所要時間」ってなんぞやという話ですが、路線設定ダイアログ内の赤丸で囲ったものです。
そうすると、下の画像のようなダイアログが出てきます。
これを利用することで、停車駅・中継点間の所要時間を列車を走らせるだけで記録してくれます。
一番左が過去5回分までの平均、その右が1-5回目までの所要時間です。
赤文字は平均時間より極端に遅い所要時間、青文字は平均時間より極端に早い所要時間です。
なお、ここで表示される時間はTickのみであり、Oudia時間ではないので注意が必要です。
このため、TickとOudia時間を変換できるスプレッドシートを作りました。こちらからダウンロードできます。
次に、2. の方法です。
列車を動かしながら、駅に停車/通過したタイミングでその時点でのOudia時間を外部ツールに入力する方法です。
1. 方式と2. 方式の長所と短所を比較します。
1. 方式の長所は、何よりも時間がかからないことです。
列車さえ放流すれば後は自動で計測してくれるので、計測中に別の作業をすることもできます。
1. 方式の短所は、通過駅の時間計測ができないことです。
通過駅のすぐそこに中継点を置くなり手動計測を組み合わせるなりして工夫しましょう。
2. 方式の長所は、通過駅を含む任意の地点の通過時間を計測できることです。
2. 方式の短所は、とにかく面倒な事です。
時間がない方は全て手動計測で計測することは避けた方がいいです。
長くなりましたが、計測を始めていきましょう。
OudiaSecondV2を利用している場合、計測用のダイヤ名称は「基準運転時分」にすることをお勧めします。
分岐も待避もない駅の場合、計測する必要はありません。
しかし、そのような駅でも停車する列車に限り計測すると全駅の時刻表を作れます。
所要時間の計測が終わった場合、Oudia上の表示が下記の画像のようになっていると思います。
それでは、ダイヤ組成作業に移っていきます。
まず、路線設定から運用機能を「簡易モード」にします。
次に、左側の「ダイヤ」と書かれた文字をダブルクリックし、新規ダイヤを作成します。名前は自分がわかればなんでもいいでしょう。
また、ウィンドウ配置を下の画像のような形態にすることをお勧めします。
こうすることにより、作業が行いやすくなります。
それでは、ダイヤ組成作業を行いましょう。
まずは最も早い種別からダイヤを組んでいきましょう。
今回サンプル路線で組むダイヤは「急行毎時6 普通毎時6」の10分サイクルダイヤです。
また、全線複線で待避設備はE駅、H駅にあるという想定でダイヤを組んでいきます。
Simutrans特有の事情として、複数スケジュールを設定しない限り基本的にn分間隔でしか列車を流せません。
このため、1ヶ月1日ダイヤでもやろうもんならかなりの手間と時間を割くことになります。
また、同じホームに列車が発着する間隔は慣れないうちはデフォルト設定で32tickは開けた方がいいでしょう。
※128jpの場合。64や128無印の場合は実績がないのでよくわかりません。
計測時間からのコピーとOudiaの「貼り付け移動」機能を利用し、急行を10分間隔で入れてみました。
ダイヤグラムの表示がおかしいですが、普通電車を入れてダイヤグラムを選択し、上にある表示(V)から更新(R)を押せば直ります。
普通電車を入れてみました。
この様な感じで、上りも組んでみます。
上りのダイヤでは、運用が繋がるかどうかと言う事も考える必要があります。
上りのダイヤを組み、貼り付け移動で1ヶ月分のダイヤを組みました。
ダイヤ組成作業は以上です。
ダイヤ組成が終わったら、Simutransのスケジュールに反映させましょう。
これはスケジュールを設定する画面です。
スケジュール画面を開き三角のボタンを押すと、このような画面が出ると思います。
このうちダイヤに関連するもののみ解説します。
実際の積載状況にかかわらず、常に満載の状態の加速性能で走行します。
なお、これを使用するとロード直後から次の駅に到着するまで本来の加速性能より落ち、スジに乗れなくなることがあります。最新版では修正されています。
実際の乗降状況にかかわらず、常に最大乗降時間を使用します。
これが要求されるケースはそこまで多くなく、使わなくてもダイヤは組めます。
詳細はこちらを参照してください。
左側に出ているのが月あたりの発車本数で、右側に出ているのがオフセットです。オフセットはTick単位で指定します。
月あたりの発車本数の上に出ているのは、ただの数値がTickでの間隔、カッコ内に出ている時間形式の表示がOudia時間での発車間隔です。
オフセットの上に出ているのは、オフセットのTickをOudia時間換算したものです。
どの程度まで遅延して発車することを許容するかをTick単位で設定します。
OTRPでは列車の所要時間に数Tickの誤差が発生することがよくあり、その関係上これを設定しないとダイヤ乱れの原因になります。
設定時間はデフォルトの設定では40-60Tick程度を推奨します。
なお、これのみOudia時間での換算が出ません。
それでは、OudiaのデータをSimutransに反映させましょう。
これで運行開始!と行きたいところですが、少し待ってください。
そのスケジュールは本当に正しく設定されていますか?
いざ運行開始すると、ダイヤが乱れることがよくあります。(本番環境でダイヤが乱れた場合の対処法は後述します)
運行開始直後のダイヤ乱れの原因はだいたいスケジュールのミスです。
そこで、このようなミスを洗い出すために本番環境のバックアップで試運転を行いましょう。
列車が先行列車に詰まるダイヤになっている場合、各駅停車などの遅い列車から出すとよいです。
試運転でダイヤ乱れがあったら、それをメモしておきましょう。この段階では原因がわからなくてもかまいません。
原因がわからなかった場合は、原因を究明しましょう。
基本的にその駅で時刻設定をしているすべてのスケジュールを単独で動かすと原因がわかったりします。
スケジュールの検査が終わったら、今度こそ運行開始します。
試運転の時と同じく、列車が詰まるなら各駅停車から順次流すとよいです。
これでダイヤ組成作業は終わりです。お疲れ様でした。
Simutransでは、スケジュールのミス以外にも様々な原因でダイヤが乱れることがあります。
バグを踏んだり、早送りを使ってしまってスジに乗れなくなったり…etc
このようなケースの対処法を紹介します。
1. 列車が詰まっている先頭の駅に臨時ホームを設置し、振り分け信号を使う
2. 関係する列車をすべて撤去し、再度流し直す
3. 関係する列車のスケジュールを編集し、臨時車庫に入庫させる
1. は事情がない限りおすすめの方法です。
全列車が待機する駅であれば、臨時ホームと振り分け信号さえ置けば後は放っておけばダイヤが回復するので、手間がかかりません。
※増解結をする列車が存在する状況では、この方法を利用してはいけません。
2. は比較的手間はかかりますが、どのような路線でも適合できる方法です。
しかし、手間はかかるので1. の方法が使えなかった場合のみ使うと良いでしょう。
3. はかなりの時間を使いますが、1. の方法が使えず、なおかつ車両の撤去を行いたくない場合には使えます。
ただし、時間を食うので余程の事情がなければおすすめはしません。
長くなりすぎてしまいましたが、ダイヤ周りの解説は以上です。
これを参考にしダイヤを組んでいただいたら幸いです。
以上です。ここまで閲覧いただき、ありがとうございました。
(2024/04/29 13:48 最新の情報を追記しました。)
(2024/09/28 22:34 ミスを修正しました。)