ペットを作るには(3)

Gonbe Shan

2008年09月06日 15:00


5.自立運動型(設置型)
 今までのが、基本はアバターへの装着系が主だったのに対して、こちらはいわゆるフリー・ムーブ系に該当する設置型のものです。



 スクリプトとしては、もっとも難易度の高いもので、サンプルスクリプトすら、ほどんと出回っていません。
 従って、このタイプの商品は高額商品が多いです。
 最低でもL$300以上。一番多い価格帯は、L$500~L$800程度だと思います。

 さて、この自立運動型を考える場合、実現すべき行動パターンと言う物を理解する必要があります。
 一般的には次の行動が基本パターンになります。
(1)フォロー
 アバターについて来る機能です。
 現在ペット系で実装している機能としては、もっとも多いタイプと思います。
 フォローだけの機能であれば、スクリプト的にはそれほど難しくはありません。
 と言っても、自立運動型自体の難易度が上級レベルなんで、かなりのスクリプトの知識が無いと作れないと思います。

 先にも書きましたが、唯一フリーで公開されたスクリプトも存在しています。
 多くは、アバターが動いていると、歩いたり走ったりして着いて行き、アバターが止まると、横でステイ状態や、長時間停止していると、スリープ状態へと遷移させたりする複合型もあります。

(2)フリー
 アバター等には関係なく、設定された行動範囲を、勝手気ままに動き回るタイプです。
 これが多分一番難しいと思います。
 基本はフォローと同じですが、フォローが常にアバターの位置をターゲットに動いているのに対して、こちらは移動目標自体から、自分自身で設定して動き回らないといけないのです。
 ある意味、本当の命をオブジェクトに吹き込むようなものだと思ってください。

 フリーの場合にも、「歩く」、「走る」、「飛ぶ(ジャンプ)」等のバリエーションがあります。
 これらのバリエーションが豊富であり、それがランダムに実施されるほど、本当の生き物の様に見えてきます。

(3)ステイ
 基本的には置物タイプと同じような状態です。
 完全に停止しているか、あるいは耳や目等、パーツの一部だけを動かして、その場にジッとしている状態です。

(4)スリープ
 眠っている状態です。
 ペンちゃんでも採用してますが、最近のペット系では必須の機能になっています。
 ペットの寝顔ほど、我々を癒してくれるものは無いかも知れません。^ ^

現状ですと、この基本4機能すら、完全に網羅しているものは少ないでしょう。
フォローかフリーのどちらかだけの機能の物が多いです。
ただ、今後はこれらの機能は網羅したタイプのペットが増えてくると思います。

更に進化系の機能もあります。

(5)HUG
 抱っことかおんぶとかに該当します。
 先の装着型とは違い、地面等で動いている状態から、いきなり装着してしまう機能です。
 この機能を実装しているペット類は少ないです。
 今話題になっているコーギーは、この機能が実装されています。

 スクリプト的にはそれほど難しい訳では無いのですが、フリーやフォロー機能を持っているペットの場合、装着することによって、スクリプト制御が異なるため、上手く切り替えられず、スクリプトが停止してしまったり、装着を外しても動かない状態になってしまうことが起こりやすいです。

 この機能はGonbeも既にテストでは実装して試しています。
 その際に、前述の問題があったために、まだ販売物には実装しないで居る状態です。
 しかし、魅力的な機能ではあるので、今後は取り入れる方向で進めています。

(6)食事
 これもコーギーでは実装されていますが、餌を与えると、それを食べる機能です。
 食事中のペットと言うのも、やはり可愛いものですから、この機能も今後は実装しようと思っていました。

(7)お喋り
 お喋りペンちゃんで、簡易的な機能は実装しましたが、本当は有る程度会話になると良いように思います。
 ただ、それを実現するには、キーワード管理等とデータベース化も必用になります。
 ペンちゃんレベルの独り言が現状では妥当と思ってます。

(8)マイハウス
 これもヨチヨチペンちゃんの「良い子」バージョンで実装しましたが、自分のホームポジションを記憶しておいて、寝る時は必ずその場所に戻って眠ると言う物です。
 発展系としては、排泄する場合は、決まった砂場へ行って行うとか、食事に関しても、決まった場所へ持っていって食べるとか、色々とあると思います。

(9)排泄
 コーギーで実装されていますが、もともとはネタ系の機能になります。
 まあ、可愛いペットの排泄物ですから、その世話をする事にも喜びは感じるでしょう。
 Gonbeの構想には入っていない機能です。

(10)番犬
 これはフォローの拡張機能になりますが、主人ならば尻尾を振って甘えますが、他の人の場合は、牙をむき出して威嚇したり、飛び掛ったりするような機能です。
 これも当初からの構想にあったものですが、実際には色々と難しい部分もあって、まだ実装はしていません。
 サメでこの機能を実装させようと思っていました。

(11)遊ぶ(追加項目)
 コーギーでも取り入れられていましたが、遊ぶという機能もあります。
 コーギーはボールを出すと、それに飛びついて遊びます。
 有名なフリスビー犬は、フリスビーを投げるとそれをキャッチします。
 ネコ型だと、ネコじゃらしを前で動かすと、手を動かして遊ぶなんてのもあります。
 これも様々なバリエーションが考えられ、魅力的な機能の一つです。

さて、一口にペットと言っても、実に多彩な機能に分類される訳ですが、実際には、これらが複合的に実装される事が多くなると思います。
そして、機能が増えれば増えるほど、スクリプトは複雑化してきます。
それでも、今回のコーギーが先陣を切ってしまいましたが、今後は益々高度なスクリプト制御が組み込まれた、人工生命体のようなペットが出てくるでしょう。

ただ・・・その分スクリプト負荷も大きくなります。
その点も考慮して、過度の設置は迷惑行為にもなりますから、気をつけましょう。

また、これからペットスクリプトに挑戦する人は、単に動けば良いのでは無く、販売したあとのフォローの事や、SIM環境を悪化させるようなパフォーマンスの悪いスクリプトにならないよう、十分に注意が必要と思います。

今後弟子希望者の人に、ネコの製作を通じて指導してみたいと思います。
その結果、分かりやすい内容とかが整理できたら、またスクリプト等も含めて、こちらに掲載して紹介したいと思います。

さてさて、どうなるでしょうね。^ ^
スクリプトのお勉強メモ