ペルリ的な何かなブログ

Simutransとかいろいろ自由気ままに書き散らす

【Simutrans】ダイヤを組みたい その2 ターミナル駅の発車順序を決める

7月に記事を起こして2か月半くらい放置していたこの企画ですが、第2弾という事で

pm1965.hatenadiary.jp

の続きとなります。

前回は車両基地を作ろうという話でした。

今回は車両基地を使って列車の発車順序を固定しようという話です。

 

いわゆるstandard版で列車の発車順序を固定するというのは緻密なダイヤを組むうえでは非常に重要です。

 

基本的にほぼ同じ運行間隔で発車できれば運行順序は固定できます。

運行順序とその間隔が固定できれば常に同じ駅で退避が発生することになります。

 

なお、緻密なダイヤは非常にデリケートなので間に運行間隔がそろわない列車が入り込んだり、列車が欠けたりするだけでダイヤが崩壊するという事は念頭に入れたほうがいいかもしれません。

また、早送りをするだけでも運行間隔が狂います。マジです。

ただし、それほど緻密なダイヤを組む気がないのならそれほど難しく考える必要はないでしょう。

 

f:id:pm1965:20200930001358p:plain

投稿してた動画シリーズ(名前未定の開発記)で頻繁に登場した白馬駅

で、自分の開発していたマップでは緻密なダイヤを組むというのを一つとしていたことから、こういう駅が誕生しました。

と言っても128な人さんが投稿していた熊谷半島開発記の熊谷駅を参考にしただけですが…

 

この細長い駅は2大幹線の始発駅という位置づけで、多数の長距離列車を正確に等間隔で発車させる形を追求してこの形となりました。

f:id:pm1965:20200930002001p:plain

白馬駅(1階ホームの構造)

赤い線を付け加えましたが、この線の上側と下側それぞれが独立した形となっており、2大幹線の長距離列車を路線別に分けて発着させています。

それぞれ到着線が2~3線、出発線が3~4線用意されています。

画像を見るだけではなかなか伝わらない部分も多いのも事実ですが、とりあえず文章でごり押しします。(そのうち動画撮って解説したい感じもしますが…)

 

f:id:pm1965:20200930002828p:plain

それぞれのブロックの役割

この細長い駅ですが、それぞれ以上のような役割があります。

到着線はそのままの意味で列車が到着するホームとその導線です。

バッファーは列車を貯めておくためのセクションです。列車が足りない場合には適宜Deportから出して、多い場合には列車を待機させておく役割があります。

出発線は始発となる列車を待機させ、またその運行間隔を固定するためのものとなっています。

これらを車両基地と駅を一体化させたのは単純に大きくなるからという理由となっています。

 

2層構造になっていて、BPM=22の環境で1/16待機の路線を1複線に5路線ほど詰め込める設計となっていましたが、一部は旅客増加のため複々線化の際に下層ホームと上層ホームで緩行線列車と急行線列車の発着に完全に分離してしまいました。

 

で、列車の発車順序も重要で、遅い列車や長い列車を先に出発させて逆に速い列車や短い列車は後発としないと列車の発車順序が狂います。

というのも1/16待機の場合、列車の発車フラグが立つまでの時間は以下の通りとなります。

[乗車率が100%になる]or[(1/16ヶ月)+列車がホームを抜けるまでの時間+次の列車が入るまでの時間]

という事で仮に1/16待機をかけても月あたりの運行本数は基本的に16本以上にはなりえないのです。

16本以上になっている場合は乗車率が100%になって運行間隔調整が機能していない状態となるわけです。

当然ながら、列車の発車フラグが立っても駅から見て最初の信号機までの閉塞が空いてないと列車は発車できません。

ここで、「列車がホームを抜けるまでの時間+次の列車が入るまでの時間」に注目すると、どちらも列車の長さや加速、最高速という要素で長くなったり短くなったりするという点に気が付くと思います。

なお、次の列車が入る時間は出発線のホーム中間に信号を設置すれば短縮することが可能です。

以上の理由から列車の運行間隔をほぼ正確に固定することが可能と言えます。

※厳密には乗車率によっても列車の加速が変わるのですが、これ以上の努力はできません。

 

列車の発車順序は出発線に止まっている列車のスケジュールを弄って、次の停車駅をクリックしてやれば列車は待機関係なしに発車します。

f:id:pm1965:20200930005210p:plain

