ailists.cfg

Last-modified: 2020-09-30 (水) 16:27:55

OMSI WIki - Individualverkehr(ドイツ語)から要訳 & 補足

AIリストって何?

ailists.cfgはOMSIの各マップフォルダ(\maps\...)にあって、一般車両のAIの種類や路線で使われるバスの種類などを設定するコンフィグファイルです。
OMSI2ではAIトラフィックを個別にカスタマイズすることができます。例えばトラックなどAI車両を個別にグループ分けしてそれぞれを通行禁止にしたり週末には交通量を調整したりできます。

一般AI車両の設定

時刻表を持たない一般のAI車両は"[aigroup_2]"で指定します。

事前準備

OMSI2で進化したグループ分けや交通量の調整機能を使うには、マップフォルダー(OMSI 2\maps\...)に「unsched_vehgroups.txt」と「unsched_trafficdens.txt」の2つのファイルを追加する必要があります。これらのファイルは通常のテキストファイルなのでテキストエディターで編集できます。初代OMSIのailists.cfgには若干の編集が必要になります。

ailists.cfg

基本的にAI車両はそれぞれのグループに別けるのが望ましいです。グループには一般車両の「NomalCars」やその他どんな名前でも命名できます。旧形式にあった[ailist]は使われず、代わりに[aigroup_2]で直接各車両のファイルを指定していきます。

コード例:
[aigroup_2]
NormalCars
vehicles\VW_Golf_2\AI_VW_Golf_2.bus 70
vehicles\MB_W123_230E\AI_mb_w123_230e.bus 50
vehicles\VW_T3\VW_T3_Van.ovh 10
vehicles\Opel_Manta_B\ai_opel_manta_b.ovh 10
vehicles\Citr_BX\BX.ovh 40
[end]
[aigroup_2]
Trucks
vehicles\MAN_F90\AI_MAN_F90_Wechselbruecke.bus
[end]

上記の例の場合、車両グループがNomalCarsとトラック車両の「Trucks」の二つがあることになります。それぞれの車両ファイルの後ろの数値は、そのグループ内のトラフィック密度の絶対値に対する率を設定しています。この場合VW Golfの出現率はグループ内で7割の確率、Opelマンタは1割の確率で出現するということになります。

unsched_vehgroups.txt

このファイルでグループが認識されます。AI-Listのグループにつき一つのエントリーを指定するようにします。

コード例:
[group]
NormalCars
1
[group]
Trucks
0

上記の例では「NormalCars」がデフォルトで"ノーマル"な交通量が設定され、「Trucks」はデフォルトで走行しないように設定されます。つまり数値を(1)にするとノーマルトラフィックになり、(0)にするとそのグループは出現しません。トラック車両を出現させるにはエディターでパスを解除しなければなりません(後ほど詳しく)。

unsched_trafficdens.txt

このファイルでトラフィック密度の絶対値を設定します。グループごとに設定でき、例えばトラックは一般車より交通量を少なめにしたり、更には曜日ごとに交通量を細かく設定できます。

コード宣言:
[group]
{グループ名}
{全トラフィック密度係数。0.0~1.0の値を取り、トラフィック密度に乗算される}
[set_day_of_week]
{曜日ごとの設定: 0 = 一週間、1 = 平日、2 = 土曜、4 = 日曜}
[traffic density]
{時間: 13時は13.000となる}
{トラフィック密度: 0.0~1.0の値を取る}

次のような構造になります。

  • [group]
    • [set_day_of_week]
      • [trafficdensity]
      • [trafficdensity]
  • [group]
    • [set_day_of_week]
      • [trafficdensity]
      • [trafficdensity]
  • [group]
    • [set_day_of_week]
      • [trafficdensity]
      • [trafficdensity]

もし同じ時間を複数設定するとOMSIはその平均を計算します。また、その日の密度を"0"にした唯一のエントリーを持つことができます。

コード例:
[set_day_of_week]
4
[traffic density]
0.000
0.000

この場合、日曜は終日トラフィック無しとなります。

 

[set_day_of_week]に与える数値は柔軟性があり、以下に全ての可能なオプションを示します。

  • 0. 一週間全て
  • 1. 月~金 (0+1)
  • 2. 土曜 (0+2)
  • 3. 月~土 (0+1+2)
  • 4. 日曜 (0+4)
  • 5. 月~金、日 (0+1+4)
  • 6. 土日 (0+2+4)

エディター

標準トラフィック密度

OMSI2のエディターはスプラインが新しくなり、新しい機能が実装されました。図では一般車両は標準トラフィック密度を持ち、トラックは初めからロックされています。これを変更するにはあらかじめグループ欄をクリックしてからトラフィック密度の設定を選択します。

 

一般車両の標準
ailists_01.jpg

 

トラックの標準
ailists_02.jpg

私道の例

この機能でどのように私道を作成するか例を示しましょう。一般車両は幹線道路も私道も使用します。対してトラックは幹線道路のみ使用し、私道を"通行禁止"に設定しています。

 

