設定ファイル/cityrules.tab
の編集
Top
/
設定ファイル
/ cityrules.tab
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
%doctored_article_title%
Addon/MenuBar
Addon128
Addon128/Aircrafts
Addon128/Aircrafts 2
Addon128/Buildings01
Addon128/Buildings02
Addon128/Buildings03
Addon128/Buildings04
Addon128/Buildings05
Addon128/Citycars 1
Addon128/HalfSlope/MonorailTools 1
Addon128/HalfSlope/Others
Addon128/HalfSlope/RailTools 1
Addon128/HalfSlope/RailTools 2
Addon128/HalfSlope/RoadTools 1
Addon128/Monorail1
Addon128/MonorailTools 1
Addon128/Others
Addon128/RailTools 1
Addon128/RailTools 2
Addon128/RailTools 3
Addon128/RoadTools 1
Addon128/Ships
Addon128/Train 1
Addon128/Train 2
Addon128/Train 3
Addon128/Train 4
Addon128/Train 5
Addon128/Train 6
Addon128/Train 7
Addon128/Train 8
Addon128/Train 9
Addon128/Train10
Addon128/Train11
Addon128/Train12
Addon128/Train13
Addon128/Train14
Addon128/Train15
Addon128/Train16
Addon128/Train17
Addon128/Train18
Addon128/Train19
Addon128/Train20
Addon128/Train21
Addon128/Train22
Addon128/Train23
Addon128/Train24
Addon128/Train25
Addon128/Train26
Addon128/Train27
Addon128/Train28
Addon128/Trucks
Addon128/Trucks2
Addon128Japan
Addon128Japan/MenuBar
Addon128Japan/Others
Addon128Japan/Ships
Addon128Japan/Ships/Cargo/NonInternational
Addon128Japan/Ships/Cargo/OceanGoing
Addon128Japan/Ships/Others
Addon128Japan/Ships/Passenger/Coasting
Addon128Japan/Ships/Passenger/HighspeedCrafts
Addon128Japan/Ships/Passenger/OceanGoing
Addon128Japan/Ships/Passenger/SmoothWater
Addon128Japan/Train 1
Addon128Japan/Train 2
Addon128Japan/Train 3
Addon128Japan/Train 4
Addon128Japan/Train Index
Addon128Japan/TrainIndexNew
Addon128Japan/TransportTools
Addon128Japan/header
Addon128Japan/アドオン投稿報告
Addon128Japan/貨車
Addon128Japan/機関車
Addon128Japan/気動車
Addon128Japan/客車
Addon128Japan/旧型国電
Addon128Japan/近郊形電車
Addon128Japan/新幹線
Addon128Japan/大手私鉄
Addon128Japan/第三セクター他
Addon128Japan/地下鉄
Addon128Japan/地方私鉄
Addon128Japan/通勤形電車
Addon128Japan/特急形電車
Addons
Addons/128
Addons/128/Trains_01
Addons/128/Trains_02
Addons/128/Trains_03
Addons/128/Trains_04
Addons/128/Trains_05
Addons/128/Trains_10
Addons/128/Trains_20
Addons/128/Trains_21
Addons/128/Trains_22
Addons/128/Trains_23
Addons/128/Trains_24
Addons/128/Trains_30
Addons/128/Trains_31
Addons/64
Addons/64/Trains_01
Addons/64/Trains_02
Addons/64/Trains_03
Addons/64/Trains_04
Addons/64/Trains_05
Addons/64/Trains_10
Addons/64/Trains_20
Addons/64/Trains_21
Addons/64/Trains_22
Addons/64/Trains_23
Addons/64/Trains_24
Addons/64/Trains_30
Addons/64/Trains_31
Addons/List
Addons/List2
BracketName
Classic
Classic/FAQ
Classic/Install
Classic/JapaneseTranslation
FAQ
FormatRule
FormattingRules
FrontPage
Help
Infomation
Install
InterWiki
InterWikiName
InterWikiテクニカル
MenuBar
Pakセット
Simutransとは
Simutransの歴史
Site_Map
Tools
Tools/Tools01
WikiEngines
WikiName
WikiWikiWeb
frontpage
pak・アドオンインストール
pak・アドオンインストール/iOS版にアドオンを追加する場合
simutrans extended
simutrans extended/Pakセット
simutrans extended/アドオン
simutrans extended/アドオン開発
simutrans extended/アドオン開発/datファイル記述リファレンス/factory(産業)
simutrans extended/アドオン開発/datファイル記述リファレンス/vehicle(乗り物)
simutrans extended/アドオン開発/datファイル記述リファレンス/way(道)
★Addon 新ー事業社別アドオン逆引き集
このサイトについて
よくある質問
アドオン
アドオン/MenuBar
アドオン/monorail
アドオン/railtool
アドオン/railtool2
アドオン/その他
アドオン/街の車
アドオン/緩急坂/その他
アドオン/緩急坂/モノレール
アドオン/緩急坂/鉄道関連 1
アドオン/緩急坂/鉄道関連_2
アドオン/緩急坂/道路関連 1
アドオン/緩急坂/道路関連 2
アドオン/建物1
アドオン/建物2
アドオン/建物3
アドオン/建物4
アドオン/建物5
アドオン/交通施設 2
アドオン/航路ツール
アドオン/自動車
アドオン/自動車2
アドオン/船
アドオン/船2
アドオン/飛行機
アドオン/問題報告
アドオン/問題報告/過去のコメント
アドオン/問題報告/過去のコメント/1
アドオン/列車1
アドオン/列車10
アドオン/列車11
アドオン/列車12
アドオン/列車13
アドオン/列車14
アドオン/列車15
アドオン/列車16
アドオン/列車17
アドオン/列車18
アドオン/列車19
アドオン/列車2
アドオン/列車20
アドオン/列車21
アドオン/列車22
アドオン/列車3
アドオン/列車4
アドオン/列車5
アドオン/列車6
アドオン/列車7
アドオン/列車8
アドオン/列車9
アドオンインストール
アドオン開発
アドオン開発/Makeobj
アドオン開発/datファイル記述リファレンス
アドオン開発/datファイル記述リファレンス/bridge(橋)
アドオン開発/datファイル記述リファレンス/building(建築物)
アドオン開発/datファイル記述リファレンス/building(建築物)2
アドオン開発/datファイル記述リファレンス/citycar(自動車)
アドオン開発/datファイル記述リファレンス/crossing(交差)
アドオン開発/datファイル記述リファレンス/factory(産業)
アドオン開発/datファイル記述リファレンス/goods(貨物)
アドオン開発/datファイル記述リファレンス/ground_obj
アドオン開発/datファイル記述リファレンス/misc(各種)
アドオン開発/datファイル記述リファレンス/pedestrian(通行人)
アドオン開発/datファイル記述リファレンス/roadsign(道路標識)
アドオン開発/datファイル記述リファレンス/tree(木)
アドオン開発/datファイル記述リファレンス/tunnel(トンネル)
アドオン開発/datファイル記述リファレンス/vehicle(乗り物)
アドオン開発/datファイル記述リファレンス/way(道)
アドオン開発/datファイル記述リファレンス/way-object
アドオン開発/アドオンの作り方
アドオン開発/ツール解説
アドオン開発/フリー素材
アドオン開発/画像
アドオン開発/画像/参考技術
アドオン開発/画像/指定の仕方
インストール
サイトマップ
スクリーンショット
スクリーンショット/128
スクリーンショット/64
スクリプト開発
スクリプト開発/Tips集
スレッドのまとめ
チュートリアル
チュートリアル/pak128で始める旅客輸送
チュートリアル/ゲームのルール
チュートリアル/ゲームの開始と終了
チュートリアル/スケジュールと路線
チュートリアル/スケジュールと路線/時刻表について
チュートリアル/デッドロック対応方法
チュートリアル/トンネル
チュートリアル/駅やバス停等の建設
チュートリアル/貨物輸送入門
チュートリアル/緩急接続の仕方
チュートリアル/緩急接続の仕方2
チュートリアル/既存路線の編成を変更する方法
チュートリアル/橋のかけ方
チュートリアル/空港の建設方法
チュートリアル/公共事業の活用
チュートリアル/市域(city limit)について
チュートリアル/初心者のためのSimutrans経営マニュアル
チュートリアル/信号入門
チュートリアル/信号入門/102.2.2
チュートリアル/信号入門/応用1
チュートリアル/信号入門/複線での列車追い越し方法
チュートリアル/信号入門88
チュートリアル/信号入門89
チュートリアル/信号入門99
チュートリアル/信号配置と配線のテクニック
チュートリアル/折り返し・分岐の諸技
チュートリアル/線路や道路等の建設
チュートリアル/他社との乗換駅・直通運転
チュートリアル/他社との乗換駅を作る方法
チュートリアル/大きな駅の配線について
チュートリアル/電化と非電化
チュートリアル/電力入門(111.1)
チュートリアル/複層高架の建設方法
チュートリアル/便利なショートカットキー
チュートリアル/輸送方法いろいろ
チュートリアル/郵便入門
チュートリアル/旅客輸送指南
ヘルプ
マップ
メモ
メモ/pak64産業施設
メモ/trick
メモ/その他各種Tips
メモ/アドオン(pak64)索引
メモ/ショートカットの作り方
メモ/ネットワークゲーム
メモ/ネットワークゲーム/Nettool
メモ/マップ一覧/Size256 No.000〜099
メモ/マルチプレイ
メモ/貨物輸送に関するあれこれ
メモ/産業施設一覧
メモ/他社間の鉄道の乗り入れの仕方
メモ/段差のある駅を作る方法
メモ/儲ける方法いろいろ
リンク
画面説明
画面説明/ゲームオプション
画面説明/スケジュール・路線
画面説明/スタート
画面説明/スロープツール
画面説明/ツールバーとウィンドウ
画面説明/マップ編集ツール
画面説明/ミニマップ
画面説明/メッセージ表
画面説明/モノレール/リニアツール
画面説明/ロード・セーブ
画面説明/一覧表
画面説明/航空機ツール
画面説明/財務
画面説明/市電/軽便鉄道ツール
画面説明/車庫
画面説明/船舶ツール
画面説明/調査ツール
画面説明/鉄道ツール
画面説明/道路ツール
画面説明/特別建築物
画面説明/路線編集
開発
開発/ビルド方法
開発/派生版
各Pakセットの解説(Extended)
簡易掲示板
簡易掲示板/アドオンの改造・公開の確認用スレッド
簡易掲示板/運営チームへ
簡易掲示板/質問
簡易掲示板/質問/1
企画
資料
資料/128版コストデータファイル
資料/貨物一覧
資料/乗り物一覧
資料/乗り物一覧/トラック
資料/乗り物一覧/バス
資料/乗り物一覧/フェリー
資料/乗り物一覧/モノレール
資料/乗り物一覧/貨車
資料/乗り物一覧/機関車
資料/乗り物一覧/航空機
資料/乗り物一覧/船舶
資料/乗り物一覧/旅客車
資料/乗り物一覧/路面電車
資料/名所旧跡一覧
新しい産業を作ろう!@64
新しい産業を作ろう!@64/コメント
新しい産業を作ろう!@64/コメント/1
整形ルール
設定ファイル
設定ファイル/cityrules.tab
設定ファイル/menuconf.tab
設定ファイル/simuconf.tab
設定ファイル/シナリオ
設定ファイル/高度な設定
鉄道路線、輸送力増強ガイド
日本語(漢字)化プロジェクト
日本語化ファイル
日本語化ファイル/ja.tab編集方法
日本語化ファイル/旧ファイル倉庫
用語集
//cache #contents RIGHT: &size(10){''更新履歴''}; &size(10){cluster_factor追加 2013/08/18}; &size(10){いろいろ追加・整理 2010/05/09}; * 設定ファイル/cityrules.tab [#h37fcf7b] ファイル中の''#''で始まる行はコメントです。 ''&color(blue){青色};''のキーワードは、110.0以降セーブゲームごとに保存される設定です。''新規ゲームにのみ反映されます。''新規ゲーム作成後にゲーム途中で変更することはできません。 ''&color(maroon){臙脂色};''のキーワードは、110.0以降オンラインゲームでのみセーブゲームごとに保存される設定です。''新規ゲームにのみ反映されます。'' &imgfolder(16/info.png); cityrules.tabの設定はセーブゲームには保存されません。変更後にsimutransを起動すると、すべてのゲームに変更が適用されます。 ただし、ネットワークゲームの場合のみ、すべての設定がセーブゲームに保存され、後から変更できません。(2010/12/05 追記) :&color(blue){minimum_city_distance}; = 32| 新規マップ作成時の都市間の最低距離 :&color(maroon){renovation_percentage}; = 12| 都市の発展時に、新規建物を多く建設するか、既存の建物をレベルアップさせるかの判断に使用されます。&br;値を大きくすると新規建物が建設されなくなり、逆に値を小さくすると都市が広がりやすくなります。 :&color(maroon){minimum_building_density}; (minimum_building_desity) = 25| (100.0以降)都市の発展時に、市域を拡張するかどうかの閾値。市域全体のうち、建物の比率が数値より低いときには拡張せず、数値より高いときは拡張します。&br;後方互換性のため''minimum_building_desity''も使用できます。 :&color(gray){industry_increase_every}; = 2000| [102.2.2まで] 新規産業チェーンが作られるタイミング、人口条件を設定します。pak64のデフォルトは2000で、各都市の人口が2,000、4,000、8,000、1,6000、32,000、64,000、128,000、256,000に達した場合に建設または拡張されます。(ただし、情報ウィンドウに表示されている人口と、実際に建設される時期との間には、ずれがあります)&br;0を指定すると、人口増加で新規産業チェーンは建設されません。 &imgfolder(16/light_off.png); 建設時期は設定値の倍々で8回までです。デフォルトの2000ですと、8回目の256,000が最後で、それ以上人口が増えても建設されません。 &imgfolder(16/exclamation.png); nightly版、110.0以降では、industry_increase_everyはsimuconf.tab内で設定します。 *エリアルール [#r5c31567] 市内建築物が建つ場合に、どの種類の建物が建つかという計算に使われます。ルールは新築、建て替えの両方に適用されます。 計算の結果最も期待値の高いものが建設されます。 &imgfolder(16/pencil.png); 工場とは産業施設ではなく、市内建築物の工場です。 :&color(maroon){res_start_score}; = 0|住宅が建つ期待値 :&color(maroon){res_near_ind}; = -8|工場の近くに住宅が建つ期待値 :&color(maroon){res_near_com}; = 0|商店の近くに住宅が建つ期待値 :&color(maroon){res_near_res}; = 8|住宅の近くに住宅が建つ期待値 :&color(maroon){com_start_score}; = -10|商店が建つ期待値 :&color(maroon){com_near_ind}; = 1|工場の近くに商店が建つ期待値 :&color(maroon){com_near_com}; = 8|商店の近くに商店が建つ期待値 :&color(maroon){com_near_res}; = 1|住宅の近くに商店が建つ期待値 :&color(maroon){ind_start_score}; = 0|工場が建つ期待値 :&color(maroon){ind_near_ind}; = 8|工場の近くに工場が建つ期待値 :&color(maroon){ind_near_com}; = 0|商店の近くに工場が建つ期待値 :&color(maroon){ind_near_res}; = -8|住宅の近くに工場が建つ期待値 ---- :cluster_factor = 10|[112.3以降]市内建築物を新築、建て替えする場合に、隣接した建物が同じクラスタ(集団)の値を持っていれば、建物の出現確率(chance)がcluster_factor倍になります。(複数指定されている場合でも一つが一致すればよい) 逆に隣接した建物が異なるクラスタ値しか持っていない場合は出現確率がcluster_factor分の一に減ります。 隣接した建物のいずれもにクラスタ値が設定されていない場合はこの値は無視されます デフォルトでは10倍と1/10 注: 市内建築物にclustersが設定されている必要があります **計算方法 [#tacb9462] +住宅、商店、工場が建つ期待値をそれぞれの初期値とします +建設予定地の周囲2タイル、(-2,-2)-(+2,+2)の計25タイルのタイルを調べます +見つかった住宅、商店、工場の数だけ、その周囲に建つ期待値をそれぞれ加えます +商店、工場の期待値に無職者の数÷4を加えます +住宅の期待値に浮浪者の数を加えます +最も期待値の高い建物が建ちます(建てられる建物があった場合) *市道/建物生成ルール [#gc4be9e9] configディレクトリに存在するcityrules.tabファイルでは、 都市の建物と道路の生成規則を定義しています。 例) 市道を生成する規則 road_1 = .H. SnS .sS road_1.chance = 8 例) 建物を生成する規則 house_1 = ... Hn. sss house_1.chance = -2 - "''house_1''" というのは、この規則の名前です。 建物の生成規則には "house_1" から始まる連番を、 道路の生成規則には "road_1" から始まる連番を付けます。 - 右辺の "''... Hn. sss''" の部分が規則の内容です。 ここについては後述します。 - 2行目の "''house_1.chance = -2''" というのは、 この規則が適用される確率を表します。 "-7" が最も高確率で、''数字が大きくなるほど確率が低くなっていきます''。 |~chance|-7|-6|-5|-4|-3|-2|-1|0|1|2|3|4|...|8|h |~確率|1/1|1/2|1/3|1/4|1/5|1/6|1/7|1/8|1/9|1/10|1/11|1/12|...|1/16| **アルゴリズム [#jcff96b9] +市域の中からランダムに1タイルを選択します +空地でなければ終了します +最初は道路ルールです。ランダムな道路ルールを選びます +ルールを適用する確率を試し、はずれたら次の番号のルールを選びます +ルールに一致するかを試し、一致すれば、道路を建設して終了します +一致しなければ次の番号のルールを選び、繰り返します(最後まで行ったら最初に戻り、一巡するまですべてのルールを試します) +どれも一致しなければ、次は建物ルールです。ランダムな建物ルールを選びます +ルールを適用する確率を試し、はずれたら次の番号のルールを選びます +ルールに一致するかを試し、一致すれば、建物を建てて終了します +一致しなければ次の番号のルールを選び、繰り返します(最後まで行ったら最初に戻り、一巡するまですべてのルールを試します) ** 規則の意味 [#e3aa3a48] 1行目の右辺にある "''... Hn. sss''" という部分が、この規則の内容を表します。 これは、以下のように3行3列のパターンを意味しています。 |.|.|.| |H|n|.| |s|s|s| &imgfolder(16/info.png); ルールは3x3、5x5、7x7の3通りが使えます。ルールごとに違うサイズを使用しても構いません。 それぞれの文字は、以下のような意味を持っています。 |CENTER:''文字''|CENTER:''意味''|h |CENTER:s|道路| |CENTER:S|道路ではない| |CENTER:h|建物| |CENTER:H|建物ではない| |CENTER:t|駅・駅ビル| |CENTER:T|駅・駅ビルではない| |CENTER:n|自然 (建物や道路がないという意味)| |CENTER:.|何でもよい| 3行3列の範囲がこのパターンに合致するとき、 真ん中のマスに建物や道路が (規則の2行目で指定した確率に従って) 発生します。 パターンは90度単位で回転したものを含みます。 たとえば、上の規則は、それを回転して得られる |s|H|.| |s|n|.| |s|.|.| や |s|s|s| |.|n|H| |.|.|.| や |.|.|s| |.|n|s| |.|H|s| というパターンにも合致します。 一方、パターンは反転を''含みません''。 つまり、上の規則は |.|.|.| |.|n|H| |s|s|s| というパターンには''合致しません''。 したがって、非対称な規則では、 反転したパターンを別の規則として定義する必要があるでしょう。 例としてデフォルトのcityrules.tabを見ると、 house_2 = ... .nH sss house_2.chance = -2 と定義されています。
//cache #contents RIGHT: &size(10){''更新履歴''}; &size(10){cluster_factor追加 2013/08/18}; &size(10){いろいろ追加・整理 2010/05/09}; * 設定ファイル/cityrules.tab [#h37fcf7b] ファイル中の''#''で始まる行はコメントです。 ''&color(blue){青色};''のキーワードは、110.0以降セーブゲームごとに保存される設定です。''新規ゲームにのみ反映されます。''新規ゲーム作成後にゲーム途中で変更することはできません。 ''&color(maroon){臙脂色};''のキーワードは、110.0以降オンラインゲームでのみセーブゲームごとに保存される設定です。''新規ゲームにのみ反映されます。'' &imgfolder(16/info.png); cityrules.tabの設定はセーブゲームには保存されません。変更後にsimutransを起動すると、すべてのゲームに変更が適用されます。 ただし、ネットワークゲームの場合のみ、すべての設定がセーブゲームに保存され、後から変更できません。(2010/12/05 追記) :&color(blue){minimum_city_distance}; = 32| 新規マップ作成時の都市間の最低距離 :&color(maroon){renovation_percentage}; = 12| 都市の発展時に、新規建物を多く建設するか、既存の建物をレベルアップさせるかの判断に使用されます。&br;値を大きくすると新規建物が建設されなくなり、逆に値を小さくすると都市が広がりやすくなります。 :&color(maroon){minimum_building_density}; (minimum_building_desity) = 25| (100.0以降)都市の発展時に、市域を拡張するかどうかの閾値。市域全体のうち、建物の比率が数値より低いときには拡張せず、数値より高いときは拡張します。&br;後方互換性のため''minimum_building_desity''も使用できます。 :&color(gray){industry_increase_every}; = 2000| [102.2.2まで] 新規産業チェーンが作られるタイミング、人口条件を設定します。pak64のデフォルトは2000で、各都市の人口が2,000、4,000、8,000、1,6000、32,000、64,000、128,000、256,000に達した場合に建設または拡張されます。(ただし、情報ウィンドウに表示されている人口と、実際に建設される時期との間には、ずれがあります)&br;0を指定すると、人口増加で新規産業チェーンは建設されません。 &imgfolder(16/light_off.png); 建設時期は設定値の倍々で8回までです。デフォルトの2000ですと、8回目の256,000が最後で、それ以上人口が増えても建設されません。 &imgfolder(16/exclamation.png); nightly版、110.0以降では、industry_increase_everyはsimuconf.tab内で設定します。 *エリアルール [#r5c31567] 市内建築物が建つ場合に、どの種類の建物が建つかという計算に使われます。ルールは新築、建て替えの両方に適用されます。 計算の結果最も期待値の高いものが建設されます。 &imgfolder(16/pencil.png); 工場とは産業施設ではなく、市内建築物の工場です。 :&color(maroon){res_start_score}; = 0|住宅が建つ期待値 :&color(maroon){res_near_ind}; = -8|工場の近くに住宅が建つ期待値 :&color(maroon){res_near_com}; = 0|商店の近くに住宅が建つ期待値 :&color(maroon){res_near_res}; = 8|住宅の近くに住宅が建つ期待値 :&color(maroon){com_start_score}; = -10|商店が建つ期待値 :&color(maroon){com_near_ind}; = 1|工場の近くに商店が建つ期待値 :&color(maroon){com_near_com}; = 8|商店の近くに商店が建つ期待値 :&color(maroon){com_near_res}; = 1|住宅の近くに商店が建つ期待値 :&color(maroon){ind_start_score}; = 0|工場が建つ期待値 :&color(maroon){ind_near_ind}; = 8|工場の近くに工場が建つ期待値 :&color(maroon){ind_near_com}; = 0|商店の近くに工場が建つ期待値 :&color(maroon){ind_near_res}; = -8|住宅の近くに工場が建つ期待値 ---- :cluster_factor = 10|[112.3以降]市内建築物を新築、建て替えする場合に、隣接した建物が同じクラスタ(集団)の値を持っていれば、建物の出現確率(chance)がcluster_factor倍になります。(複数指定されている場合でも一つが一致すればよい) 逆に隣接した建物が異なるクラスタ値しか持っていない場合は出現確率がcluster_factor分の一に減ります。 隣接した建物のいずれもにクラスタ値が設定されていない場合はこの値は無視されます デフォルトでは10倍と1/10 注: 市内建築物にclustersが設定されている必要があります **計算方法 [#tacb9462] +住宅、商店、工場が建つ期待値をそれぞれの初期値とします +建設予定地の周囲2タイル、(-2,-2)-(+2,+2)の計25タイルのタイルを調べます +見つかった住宅、商店、工場の数だけ、その周囲に建つ期待値をそれぞれ加えます +商店、工場の期待値に無職者の数÷4を加えます +住宅の期待値に浮浪者の数を加えます +最も期待値の高い建物が建ちます(建てられる建物があった場合) *市道/建物生成ルール [#gc4be9e9] configディレクトリに存在するcityrules.tabファイルでは、 都市の建物と道路の生成規則を定義しています。 例) 市道を生成する規則 road_1 = .H. SnS .sS road_1.chance = 8 例) 建物を生成する規則 house_1 = ... Hn. sss house_1.chance = -2 - "''house_1''" というのは、この規則の名前です。 建物の生成規則には "house_1" から始まる連番を、 道路の生成規則には "road_1" から始まる連番を付けます。 - 右辺の "''... Hn. sss''" の部分が規則の内容です。 ここについては後述します。 - 2行目の "''house_1.chance = -2''" というのは、 この規則が適用される確率を表します。 "-7" が最も高確率で、''数字が大きくなるほど確率が低くなっていきます''。 |~chance|-7|-6|-5|-4|-3|-2|-1|0|1|2|3|4|...|8|h |~確率|1/1|1/2|1/3|1/4|1/5|1/6|1/7|1/8|1/9|1/10|1/11|1/12|...|1/16| **アルゴリズム [#jcff96b9] +市域の中からランダムに1タイルを選択します +空地でなければ終了します +最初は道路ルールです。ランダムな道路ルールを選びます +ルールを適用する確率を試し、はずれたら次の番号のルールを選びます +ルールに一致するかを試し、一致すれば、道路を建設して終了します +一致しなければ次の番号のルールを選び、繰り返します(最後まで行ったら最初に戻り、一巡するまですべてのルールを試します) +どれも一致しなければ、次は建物ルールです。ランダムな建物ルールを選びます +ルールを適用する確率を試し、はずれたら次の番号のルールを選びます +ルールに一致するかを試し、一致すれば、建物を建てて終了します +一致しなければ次の番号のルールを選び、繰り返します(最後まで行ったら最初に戻り、一巡するまですべてのルールを試します) ** 規則の意味 [#e3aa3a48] 1行目の右辺にある "''... Hn. sss''" という部分が、この規則の内容を表します。 これは、以下のように3行3列のパターンを意味しています。 |.|.|.| |H|n|.| |s|s|s| &imgfolder(16/info.png); ルールは3x3、5x5、7x7の3通りが使えます。ルールごとに違うサイズを使用しても構いません。 それぞれの文字は、以下のような意味を持っています。 |CENTER:''文字''|CENTER:''意味''|h |CENTER:s|道路| |CENTER:S|道路ではない| |CENTER:h|建物| |CENTER:H|建物ではない| |CENTER:t|駅・駅ビル| |CENTER:T|駅・駅ビルではない| |CENTER:n|自然 (建物や道路がないという意味)| |CENTER:.|何でもよい| 3行3列の範囲がこのパターンに合致するとき、 真ん中のマスに建物や道路が (規則の2行目で指定した確率に従って) 発生します。 パターンは90度単位で回転したものを含みます。 たとえば、上の規則は、それを回転して得られる |s|H|.| |s|n|.| |s|.|.| や |s|s|s| |.|n|H| |.|.|.| や |.|.|s| |.|n|s| |.|H|s| というパターンにも合致します。 一方、パターンは反転を''含みません''。 つまり、上の規則は |.|.|.| |.|n|H| |s|s|s| というパターンには''合致しません''。 したがって、非対称な規則では、 反転したパターンを別の規則として定義する必要があるでしょう。 例としてデフォルトのcityrules.tabを見ると、 house_2 = ... .nH sss house_2.chance = -2 と定義されています。
テキスト整形のルールを表示する(編集中のテキストは失われます)