この状態でスケジュールウィンドウを閉じれば発車します。逆に閉じなければ発車しませんので、それを利用して任意の順序で発車させることができます。

あとは列車を追跡して、優等列車に追い付かれた駅で待機時間をかけるなり、三現示信号を設置するなどして退避させていけば、緻密に緩急列車が抜いてくれます。

※ただし、路線数が複雑に絡む場合や路線が長い場合には地道に待機設定の微調整が永遠と続きます。

また、途中に踏切がある場合もシティーカーや路線バスが塞いでそれだけで緻密なダイヤが崩壊します。

 

という感じで動画映えするダイヤを作成していましたが、うれしくも残念なことにOTRP版ではとても簡単かつシンプルにダイヤが組めてしまう時代が来てしまいました。

という事情もあり、名前未定の開発記(西都地方マップ)が事実上終わりを迎えてしまったわけです。

短期連載(予定) Simutransを始めよう その3~ようやくSimutransをインストール~

という事でこの連載も3回目となりました。

そんなこんなでSimutransを始めてみようというところです。

 

Simutransを始めるにあたってとりあえず覚えておいてほしいサイトがあります。

japanese.simutrans.com

ここにインストールするから一通りの遊び方まで載っています。

現状、Simutransで遊んでいる間はほぼこのサイトの世話になります。

 

Simutransをインストールする方法はいくつかありますが、インストーラーを使ってインストールすることを強くお勧めします。Steam版もありますが、その後の拡張性などのわかりやすさから、インストーラーでインストールしたほうがわかりやすいと思います。

なお、ネットワークモードに誘われて始める場合はこの限りではありません。

 

なお、本体ですが、さまざまなバージョンがあります。

しかし、初めてSimutransを触るのならば、何も考えずに↑のサイトのSimutransインストールの手順に従ってインストールすることを強くお勧めします。

人によってはExtented版やOTRP版を奨めてくる人もいますが、初めて触るのならば、やめたほうがいいです。

理由としては…

Extented版はかなりの上級者向けです。列車を運行するにも高度な信号に関する知識を要求されるほか、現実に即したゲームを目指して開発されているため、非現実的な操作ができず、自由度が劣ります。

また、現段階ではイギリスをもとにしたpakset(後で解説します)くらいしかまともに遊べるものがありませんし、日本風の車両はほぼ存在しません。とっつきにくいですね。

OTRP版はおそらく日本で一番遊ばれているバージョンです。そんなに通常のバージョンとの違いはありませんし、単純な上位互換ですが、初めてSimutransを触るうえでは特別これを導入する必要はありません。

なにより、開発が旺盛なのでそれに起因するバグが出ていることも少なくなく、安定性にやや難があります。なお、OTRP版は移行しようと思えばいつでも移行できます。中級車向けといったところでしょうか。

 

何度か言っていますが、Simutransは古いゲームです。現代のゲームほど親切ではありませんし、便利さも欠いてるところがあります。

まずはSimutransというゲームに慣れる必要あるわけですね。

 

で、インストールするとなんかpakを選べ的な画面が出てきます。

f:id:pm1965:20200913085843p:plain

とりあえずpak64:mainなんたらはチェックを付けておきましょう。逆にそのほかはチェックを入れなくてもいいです。

というのも基本的な操作はpak64で十分に覚えられますし、↑のサイトのチュートリアルもすべてpak64で作られているからです。

応用は基礎を覚えてからです。

それぞれのpakの特徴も↑に貼ったサイトで確認してください。

起動後の各種操作はいろんなところにチュートリアル的な解説があるので割愛します。

 

という事で数回にわたり連載してきたこのSimutransを始めようシリーズもこれで終わりとなります。

 

基本的には初めてSimutransを触るなら基礎的な操作を知って覚えてから様々な応用をやってみようという事です。

 

短期連載(予定) Simutransを始めよう その2~Simutransをインストールでもその前に~

という事で連載2記事目はさらにインストール前の話を…

 

誰かに誘われてネットワークモードで遊ばない限り、基本的に全部自力でやることになります。

 

前の記事

pm1965.hatenadiary.jpで言い忘れましたが、このゲームは自由度が途方もなく高いです。

やろうと思えばたいていのことはできてしまいますが、当然ながら相応の知識と経験は必要となります。

特に経験は長い時間をかけて積み重ねていかなければなりません。

動画などを見てこういうことをやってみたいと思ってもまねできるようになるまでにも時間がかかるというわけです。