一般車両と私道
ailists_03.jpg

 

トラックと私道
ailists_04.jpg

実際のコード例

ここに3つのグループ(NormalCars: 一般車両、Trucks: トラック、Commercials: 社名の入ったバンなどの商業車両)を使った例を示します。

ailists.cfg

[aigroup_2]
NormalCars
vehicles\VW_Golf_2\AI_VW_Golf_2.bus	6
vehicles\MB_W123_230E\AI_mb_w123_230e.bus	4
vehicles\VW_T3\VW_T3_Van.ovh	2
vehicles\Opel_Manta_B\ai_opel_manta_b.ovh	1
vehicles\Citr_BX\BX.ovh	4
[end]
[aigroup_2]
Trucks
vehicles\MAN_F90\AI_MAN_F90_Wechselbruecke.bus
[end]
[aigroup_2]
Commercials
vehicles\MB_T1\ai_mb_t1_kasten.ovh
vehicles\VW_T3\VW_T3_Transporter.ovh
[end]

unsched_vehgroups.txt

[group]
Normal Cars
1
[group]
Trucks
1
[group]
Commercials
1

unsched_trafficdens.txt

-------------------------------------Autos(一般車)
[group]
NormalCars
0.9
----------------------Mo-So(月~日)
[set_day_of_week]
0
[trafficdensity]
0.000
0.100
[trafficdensity]
4.000
0.010
[trafficdensity]
6.000
1.000
[trafficdensity]
7.000
1.500
[trafficdensity]
8.000
1.000
[trafficdensity]
10.000
0.500
[trafficdensity]
15.000
0.600
[trafficdensity]
16.000
1.000
[trafficdensity]
17.000
1.500
[trafficdensity]
20.000
0.400
[trafficdensity]
24.000
0.100
-------------------------------------LKWs(トラック)
[group]
Trucks
0.1
----------------------Mo-Sa(月~土)
[set_day_of_week]
3
[trafficdensity]
0.000
0.050
[trafficdensity]
4.000
0.005
[trafficdensity]
6.000
0.750
[trafficdensity]
8.000
0.500
[trafficdensity]
16.000
0.500
[trafficdensity]
17.000
0.750
[trafficdensity]
18.000
0.050
----------------------So(日)
[set_day_of_week]
4
[trafficdensity]
0.000
0.000
-------------------------------------LKWs(商業車)
[group]
Commercials
0.6
----------------------Mo-Sa(月~土)
[set_day_of_week]
3
[trafficdensity]
0.000
0.090
[trafficdensity]
4.000
0.010
[trafficdensity]
6.000
1.200
[trafficdensity]
8.000
0.800
[trafficdensity]
16.000
0.900
[trafficdensity]
17.000
1.100
[trafficdensity]
18.000
0.100
----------------------So(日)
[set_day_of_week]
4
[trafficdensity]
0.000
0.000

スケジュールAI

路線を時刻表にそって運行させるAIバスの指定は、"[aigroup_depot]"と"[aigroup_depot_typgroup_2]"のペアで行います。以下の様な構造になります。

  • [aigroup_depot]
    • [aigroup_depot_typgroup_2]...[end]
    • [aigroup_depot_typgroup_2]...[end]
    • ...
  • [aigroup_depot]
    • [aigroup_depot_typgroup_2]...[end]
    • [aigroup_depot_typgroup_2]...[end]
    • ...

Depotグループの設定

[aigroup_depot]でスケジュール運行させるバスの所属営業所を設定します。つまり各車両フォルダ(OMSI 2\Vehicles\...)のHofファイルを指定します。

コード例:
[aigroup_depot]
Hof Spandau
Spandau 1994
Hof Spandau
グループ名。マップエディターで時刻表を設定する時に表示されます。
Spandau 1994
Depot名。Hofファイルの名前(ファイル内の[name]で定義されている)を指定します。

ちなみに各マップフォルダにあるglobal.cfgの[standarddepot]でこのグループ名(例: Hof Spandau)を設定すれば、ユーザーがこのバスを選択する場合に、選択画面でデフォルトでこのDepotが指定されるようになります。

Depotグループの車種設定

新しく[aigroup_depot_typgroup_2]が実装されました。これは旧形式の[aigroup_depot_typgroup]と機能は同じですが、個別にナンバープレートの指定が可能になっています。車体番号ごとに一行にまとめられ、各項目はタブ区切りで記述します。

コード例:
[aigroup_depot_typgroup_2]
vehicles\MAN_SD202\MAN_D92.bus
3960	GRN-V 60
3961	GRN-V 61	SDK-Repainttest
3962	GRN-V 62
[end]

上の例ではD92の3961号車のナンバープレートはGRN-V 61となり、SDK-Repainttestのペイントが適用されます。(※ペイント指定の後ろに年月日指定ができるようですが筆者はよく分かっていません。Spandauマップのailists.cfgに見られます。)


加筆訂正随時募集