食料の収集を制御するための方法を記述します。
判定内容 | Script | Note |
Found Forage? |
(resource-found food) | This condition doesn't become true even if AI found sheep or deer. |
has Own Sheep? | (unit-type-count 594 >= 1) | 生きている羊(ユニットID=594)の数をカウントする。食べている羊はカウントされない |
Deer is near? | (or (unit-type-count 122 >= 1) (unit-type-count 216 >= 1) ) |
狩をする人(男)、狩をする人(女)が1人以上かどうかを判定する。狩をする前に鹿が近くにいるかどうかは判定できない。 |
苺と羊が遠い | (sheep-and-forage-too-far) | 苺と羊が粉ひき所(町の中心)8タイルいないにない場合 |
食料と粉ひき所の最小距離 (町の中心含む) |
(dropsite-min-distance food <op> <distance>) | 食料を発見していない場合は-1になる。 |
Boar | AIはイノシシは狩れない。「sn-minimum-boar-hunt-group-size」の設定値は無効である |
■町の人が食料(鹿・イノシシ以外)を認識する距離 「食料を収集する人」に割り当てられた町の人は、粉ひき所・町の中心から「sn-maximum-food-drop-distance」の距離にある食料を収集しにいく。 町の人は、町の中心・粉ひき所に近い資源から優先的して食料を収集する。 ■畑の場合 町の人は「sn-maximum-food-drop-distance」の範囲から1マスでもはみ出ている畑を認識しない。たとえば図2では町の中心から最も遠い畑は範囲から1マスはみ出ているので、町の人に認識されない。 畑の数が増えてくると町の中心から遠くに畑が作成されることもあるので、「sn-maximum-food-drop-distance」は大きめの値にする必要がある。 |
Figure 1. In case of sn-maximum-food-drop-distance=10 Figure 2. In case of sn-maximum-food-drop-distance=8 |
■町の人が鹿・イノシシを認識する距離 「食料を収集する人」に割り当てられた町の人は、粉ひき所・町の中心から「sn-maximum-hunt-drop-distance」の距離にある鹿・イノシシを収集しにいく。 ※AIはイノシシは狩れない ■強制的に鹿を狩る 「食料を収集する人」は町の中心・粉ひき所から近い資源を優先的に収集するため、 普通は鹿は最後に狩られる。 「sn-maximum-food-drop-distance」に0を設定することによって鹿以外の食料を認識しないようにさせ、強制的に鹿を狩ることができる。 ただし、この方法は鹿がいない場合は食料の収集がとまるので注意が必要である。 |
Figure 3. In case of sn-maximum-hunt-drop-distance=10 |
■漁船が魚を認識する距離 漁船は、港から「sn-maximum-fish-boat-drop-distance」の距離にある魚を収集しにいく。 漁船は港に近い魚から漁をするので、大きめの値を設定しておいて問題はない。 ※町の人の「漁をする人」の小魚を認識する距離とは関係ない。 |
Figure 4. In case of sn-maximum-fish-boat-drop-distance=7 |
判定内容 | Script | Note |
森を発見したかどうか |
(resource-found wood) | 立ち木を発見してもこの条件は真にならない |
木と伐採所・町の中心の最小距離 | (dropsite-min-distance wood <op> <distance>) | 立ち木も含まれる。木を発見していない場合は-1になる。 |
■町の人が木を認識する距離 生産されたばかりの町の人や他の作業をしていた町の人が「木を切る人」に割り当てられた場合、伐採所・町の中心から「sn-maximum-wood-drop-distance」の距離にある木を切りにいく。 ただし、「木を切る人」が1つの木を切り終わったあとに近くの別の木を切る場合は、その木が「sn-maximum-wood-drop-distance」の範囲内にあるかどうかは判定されない。 ■木を認識する距離を小さくする 図1の場合、新しく「木を切る人」になった町の人は2つの伐採所のどちらかの木を切りにいくことになる。 「sn-maximum-wood-drop-distance」を2に設定した図2の場合、新しく「木を切る人」になった町の人は左側の森のみ認識するので、左側の森の木をきりにいく。 このように「sn-maximum-wood-drop-distance」の設定値を小さくすることでより近い森の木を切らせることができるが、森が遠いのに値を小さくしすぎると木を全く認識しなくなるので注意が必要である。 ※森と伐採所の距離は「dropsite-min-distance」条件を使用して判定する。 |
Figure 5. In case of sn-maximum-wood-drop-distance=5 Figure 6. In case of sn-maximum-wood-drop-distance=2 |
判定内容 | Scripnt | Note |
金を発見したかどうか | (resource-found gold) | |
石を発見したかどうか |
(resource-found stone) | |
金と採掘所・町の中心の最小距離 | (dropsite-min-distance gold <op> <distance>) | 金を発見していない場合は-1になる。 他の島にある場合は255になる。 |
石と採掘所・町の中心の最小距離 | (dropsite-min-distance stone <op> <distance>) | 石を発見していない場合は-1になる。 他の島にある場合は255になる。 |
■町の人が金・石を認識する距離 「金を収集する人」に割り当てられた町の人は、採掘所・町の中心から「sn-maximum-gold-drop-distance」の距離にある金を収集しにいく。 「石を収集する人」に割り当てられた町の人は、採掘所・町の中心から「sn-maximum-stone-drop-distance」の距離にある石を収集しにいく。 |
Figure 7. In case of sn-maximum-gold-drop-distance=2, sn-maximum-stone-drop-distance=7 |