根気よく続けることができなければ厳しいでしょうね。

何度も言ってますが、PC操作に関しても経験が必要です。

何度もトライ&エラーを繰り返して時間をかけて知識と経験を積み重ねていかなければなりません。

それができないとあまり楽しめないかもしれません。

まぁ、やってみたけど飽きたなんてことは少なくないです。

それはおそらくそういうことだと思います。

先の記事でも触れましたが、Simutransというのは古いゲームです。いくら更新を続けてきたとしても根底にはそれがあるのです。

という事でSimutransを始める前にという話を2回に分けて話してきました。

それでも始めるという人はまた今度の更新にでも…

短期連載(予定) Simutransを始めよう その1~Simutransを始める前に~

先月の記事の続きかと思いきや夏企画という建前でちょっと思うところがあり、このネタは短期連載という事で月一よりも圧倒的に高密度の更新でやっていきたいと思います。

 

チュートリアルとかインストール方法とかはいろんな人が手掛けているので誰も触れてなさそうなところから突っ込んでいきたいと思います。

 

という事で、今日はSimutransをインストールする前のことを話していきたいと思います。

 

まず、先に言っていきますが、Simutransのいいところばかりを宣伝文句にして勧誘してきますが、個人的にはこのご時世にこんな古いゲームをやることそのものを勧めません。

 

正直言って普通にメジャーな商業ゲームを素直に遊んだほうが手っ取り早いです。

特に調べものができない人やなんでも人に聞くことしかできない人は向かないです。

また、自分で試行錯誤ができない人も向いてないです。やらないほうがいいです。

 

理由としては「古い」からです。

ガッツリハマりこんでいる人が何を言うかと思いますが、とにかくこのゲームは古いです。

どのくらい古いかというと1999年にリリースされています。20世紀です。

ちなみにこの時代がどれだけ古いかというと当時最新鋭のゲームハードはドリームキャスト、まだPS2(2000年)もゲームキューブ(2001年)もありませんでした。

いくらアップデートを繰り返しているとはいえ、2020年現在であってもレトロゲームの世界ですね。

ちなみに日本語に本格対応したのは2005年のことです。

ちょうどニンテンドーDSが発売されたころ、ようやく日本語に対応しました。

そんなレトロゲームが最新のゲームと一緒になって遊ばれることそのものが土俵違いとも言えます。

どれだけアップデートされていてもレトロゲームをアップデートしたものだという事は忘れてはいけません。

 

そして有志が作っているフリーゲームという点も特殊と言えます。

無料のゲームとは言っても企業が営利目的で作っているゲームではなく、有志が趣味で作っているゲームです。

この2点はこのゲームの根幹となっている部分です。

無料だから…低スペックでも動くから…という人は少なくありませんが、負の側面を語る人は少ないです。

 

タダより高いものはないという言葉の通り、とにかく時間泥棒です。

遊んでハマりこんで時間の経過を忘れるからという点で語る人もいますが、「遊べるようになるまでに時間がかかります」

特にこの手のゲームを触ったことがない人にとっては操作方法がわからないところから始まります。

また、基本的に自分で環境を整える必要があるため、ある程度のPC知識が求められます。

そういう点でもハードルは高いです。

いかに有志が解説をしても結局そこは変わりません。

 

 

【Simutrans】ダイヤを組みたい その1 運行間隔を調整する

という事で相変わらず一か月半くらい放置していますが毎月更新を目指している弊ブログ今月の記事です。

 

アクセス解析を見ていると、「Simutrans ダイヤ」なんて検索でこのブログに迷い込んでくる人もいるみたいでそういうのも需要あるのかなと思い今回の記事を書きます。

 

あらかじめ言っておきますが、これも複数回に分けて記事にしていきたいと思います。

 

まずはじめにSimutransでできることはとても限られています。

OTRP版ならいろいろ機能がありますが、今回はいわゆるstandard版で解説していきたいと思います。

 

数年前までニコ動に投稿していた「名前未定の開発記(西都地方マップ)」では当然standard版で列車の運行間隔調整を行い、ある程度固定された退避パターンを組んでいました。

 

で、まずはその基本となる運行間隔の調整です。

 

 

www.nicovideo.jp

運行間隔の調整は上の動画で挙げたように車両基地で行うのが基本となります。

 

f:id:pm1965:20200719000320p:plain

