↓良くなかったProcedure Tree
以前作った複数地点をめぐる掃除人のAI Packageですが、やはりうまく動作しないのが分かってきました。
実際の行動を伴う「Physical」なProcedure同士は、Simultaniouse で同時実行はできないようです。やるなら、1個の「Physical」なProcedureと複数の「Mental」なProcedureの組み合わせだそうで(
参照元:CK wiki)。
TravelしながらAcquireは無理でした。
他の点でもこのProcedureTreeは色々とダメです。意図したように動いてくれないのは確か。
では、特定地点に移動しながら物を拾うってどうすればいいんだろう。
以前のテストプレイでは、プレイヤーの周囲を検索範囲に設定すると、こちらが動けば近くにあるアイテムを取ろうとして掃除人がついてくるので、擬似的に掃除人は移動しながら拾い物をすることができました。
ならばプレイヤーの代わりに特定地点を巡り歩く「誰か」を作れば、万事解決しそうです。
・「誰か」にはペースメーカーとして、複数の地点をめぐるだけのPackageをつける。
・掃除人にはペースメーカー周辺をサーチして、Acquireを行うPackageを用意する。念のために、ペースメーカーとの距離が離れ過ぎた時は、Followで追いつくことを優先させる機能も盛り込んでおく。
これなら単純なProcedure Treeで動かせそう。
その「誰か」がこの結果です。
ハイエナが二人連れで行動というのもなにか違和感を感じたので、邪魔にならなそうな小動物をペースメーカーに選びました。
なんの可愛げもないイーストマーチ担当の掃除人が、ニワトリをお供にしているだけで微笑ましく見えてくるから不思議です。
最初ニワトリを屋内に配置していたのですが、ニワトリは扉を介してセル移動できないようだったので、ワールドに配置し直しました。AI Package Listも、Default Package Listを"NONE"にしておかないと有効になりませんでした。動物の挙動は、人型のアクターとはちょっと扱いが違うのか……。
掃除人にくっつけたPackageのTemplate。
ペースメーカーと自分との距離を測り、Stackによって取得かFollowかを行います。
Sandboxはお供が死んだ時、棒立ちにならないためのもの。これは特に必要ではなかったかも。
動作確認の結果は上々。滞りなくホールドを巡ってくれるので、後をついて歩くのが楽しくなりました。
少女と犬のコンビも作成。
子どもがハイエナ生活していること自体には、憂慮すべきところはありますが。
彼女はファルクリース担当。身ぐるみ剥いだりはしないけど、死体の懐からお金をぬきとり、植物、サーモンなどを集めます。
毎週水曜日にはアンジーさんを訪ねるスケジュールも組み込みました。
しかし動物は、目的地までの経路にとんでもない道を選びます。
犬が崖っぷちに突っ込んで、動けなくなってました。
人間ではそれほど気をつけなくても良かった「Prefered path」をTrueにしたほうがいいのかな。
まだまだ微調整が必要そうです。
今回は力不足からひねり出した案が、思わぬ形で掃除人達に個性を添えることになったのがちょっと楽しかった。
ファルクリースとイーストマーチの掃除人は相棒付きで決まりですね。
しかし全ての掃除人に相棒をつけるのもたいへんなので、できれば単独でホールド中を駆け回るPackageを作りたいところです。
前へ |
次へ