//cache()

*シナリオ [#abbf0ae9]

#contents

RIGHT:
RIGHT:&size(10){''更新履歴''};
&size(10){112.0用に記述を修正 2012/10/28};
&size(10){ナイトリー版の情報を追加 2012/09/14};
&size(10){新規作成 [[Simutransドイツ版wiki>http://www.simutrans-germany.com/wiki/wiki/tiki-index.php?page=de_Szenarien_erstellen&bl=y]]から日本語訳 2010/12/02};

シナリオは、セーブデータにプレイの目標を設定します。バージョン100.0から実装された機能です。

「新しいマップ」画面からシナリオを読み込むことができます。

シナリオは2つのファイルから構成されています。ひとつはセーブデータファイル(*.sve)、もうひとつは設定ファイル(*.tab)です。
これらのファイルは''pak/scenarioフォルダ''に配置されている必要があります。シナリオでは、scenarioフォルダの上の階層にあるpakセットが使用されます。

シナリオが達成されたかどうかは月末に判定されます。月末時点で条件が満たされていると達成とされ、シナリオが終了します。

*simutrans 111.3.1まで [#j3c28780]

**設定ファイル [#ed55adab]
設定ファイルからは以下のパラメータが指定できます。

''savegame''
シナリオでどのセーブデータを使用するか指定します。(*.sve)
セーブデータはpak/scenarioフォルダに配置されているものです。

''type''
シナリオの達成条件を指定します。
|値|シナリオの達成条件|
|3|指定された産業チェーンを完成させ、供給を安定させる|
|4|資金を指定金額以上に増やす|
|5|指定数の鉄道編成を黒字化し、本社を建設する|
|6|1ヶ月の輸送実績を指定数以上に増やす|

''factorypos''(3の場合のみ)
産業チェーンの最終消費地を座標で指定します。

''factor''
数値を指定します。
|タイプ|意味|
|4|達成されるべき資金の金額|
|5|黒字化されるべき編成数|
|6|達成されるべき1ヶ月の輸送実績|

シナリオの条件と達成率は財務ウィンドウに表示されます。
&ref(scenario.png,nolink);

**例 [#sce4e5ba]
「月に500人以上の旅客を輸送」するシナリオの場合
 savegame=book-empire.sve
 type=6
 factor = 500

*ナイトリー版 [#q2515c8e]
*112.0以降 [#q2515c8e]

ナイトリー版ではシナリオファイルは、組み込み言語Squirrelのスクリプトで記述するように変更されています。従来のシナリオファイルは使用できません。
Simutrans 112.0ではシナリオファイルは、組み込み言語Squirrelのスクリプトで記述するように変更されています。従来のシナリオファイルは使用できません。

''注意:''
以下の記述はr5914現在のものです。今後リリース版までに変更される可能性があります。
現在のところ情報量が少なく、またシナリオが公式pakセットに同梱されたものではないため、ここに集約しています。将来的に開発関連とプレイ情報とのページは必要があれば分離してもらってかまいません。


**シナリオを作成する [#l4c31e86]

***Squirrelを学ぶ [#cc9405a9]

&imgfolder(16/world_go.png); [[Squirrel本家>http://www.squirrel-lang.org/]]
&imgfolder(16/world_go.png); [[Squirrel 3.0 Reference Manual>http://www.squirrel-lang.org/doc/squirrel3.html]] (Squirrel本家)
&imgfolder(16/world_go.png); [[Squirrel 2.1 リファレンスマニュアル>http://wikiwiki.jp/lua/?Squirrel_Lang%2Ftoc]]

***API [#k3c2fc10]

&imgfolder(16/world_go.png); [[Simutrans-Squirrel-APIリファレンス>http://dwachs.github.com/simutrans-sqapi-doc/]]

''現在スクリプトでできること、できないこと:''
- マップやマップ上のオブジェクトの情報を取得することが可能、情報を変更することは不可(例外としてindustry_increase_everyだけが変更可能)
- マップ全体もしくは範囲を特定して、特定のツールの使用を禁止したり、許可することが可能
- プレイヤーのアクション(ツールでマップ上をクリック)時にスクリプトを実行することが可能
- シナリオの情報ウィンドウに情報を表示することが可能
- 何かを建設や追加したり、撤去したり、マップ上のオブジェクトに変更を加えることはできない

**シナリオを遊ぶ [#yabf56bc]

2012/09/14現在SourceForgeの公式pakセットにはナイトリー版で動作可能なシナリオは同梱されていません。また、r5914現在シナリオの実行に必要なファイルがナイトリー版として配布されているものには含まれていませんので、それぞれ個別にダウンロードしてインストールする必要があります。
112.0ではpak64のシナリオはpakセットに同梱されています。
pak128のシナリオも最新版のv2.2に同梱されています。

なおシナリオマップは英語で作成されていて、ドキュメントも日本語化されていません。

&imgfolder(16/world_go.png); [[サンプルシナリオ(GitHub)>https://github.com/Dwachs/simutrans-scenarios]]
&imgfolder(16/world_go.png); [[scriptフォルダ>https://github.com/aburch/simutrans/tree/master/simutrans/script]]
自分でダウンロードした場合は、各pakセットフォルダの下のscenarioフォルダに各シナリオフォルダをインストールします。

上記リンクからシナリオとscriptフォルダをダウンロードして、以下の構成のようにインストールします。
scriptフォルダは必須のファイルです。将来ナイトリー版やリリース版に含まれるようになれば個別にダウンロードする必要はなくなります。
サンプルシナリオにはpak64用、pak128用があります。pak64用は従来のバージョンに含まれていたシナリオをナイトリー版で動作するように変更しただけのようです。pak128用のシナリオは後述。
これらのファイルは今後APIが大きく変更されて起動できなくなった場合には新しくダウンロードしなおす必要があるかもしれません。

***ファイル構成 [#u744562f]

 [Simutrans]                                                 
 ┣[script]                                                  
 ┃┣new_scenario_template.nut   新規シナリオ用テンプレート  
 ┃┗scenario_base.nut           基本スクリプトファイル(必須)
 ┗[pakフォルダ]                                             
   ┗[scenario]                                            
     ┣シナリオ名.nut              シナリオ用スクリプトファイル
     ┣*.sve                       シナリオ用初期マップ        
     ┗[シナリオ名]                                            
       ┣言語名.tab                シナリオ用言語ファイル      
       ┗[言語名]                                              
         ┗*.txt                   シナリオ用追加言語ファイル  
 [Simutrans]
 ┣[script]
 ┃┣new_scenario_template.nut   新規シナリオ用テンプレート
 ┃┗scenario_base.nut           初期化スクリプトファイル
 ┗[pakフォルダ]
   ┗[シナリオ名]
     ┣scenario.nut              シナリオ用スクリプトファイル
     ┣*.sve                     シナリオ用初期マップ
     ┣言語名.tab                シナリオ用言語ファイル
     ┗[言語名]
       ┗*.txt                   シナリオ用追加言語ファイル



**サンプルシナリオ(pak128) [#c2510e3e]

上記リンクからダウンロードしたサンプルシナリオの簡単な説明です。
pak128用には以下の3つのシナリオが含まれています。

***new_york [#xff0fdf6]

&ref(new_york.png,nolink);

|マップサイズ|1024x1024|
|開始年月|1960/2|
|都市数|84|
|産業数|75|
|編成数|0|
|駅数|5(空港)|
|現金|2,000,000クレジット|

''クリア条件:''
- ミッドタウン(Midtown)の95%以上の旅客を輸送すること(過去1年間の旅客の輸送実績)
- ガバナーズ・アイランド(Governors Island)に本社を建設すること
- 以下の4つの空港すべてで旅客輸送をすること
-- John F. Kennedy Int. Airport (961, 494)
-- La Guardia Airport (601, 265)
-- Newark Int. Airport (207, 731)
-- Teterboro Airport (162, 283)

''ルールと制限事項:''
- ハドソン川を横断する橋やトンネルを建設したり、ハドソン川を完全に埋め立ててしまうことはできません
- イースト川には橋やトンネルを建設することができます
- ビルの撤去費用は通常のpak128の5倍かかります
- 発展によって産業施設が自動的に建設されることはありません

''攻略のコツ:''

どなたか記述願います。

***sell_clothing [#g7a26fe8]

&ref(sell_clothing.png,nolink);

|マップサイズ|1664x128|
|開始年月|1930/1|
|都市数|3|
|産業数|65|
|編成数|0|
|駅数|1(港)|
|現金|500,000クレジット|

''クリア条件:''
|レベル|レベルクリア条件|h
|1|1年以内(1930年末まで)に''6隻以上''の漁船を使って1000トン以上の生魚を缶詰工場に運ぶこと|
|2|製鉄所に鉄鉱石と石炭を運び、鉄鋼の生産を開始すること|
|3|(1) 鉄鋼を製鉄所から缶詰工場に運び、生産した缶詰をCoventry市のスーパーマーケットに運ぶこと&br;(2) ''12隻以上''の漁船を使って生魚を缶詰工場に運ぶこと|
|4|ウール・綿花を織物工場に運び、織物の生産を開始すること|
|5|London市のスーパーマーケットに缶詰を運ぶこと|
|6|Salisbury市のショッピングモールに織物を運ぶこと|

''ルールと制限事項:''
- レベル4以下では、Coventry市東側の海峡を横断する橋は建設できない

''ゲームオーバー:''
- 1年以内(1930年末まで)にレベル1をクリアできない場合
- レベルに関係なく、缶詰工場に14910トン以上の魚肉を保管した場合
- レベル2、3で操業中の漁船が6隻を下回ったとき
- レベル4以上で操業中の漁船が12隻を下回ったとき

''攻略のコツ:''

どなたか記述願います。

- 極力整地を控えて鉄道敷設
- ウール⇔缶詰の往復で収益確保
- 破産に注意
***tramadness [#r8be7ba2]

&ref(tramadness.png,nolink);

|マップサイズ|64x64|
|開始年月|2000/10|
|都市数|4|
|産業数|0|
|編成数|8|
|駅数|11(トラム駅)|

''クリア条件:''
Cambridge-Ripon TOP Station(ケンブリッジ-リポン山頂駅)に乗客を呼び込むこと

''ルールと制限事項:''
- 旅客の輸送にはトラムのみが使用できます
- 各駅は1タイルのプラットフォームのみが建設可能で、駅やプラットフォームの拡張は許可されていません
- Cambridge TOP station、Ripon CS、Cambridge CSの3駅は取り壊したり、移動することはできません
- それ以外の道路(橋やトンネルを含む)とトラムレール、駅などは自由に建設撤去できます
- 本社は建設できません


''攻略のコツ:''

どなたか記述願います。

- 維持費が経営を圧迫するため、売却・撤去
- TOP stationに近づく方向に街を発展させると簡単に達成できます
**シナリオ情報ウィンドウの日本語リソース [#jee8373e]

 §#
 Scenario information
 シナリオの情報
 Scenario Info
 概要
 Scenario Goal
 クリア条件
 Scenario Rules
 ルール
 Scenario Result
 成績
 About scenario
 About
 Scenario Debug
 デバッグ
 Scenario
 シナリオ情報


**シナリオの情報ウィンドウ [#t5ba2b23]

ゲーム開始時とシナリオ達成時に表示されます。シナリオによっては、レベルアップした場合などにも表示されます。
ここに表示される内容はその時点のレベルによって変化する場合があります。
ウィンドウは「設定>シナリオ情報(Scenario)」からいつでも開くことができます。

&ref(senario_info.png,nolink);