このような単純なターミナル駅では運行間隔の調整はほぼできません


というのも、Simutransの路線設定でできることは、積載まで待機すること、積載まで待機するが、指定した時間が経過すると発車するのどちらか(※積載数まで達したら容赦なく発車します)しかできないからです。

上に掲載したような単純なターミナル駅では一定時間待つことはできても列車を等間隔で発車させることは困難です。

と、いうことでそれを改善するのが次の形です。

f:id:pm1965:20200719000621p:plain

車両基地で運行間隔を調整する基本形

この形になると画像中央にある出発線で100%積載+最大待ち時間を設定してやることで運行間隔の固定ができます。

出発線の停車ポイントは一応駅でも構いませんが、駅にした場合には乗車率が100%に到達した時点で列車が出発してしまうことに注意しなければなりません。

出発線の手前に信号がちゃっかり置いてありますが、これを設置しなかった場合、奥にある留置線群から出発したときの列車が手前の線と奥の線から出てくる時間に差が生じることから若干間隔が崩れます。列車の運行間隔を等間隔にするにはこれを忘れてはならないのです。

 

続いて、複数の種別を同じ車両基地で運行間隔を同期させる方法です。

f:id:pm1965:20200719001354p:plain

複数の路線の間隔を同期させる車両基地

基本的には先ほどの車両基地の出発線を増やすだけでできます。

しかし、出発線の手前に置かれた信号機と出発線の停車場の長さを揃えたほうが運行間隔の同期はさせやすいです。

なお、加速や長さ、最高速の異なる編成を発車させる場合は、加速や最高速の遅い列車や編成の長い列車を先に発車させることが重要となってきます。

 

最後にただ運行間隔を調整したい場合ですが、最もシンプルかつ単純な構造にするなら次の形となります。

f:id:pm1965:20200719001750p:plain

最もシンプルな運行間隔調整

一番手間はただの棒線駅ですが、次の駅までの長さや最初の信号の間隔調整だけで列車間隔を作るという方法もあります。

この場合はほかの系統との運行間隔の同期は難しくなります。また単線区間を使った調整もありますがこの場では割愛します。

なお、この構造や単線を使うと駅間や駅でバカ停することも考えられるのでそれを許容できるかどうかというところがあります。

今月はここまでとします。続きは来月にでも。

↓という事で続きです

pm1965.hatenadiary.jp

【Simutrans】OTRP版で単線優等のあるダイヤを組んでみる

先日アップデートされたOTRP版ver25ですが、新機能に所要時間の実績を表示する機能が実装されました。

これによりダイヤがより組みやすくなったので早速やってみました。

今回は国鉄の急行列車が走る亜幹線のイメージで路線を作成。特急列車や貨物列車の設定はなしという前提で作成しました。

列車の動きは動画にしたほうがわかりやすいと思ったので動画をサクッと編集してニコ動に投稿する準備をしている間にこの記事を編集しています。(投稿は6月の記事として出したいので寝かせておく予定ですが)

 

www.nicovideo.jp

 

動画中に細かいダイヤ生成方法はブログでと言ったので宣言の通り、ダイヤ生成方法を紹介していきます。

 

以前からダイヤ機能に関しては実装されていましたが、その作成補助として各駅間の所要時間が表示できるようになりました。

f:id:pm1965:20200531235440p:plain

路線メニューに新しいボタンが増えました

このJourney Timeを選ぶと次のような画面が出てきます。

f:id:pm1965:20200531235547p:plain

これが所要時間

表示した直後はそれぞれの時間が表示されませんが、列車を運行して早送りしていけばすべての枠が埋まります。

これが各駅間の所要時間となります。

 

で、今回作成したダイヤですが、普通列車と急行列車が1:1の比率で運行、原則急行列車は普通列車の交換待ちをせず、普通列車が急行列車を待つという条件で設定することとしました。

 

まず、急行列車と普通列車の駅間の所要時間を計測します。

それぞれ1編成だけ流して、それを3往復運行すれば所要時間が出てきます。

複数編成流すと、対向列車待ちが発生するので最低の所要時間が出てこなくなりますのでそこは注意してください。

f:id:pm1965:20200601000537p:plain

出てきた所要時間

これをOudiaに入力していきます。

f:id:pm1965:20200601001021p:plain

起点を0として片道分の所要時間をどんどん加算していくとこんな感じ

f:id:pm1965:20200601000712p:plain

