Simutrans(シムトランス)は多言語、多OS対応のシミュレーションゲーム。
Simutransは交通機関を作って貨物や旅客を移送して収益を上げる経営シミュレーションゲームである。
登場するのは鉄道、自動車、船舶、飛行機と高速鉄道、モノレール、路面電車などで、主要な交通機関をほぼ網羅している(なお、この世界のリニアは、少なくともpak64では速いモノレール扱いである)。
「アドオン」と呼ばれる追加ファイルを導入する事で、様々な鉄道車輌や自動車、建造物等をゲーム内に登場させることが出来る。
噂によると、日本の鉄道車両は90%網羅されているとか。
標準では、旅客/郵便/貨物の3種類を運ぶことができ、交通の結節点となるターミナルで乗り換え(積み替え)ることができる。豊富な交通機関を組み合わせて効率のよいルートを敷くことは、このゲームの醍醐味である。
鉄道駅から末端までのバスを走らせたり、貨物を鉄道はもちろんトラックや船・飛行機で連携して運ばせたりするなど、リアルな交通体系が再現可能である。
元はドイツ語だったが今では15ヶ国語に対応し、WindowsだけでなくMac OS XやLinux版、そしてiPhone版アプリも存在する。
詳しくは素直にウィキペディアを参照されたし。
構成としては基本パッケージ(実行ファイル)+PAKセットになっており、PAKセットは64版と128版のメジャー2つから選ぶことをオススメする(2022年1月現在、ここ1年以内に更新されてるのはpak・pak.japan(以上64版)およびpak128.german・pak128.CS(以上128版)の4種類である)。
違いはビジュアルの解像度であり、64は荒く128は細かい。
他にもゲームバランスやアドオン、クライアントの重さなどが両方で異なるが、好みで決めてもらって構わないはずである。
大昔はセーブデータをやり取りしてマルチプレイをしていたが、2011年以降はネットワークを介したマルチプレイに対応している。サーバ側とクライアント側でPAKはすべて共通にすること。そうしないとうまく接続できない。
頑張れば産業チェーンなども自作可能である(編集者は昔、実際に自作したことがある)。
ただし、ドキュメントがあちこちに様々な言語で散らばっており、それを理解するのは一苦労である。普通使う大半のものは日本語Wikiを読めば書いてあるので、日本語Wikiを読むのが日本人にとっては楽である。
なお、pngファイルの画像サイズは、スプライトを用いる前提で、使用するPAKセットのサイズの倍数でなければならない(ただし、symbol.BigLogo.pakはpak128用でパックする必要がある。256×256の画像で、4分割のスプライトである)。
ちなみに、このアドオンはPAKとしてパッキングされるが、これをまとめたものがPAKセットである。
例えば、pak128のあるPAKのdatファイルの一部分を抜粋したのがこれである。datファイルにおいて、先頭に#のついた行はコメント行であり、無視される。
obj=good
name=Passagiere
copyright=none
metric=
catg=0
value=14
#value=11
speed_bonus=18
weight_per_unit=85引用元: https://github.com/simutrans/pak128/blob/master/factories/goods-128.dat
という意味になる。
これが産業になるともっと複雑になる。
Obj=factory name=oilkraftwerk copyright=Patrick Location=Land DistributionWeight=1 Productivity=600 Range=400 Smoke=industry_smoke SmokeTile[0]=0,1 SmokeOffset[0]=27,-84 #SmokeUplift=0 Electricity_amount=800 Electricity_boost=0 Mail_demand=10 Mail_boost=500 Passenger_demand=20 Passenger_boost=800 InputGood[0]=Oel InputCapacity[0]=6000 InputSupplier[0]=0 #the input factor is a trick how to make powerplant produce more power than mines consume InputFactor[0]=50 MapColor=132 Dims=3,3 intro_year=1900 #This set of backimages is the one used to make the non-animated version. #Lights are lit on the stacks, but flame is at its smallest. BackImage[0][0][0][0][0]=oilkraftwerk.2.0 BackImage[0][1][0][0][0]=oilkraftwerk.0.4 BackImage[0][2][0][0][0]=oilkraftwerk.0.0 BackImage[0][0][1][0][0]=oilkraftwerk.2.1 BackImage[0][1][1][0][0]=oilkraftwerk.0.1 BackImage[0][2][1][0][0]=oilkraftwerk.0.2 BackImage[0][0][2][0][0]=oilkraftwerk.2.2 BackImage[0][1][2][0][0]=oilkraftwerk.1.2 BackImage[0][2][2][0][0]=oilkraftwerk.1.1 BackImage[0][1][0][1][0]=oilkraftwerk.1.0 #--- BackImage[0][1][0][0][1]=oilkraftwerk.0.3 BackImage[0][1][0][1][1]=oilkraftwerk.1.3 #--- BackImage[0][1][0][0][2]=oilkraftwerk.2.3 BackImage[0][1][0][1][2]=oilkraftwerk.1.3 #--- BackImage[0][1][0][0][3]=oilkraftwerk.2.4 BackImage[0][1][0][1][3]=oilkraftwerk.1.3 #--- BackImage[0][1][0][0][4]=oilkraftwerk.2.3 BackImage[0][1][0][1][4]=oilkraftwerk.1.3 #--- BackImage[0][1][0][0][5]=oilkraftwerk.0.3 BackImage[0][1][0][1][5]=oilkraftwerk.1.3 # EOF引用元: https://github.com/simutrans/pak128/blob/master/factories/powerplants/oilkraftwerk.dat
これの意味は以下の通りである。
街に作られる住宅も、乗り物も、道路も、datファイルとpngファイルを作成してPAKにする。
逆に、これらさえ準備できれば独自のゲームバランスの、独自グラフィックのPAKセットを提供できる。
PAKの種類は、大きく分けて22種類存在する。
Simutransの旅客・郵便・貨物は、現実からすれば奇妙な挙動をする。
まず、停車駅1ごとに1、乗り換え1回ごとに9というスコアが定義されており、このスコアが最小になるような経路を利用する(なお、スコアが同じ場合は乗り換え回数が少ない経路を優先する)(出典)。そして、その乗換駅へ行く列車なら何でも利用する(出典)。どういうことかというと、現実にのっとって、東京駅から北へ向かう以下のような系統が存在するとしよう。
ここで、東京駅からさいたま新都心駅へ向かうとしよう。何が起きるかというと、
なので、「宇都宮線・高崎線 普通」を使う経路が選択される。ということは東京駅から直行するわけなのだが、東京駅からさいたま新都心駅まで直行する列車なら何でも使うので、京浜東北線にも容赦なく乗ってくる。要するに、経由駅を経由する便なら何にでも乗り込んでくるし、直行で向かうなら直行便なら何にでも乗ってくる(当たり前だが、旅客は郵便車や貨車には乗らないし、石炭は旅客車や郵便車やばら荷貨車以外の貨車には乗らない。経由計算段階でそれは配慮される)、ということである。
これが東京駅から倉賀野駅へ向かうとなると、何が起きるかというと、
なので、経由としては高崎駅経由になる。だが、快速アーバンだろうが、普通列車だろうが、新幹線だろうが、とにかく最初に来た高崎駅に行く列車に乗って、高崎駅で乗り換えて向かうことになる。
なので、適切な経路・停車駅の列車を設定しないと、変な経由で旅客・郵便・貨物が移動することになる。
昔は乗り換え回数のみで判定していたが、どうやら今はロジックが変わってるらしい。
掲示板
52 ななしのよっしん
2020/11/27(金) 15:48:36 ID: Vy42v+O57f
単線の棒線駅を作るのは難しいので、次は複線の場合。これは折り返し以外はわかりやすいので、折り返し部分だけシンプルに説明すると
1. 末端の折り返しはシンプル。場内信号機に入線振分信号を使う
2. 末端以外の折り返しで、折り返しに使う線が2以上ある場合、折り返しに使う線の場内信号機に入線振分信号を使う。本線に合流する前にEndofchoosetrackを入れておかないと、大回りして入線する不合理な予約をすることがあるので、入れておくと安心(自信なし)
タイトル:複線基本
53 ななしのよっしん
2020/11/29(日) 11:11:25 ID: Vy42v+O57f
単線で末端以外に棒線駅を置く場合、多閉塞信号を使う(図でMと書いてあるやつ)
挙動から説明すると
1. 次の信号機までの進路が空いていれば予約する(途中の駅は考慮しない)
2. 予約するのは次の停車駅もしくは信号機まで
A駅にD駅方面へ行く列車が停車していて、C駅にA駅方面へ行く列車がいる場合、普通の信号機だと、B駅までしか進路チェックしないのでB駅とC駅でお見合いになって永遠に立ち往生する。
多閉塞信号だと、次の信号(この場合、D駅のE駅方面出発信号)まで進路チェックするのでA駅から列車が出発しない。だから永遠に立ち往生するようなことは起きない。
タイトル:単線での棒線駅
54 ななしのよっしん
2020/11/29(日) 12:07:56 ID: Vy42v+O57f
最後が追い越しパターン。話を簡単にするために、複線である前提で話をする
本線には三現示信号、副本線にはプレシグナルを設置する。
それぞれの挙動は、
三現示信号:次の次の信号までチェックして、可能ならばそこまで予約する。できないなら次の信号までチェックして、可能ならばそこまで予約する
プレシグナル:次の次の信号までチェックして、可能ならばそこまで予約する。できないなら停止現示
いずれも、駅が途中にあるならそこまでしかチェックしない
で、副本線に入線する列車は、積むまで待機を100%にして、最大待ち時間を路線特性に合わせて適当な値にして、追い越しをさせるようにする。
ただし、すでに積載率100%のものは優等列車を原則待たずに発車するので、うまくいかない場合もあることに留意せよ。
タイトル:追い越し
急上昇ワード改
最終更新:2024/04/25(木) 17:00
最終更新:2024/04/25(木) 17:00
ウォッチリストに追加しました!
すでにウォッチリストに
入っています。
追加に失敗しました。
ほめた!
ほめるを取消しました。
ほめるに失敗しました。
ほめるの取消しに失敗しました。