そのダイヤがこんな感じ

ここから3時間ヘッドダイヤくらいがちょうどよさそうな感じですね。

という事で優先されるべき急行列車からダイヤをひいていきます。

f:id:pm1965:20200601001335p:plain

急行列車の交換パターンはこんな感じ

それほどしっかりと最適化してないので多少交換待ちが多めなダイヤとなっています。

また下りの納戸駅と上りの卯の花駅ではそれぞれ通過駅での運転停車時間を短くするために少々停車時間を長くとって時間調整をすることにしました。

時間調整を多めにとることで列車が多少遅れてもある程度は自動で回復させることも狙いの一つです。

動画でも触れましたが、下り方向も上り方向も鳩羽駅までは優先となり、その先は終点まで対向列車を待つダイヤとなっています。

この思想が基本的に普通列車にも適用されています。

さらにこのダイヤに普通列車のダイヤをねじ込みます。

f:id:pm1965:20200601002727p:plain

普通列車もねじ込んだダイヤ

基本的に急行退避駅はあとで付け足せばいいという考えで作っています。

本気でやれば限られた駅で退避させたりすることもできそうですが、今回は作成の簡略化のためにやっていません。

基本的には列車が交換する駅になったら交換するというダイヤで組んでいます。

一部駅で交換時間が短めな駅があるのでちょっとダイヤ遅れが発生したら大幅に乱れそうな感じがありそうですが、今回はこれで妥協しています。

 

路線設計としてはすべての駅で交換可能とし、複線区間は一切なしという条件となっています。その他3線駅は適宜追加削除すればいいかといった感じです。

 

そしてソレをSimutransの運行スケジュールに反映させていく感じです。

 

なんとなくわかったでしょうか?

 

とにかく

①路線をひく

②時間を計測する

③急行列車からダイヤをひく

④いい感じに普通列車をねじ込む

⑤運行スケジュール設定する

まぁこんな感じでしょうか。

Simutransアンケート2020年の結果とその所感

毎度タイムラインにBottweetして検索妨害なんて思われてそうですが、今回もアンケートの回答を締め切らせていただきました。

 

今回も多重投票可能な仕様のため、その点はご容赦いただきたいです。

 

前提として弊ブログ、Discord、Twitterにて案内を行っているため、集計結果には偏りが生じていると思われます。

 

結果は次の通りとなります。

 

https://docs.google.com/forms/d/1NARAXDZ7p8pJJW4spnHGwtdIp7HSvEuKyKr5f_p_9UE/viewanalytics

 

 

まず、年齢層ですが、10代後半から30歳くらいまでが満遍なく分布しています。30歳から上の層は回収しきれていないのかSimutransをしなくなっていくのか…

この年齢層が全体の8割を占めている結果となりました。

うち、10代が全体の4割程度の比率ということで10代と20代の比率は概ね半々といったところでしょうか。

 

在住地は前回の反省から関東地方を細分化しましたが、それでも東京都内在住が圧倒的に多い結果となりました。

さらに、関東地方は全体の45%を占めています。

 

次に職業ですが、学生が半数以上を占めており、Simutrans人口の約半数は学生ということになりますね。

ただし、前述のとおり、アンケート告知の方法ゆえの比率となった可能性も考えられますが…

 

Simutransを始めた時期ですが、前回に続き2011年~2016年頃で過半数を占めています。このくらいのキャリアが主力ということでしょうね。

昨年のアンケート結果と概ね同じくらいとなりました。

 

続いて遊んでいる本体ですが、この1年でOTRP版のシェアが一気に増加しました。

前回の結果と比較していわゆるスタンダード版とのシェアがほぼ逆転しています。

一方でExtended版は変わらずという結果で増減はなしという結果でした。

 

主に遊んでいるpakについてもその比率はほぼ変わらず、ざっくり(64+nippon):128:128jp≒1:1:1くらいの比率となっています。ただし、若干jpが少なく128が多いという結果も前回と変わらずとなっています。

 

もう少しデータ整理して始めた時期によるpaksetの傾向なんかも分析したいところですが、とりあえず結果が出ましたということで。

 

次回もほぼ同じ質問でやっていきたいと思っています。

本来なら、アンケートの生データも公開したいところですが、個人情報が特定できてしまう可能性があるので別の形で公開したいですね。

 

次回更新で追加したい項目

Simutransを知ったきっかけ

OTRPを知ったきっかけ