インストールの仕方だよ。 簡単にゴースト製作を始められる入門用キットを配布してるぞ。 KEEPSなくても作り始められるけど、せっかくだからKEEPSの入れ方も番外編で説明しちゃうぞ。 (KEEPS、誰か説明書作ってよーう)
まず、華和梨を動かすのに必要なデスクトップマスコット本体を用意します。
お使いのOSがWindows系列なら、「伺か。」本体(「伺か。」で配布しています)、あるいは互換処理系の「SSP」(「DOIchan!'s HomeStadium」で配布しています)などが必要です。セットアップを完了しておいてください。
(「伺か。」の取り扱い方がよくわからない人は、「さくらナビ 初心者モード」や「『何か』エキセントリクス」などを参照してください。)
次に、華和梨本体を用意します。「あれ以外の何か以外の何かプロジェクト」などで配布されていますが、これらはINSTALL仕様に対応していません。そこで、「華和梨を使い倒す?」特製入門セット「サンプルゴーストGOA Lilith入門セット」(緋龍華麒麟さん作"GOA Lilith"+華和梨Phase7.3.1)をご用意しました。是非ご利用ください。
サンプルゴースト 「GOA Lilith入門セット」ver.3.1sp のダウンロード(2002/3/12更新)
サンプルゴースト 「GOA Lilith入門セット」ver.3.0sp のダウンロード(2002/3/8配布開始)
この入門セットには、華和梨本体とマニュアルの他に、ゴーストとして動くための必要最低限のスクリプトや画像などの全ファイルが含まれていますので、これ一つでゴーストの製作を始めることができます。(緋龍華麒麟さん、すばらしいサンプルゴーストをありがとうございます。)
「華和梨」を搭載した高性能ゴーストも多数あります。ある程度、勉強してから内部を覗くと、どういう仕組みで動いているかわかるようになりますよ。
「伺か。」を起動したあと、表示されているキャラクターに向かって「サンプルゴーストGOA Lilith入門セット」の書庫ファイルをドラッグ&ドロップでつっこんでください。これだけでOKです。
「SSP」を起動したあと、キャラクターに向かって「サンプルゴーストGOA Lilith入門セット」の書庫ファイルをドラッグ&ドロップでつっこんでください。これだけでOKです。
これで、華和梨を使う準備が整いました。
上の方法でインストールした「サンプルゴースト GOA Lilith 入門セット」は、次のようなファイル構成になっています。
<「伺か。」本体>
└<ghost>
└<goalilith SP>
├<ghost>
│ └<master>
│ ├<profile> (システム情報。ゴースト初回使用時に「伺か。」が自動生成)
│ │
│ ├ shiori.dll (華和梨本体)
│ │
│ ├ kawari.ini (華和梨設定ファイル)
│ │
│ ├ dict-event.txt (イベント反応辞書)
│ ├ dict-word.txt (単語辞書)
│ ├ dict-sent.txt (ランダムトーク台本辞書)
│ ├ dict-com.txt (コミュニケート反応辞書)
│ ├ dict-menu.txt (おすすめURL辞書)
│ ├ dict-base.txt (単語フレームワーク)
│ │
│ ├ descript.txt (ゴースト各種設定ファイル)
│ ├ profiles.txt (ゴースト情報ファイル)
│ │
│ └ updates2.dau (更新情報ファイル)
├<shell>
│ └<master>
│ ├<profile> (システム情報。シェル初回使用時に「伺か。」が自動生成)
│ │
│ ├ surface0.png (本体キャラ「通常」絵:\s[0])
│ ├ surface0.pna (\s[0]アルファチャンネル画像)
│ ├ surface100.png (\s[0]まばたき用画像)
│ ├ surface101.png (\s[0]まばたき用画像)
│ │
│ ├ surface20.png (本体キャラ「怒り」絵:\s[20])
│ ├ surface20.pna (\s[20]アルファチャンネル画像)
│ ├ surface200.png (\s[20]まばたき用画像)
│ ├ surface201.png (\s[20]まばたき用画像)
│ │
│ ├ surface30.png (本体キャラ「不安、悲しみ、寂しさ」絵:\s[30])
│ ├ surface30.pna (\s[30]アルファチャンネル画像)
│ ├ surface300.png (\s[30]まばたき用画像)
│ ├ surface301.png (\s[30]まばたき用画像)
│ │
│ ├ surface40.png (本体キャラ「微笑み」絵:\s[40])
│ ├ surface40.pna (\s[40]アルファチャンネル画像)
│ │
│ ├ surface10.png (相方キャラ「通常」絵:\s[10])
│ │
│ ├ surfaces.txt (サーフィス設定ファイル)
│ │
│ ├ goa.ico (アイコン画像ファイル)
│ ├ thumnail.png (ゴースト選択リスト用バナー)
│ ├ ai.png (ゴーストAIグラフ背景画像)
│ ├ menu_background.png (メニューポップアップ時背景画像)
│ ├ menu_foreground.png (メニュー選択時背景画像)
│ ├ menu_sidebar.png (メニューサイドバー画像)
│ │
│ ├ descript.txt (シェル設定ファイル)
│ │
│ └ readme.txt (シェル説明ファイル)
│
├ profiles.txt (システム関連ファイル。ゴースト初回使用時に「伺か。」が自動生成)
│
├ readme.txt (ゴーストの説明ファイル)
│
├ kosui.exe (「幸水」プログラム本体)
├ kawari_encode.exe (「華和梨」暗号化プログラム)
│
├ readme.1st (華和梨の説明)
│
├ readme.html (「華和梨」説明)
├ manual.html (「華和梨」基本マニュアル)
├ kosui.html (「幸水」基本マニュアル)
└ kis_reference.html (KIS基本マニュアル)
太字でかかれている部分が、AI華和梨に関係する部分です。特に、赤字になっている部分がAIの頭脳を記述するデータファイル(テキストファイル形式)です。「華和梨を使い倒す?」では主にこのデータファイルの作り方を説明していきます。
なお、青字は華和梨のマニュアルです。こちらもゴースト製作の参考にしてください。
「GOA Lilith入門セット」を新しいゴーストに作り変えていく場合、華和梨のデータファイル以外にも様々なファイルを書き換えておく必要があります。「華和梨の使い方」の説明ではありませんが、ここでその方法を説明しておきます。
GOA Lilith入門セットを直接改造して華和梨について勉強する場合は、本節をとばしてもかまいませんが、その場合は「ネットワーク更新」を実行すると、改造部分が破壊される可能性があります。
以下、例の中では次のようなゴーストをつくるものとして説明します。
ゴースト名:「サンプルちゃんとテストくん」
ゴースト本体のキャラクター名:「サンプル」ちゃん
相方のキャラクター名:「テスト」くん
製作者名:「さすらいのゴーストベンダ(仮)」
製作者URL:「http://xxx.xxx.xxx/xxx/」
この節の内容についてもっと詳しいことが知りたい場合は、「伺か。」の仕様書、「Tiny Place」の「シェル・ゴースト作成入門講座」、「『何か』エキセントリクス」の「しぇる・るるる」などを参照するとよいでしょう。
(以後、専門用語が増えてきます。用語は「何かの辞典(仮題)」などで調べるとよいでしょう。わからないことがあれば「さくらナビBasicモード」などから探るとよいかもしれません。)
まず、ゴーストのファイルの入っているフォルダをまるまるコピーします。下のフォルダツリー構造図のうち、赤字の部分です。
<「伺か。」本体>
└─<ghost>
└─<goalilith SP>
├─<ghost>
│ └─<master>
│ └─<profile>
└─<shell>
└─<master>
└─<profile>
この部分を中身のファイルごとまるまる並列にコピーし、新しい名前をつけます。
<「伺か。」本体>
└─<ghost>
├─<goalilith SP>
│ ├─<ghost>
│ │ └─<master>
│ │ └─<profile>
│ └─<shell>
│ └─<master>
│ └─<profile>
└─<Sample and Test>
├─<ghost>
│ └─<master>
│ └─<profile>
└─<shell>
└─<master>
└─<profile>
新しいフォルダの名前には、新しくつくるゴーストの名前など適当なものを半角英数でつけてください。(ここでは仮に「Sample and Test」と名付けます)
コピーが終わったら、(念のため)「伺か。」により自動生成された下記のフォルダとファイルを削除します。(インストール後、一度もGOA Lilith入門セットを実行していない場合はこれらのファイルは存在しないかもしれません)
<「伺か。」本体>
└─<ghost>
└─<Sample and Test>
├─<ghost>
│ └─<master>
│ ├─<profile>………×中身ごと削除する
│ └ .....
├─<shell>
│ └─<master>
│ ├─<profile>………×中身ごと削除する
│ └ .....
├ profiles.txt………×削除する
└ .....
次に、ゴーストの固有情報が書かれているdescript.txtを編集します。descript.txtは、下図の場所にあります。
<「伺か。」本体>
└─<ghost>
└─<Sample and Test>
├─<ghost>
│ └─<master>
│ ├─ descript.txt
│ └ .....
├─<shell>
│ └─<master>
│ ├─ descript.txt
│ └ .....
└ .....
同名のファイルが二つあって紛らわしいのですが、ゴースト関係について記述してあるのは、ghost/masterの下に入っている、赤字のファイルです。このファイルをテキストエディタなどで開いてください。中身は次のようになっています。
charset,Shift_JIS
name,GOA Lilith 入門セット
id,GOA Lilith SP
sakura.name,リリス
kero.name,ヌー
craftman,Kirin Hiryuka + Nise Meister
craftmanw,緋龍華麒麟 + 偽Meister
craftmanurl,http://www27.tok2.com/home/kawarisp/
どの項目に何が書かれているかは、だいたい類推できると思います。
(上から、「ファイルの文字コード」「ゴースト名」「ゴーストのID(半角)」「本体キャラ名」「相方キャラ名」「製作者名(半角)」「製作者名」「製作者URL」)
赤字と紫字の部分を編集して、自分のゴーストの情報を書き込みます。なお、紫字の部分は半角英数文字しか使えませんので注意してください。
たとえばこんな風になります。
charset,Shift_JIS
name,サンプルちゃんとテストくん
id,Sample and Test
sakura.name,サンプル
kero.name,テスト
craftman,Wandering Ghost Vender
craftmanw,さすらいのゴーストベンダ(仮)
craftmanurl,http://xxx.xxx.xxx/xxx/
(descript.txtについて、詳しくは、「伺か。」のghost仕様書などを参照してください。)
GOA Lilith入門セットには、次のようなサーフィスの入ったシェルがついています。
本体キャラクタ側
surface0:ふつうの表情。まばたきあり
surface20:怒りの表情。まばたきあり
surface30:悲しみ、寂しさ、不安の表情。まばたきあり
surface30:微笑みの表情。
相方キャラクタ側
suraface10:ふつうの表情。
もし、この、緋龍華麒麟さん作の付属シェル「リリス&ヌー」をそのまま使うのでしたら、特に画像の変更や設定ファイルの変更は必要ありません。
ですが、キャラクターによっていろいろな画像の用意の仕方があると思います。どんな表情を用意するのか、アニメーションさせるかさせないかなども、作るゴーストによって違うでしょう。WWWで配布されている、使用条件自由のシェル「フリーシェル」を使うことも考えられます。(どんなフリーシェルが存在するかは、「Tiny Place」の「フリーシェル・カタログ」などで探すことができます。)
ここでは、デフォルトの絵だけ新しい絵に差し替えて他は削除する場合の方法を紹介します。
さくらスクリプトでは、「用意されていないサーフィスを使おうとした場合、自動的にsurface0.png、surface10.pngを使う」というルールがあります。そこで、ここではとりあえずsurface0.pngとsurface10.pngだけを差し替え、あとは削除するように変更してみます。
まず、新しくsurface0.png、surface10.pngを用意して、既存のものに上書きコピーしてしまいましょう。
surface0.pna、surface10.pnaといったアルファチャンネル画像も作ってあるならば一緒に上書きします。(アルファチャンネルについては「伺か。」のshell仕様書を読んでください。作り方は「Tiny Place」の「自己流PNAファイルの作り方」などを参照してください。)
次に、surfaces.txtを編集します。
<「伺か。」本体>
└─<ghost>
└─<Sample and Test>
├─<ghost>
│ └─<master>
│ └ .....
├─<shell>
│ └─<master>
│ ├─ surfaces.txt
│ ├─ surface0.png
│ ├─ surface0.pna
│ ├─ surface10.png
│ ├─ surface10.pna
│ └ .....
└ .....
赤字のファイルですね。このファイルの中身は次のようになっています。
surface0
{
collision0,83,35,160,71,head
collision1,86,80,136,113,face
collision2,63,164,133,199,bust
1interval,sometimes
1pattern0,100,5,overlayfast,50,50
1pattern1,101,5,overlayfast,50,50
1pattern2,100,15,overlayfast,50,50
1pattern3,-1,10,overlay,0,0
}
surface20
{
collision0,83,35,160,71,head
collision1,86,80,136,113,face
collision2,63,164,133,199,bust
1interval,sometimes
1pattern0,200,5,overlayfast,50,50
1pattern1,201,5,overlayfast,50,50
1pattern2,200,15,overlayfast,50,50
1pattern3,-1,10,overlay,0,0
}
surface30
{
collision0,83,35,160,71,head
collision1,86,80,136,113,face
collision2,63,164,133,199,bust
1interval,sometimes
1pattern0,300,5,overlayfast,50,50
1pattern1,301,5,overlayfast,50,50
1pattern2,300,15,overlayfast,50,50
1pattern3,-1,10,overlay,0,0
}
surface40
{
collision0,83,35,160,71,head
collision1,86,80,136,113,face
collision2,63,164,133,199,bust
}
surface10
{
0interval,always
0pattern0,10,15,move,0,-1
0pattern1,10,15,move,0,-2
0pattern2,10,15,move,0,-3
0pattern3,10,15,move,0,-3
0pattern4,10,15,move,0,-2
0pattern5,10,15,move,0,-1
0pattern6,10,15,move,0,0
0pattern7,10,15,move,0,1
0pattern8,10,15,move,0,2
0pattern9,10,15,move,0,3
0pattern10,10,15,move,0,3
0pattern11,10,15,move,0,2
0pattern12,10,15,move,0,1
0pattern13,10,15,move,0,0
}
上から、「surface0の設定(当たり判定、アニメーション)」「surface20の設定(当たり判定、アニメーション)」「surface30の設定(当たり判定、アニメーション)」「surface40の設定(当たり判定)」「surface10の設定(アニメーション)」の順に書かれています。
まず、今回の例ではsurface0と10以外は要りませんから、青字の部分をばっさり削除してしまいましょう。
赤字の部分は、当たり判定の記述です。サーフィス上の頭、顔、胸などの座標範囲を入力します。座標を調べて入力するのは大変だと思いますが、当たり判定作成補助ツール「Coordin」を使うと、座標範囲にあたる4つの数値をグラフィカルインターフェースで簡単に取得できます。
緑字の部分は、アニメーションの記述です。今回の例ではアニメーションを用意しませんので、この部分はすべてカットします。(参考までに解説しておくと、surface0, 20, 30は画像ファイルを重ねて表示してまばたきするアニメーションを、surface10は、画像が上下に移動してふわふわ動くアニメーションを記述してあります。)
アニメーションの動作について詳しく知りたい人は、「伺か。」のSERIKO仕様書を読んで研究してみてください。(よくアニメーションするゴーストの中身も参考になるでしょう。)
そして、余分なサーフィス画像ファイルは消してしまっていいでしょう。
<「伺か。」本体>
└─<ghost>
└─<Sample and Test>
├─<ghost>
│ └─<master>
│ └ .....
├─<shell>
│ └─<master>
│ ├ surface100.png
│ ├ surface101.png
│ ├ surface20.png
│ ├ surface20.pna
│ ├ surface200.png
│ ├ surface201.png
│ ├ surface30.png
│ ├ surface30.pna
│ ├ surface300.png
│ ├ surface301.png
│ ├ surface40.png
│ ├ surface40.pna
│ └ .....
└ .....
青字のファイルが、今回の作業例では余分なファイルになります。
次に、バナーやアイコンの画像ファイル、AIグラフや右クリックメニューの背景用の画像ファイルを編集します。ファイル構成のところでも紹介しましたが、
<「伺か。」本体>
└<ghost>
└<Sample and Test>
├<ghost>
│ └<master>
│ ├ descript.txt
│ └ .....
├─<shell>
│ └<master>
│ ├ thumnail.png (ゴースト選択リスト用バナー)
│ ├ goa.ico (アイコン画像ファイル)
│ ├ ai.png (ゴーストAIグラフ背景画像)
│ ├ menu_background.png (メニューポップアップ時背景画像)
│ ├ menu_foreground.png (メニュー選択時背景画像)
│ ├ menu_sidebar.png (メニューサイドバー画像)
│ │
│ ├ readme.txt (シェル説明ファイル)
│ │
│ ├ descript.txt
│ └ .....
└ .....
このようなファイル構成になっています。青字の画像ファイルのうち変更したいファイルを、ペイントソフト・フォトレタッチソフトなどで適宜編集しましょう。また、readme.txtというテキストファイルには、このシェルに関する説明文を書いておきます。
最後に、二つあるうち、赤字のほうのdescript.txtを編集します。このファイルにはシェルの固有情報が書かれています。このファイルの中身は次のようになっています。
charset,Shift_JIS
name,デフォルト
id,master
craftman,Kirin Hiryuka
craftmanw,緋龍華麒麟
craftmanurl,http://www.geocities.co.jp/Playtown-Yoyo/7033/
sakura.balloon.offsetx,0
sakura.balloon.offsety,0
kero.balloon.offsetx,0
kero.balloon.offsety,0
icon,goa.ico
shiori.logo.filename,ai.png
menu.sidebar.bitmap.filename,menu_sidebar.png
menu.foreground.bitmap.filename,menu_foreground.png
menu.sidebar.bitmap.filename,menu_sidebar.png
menu.background.font.color.r,88
menu.background.font.color.g,0
menu.background.font.color.b,0
menu.foreground.font.color.r,255
menu.foreground.font.color.g,250
menu.foreground.font.color.b,250
menu.separator.color.r,88
menu.separator.color.g,30
menu.separator.color.b,30
menu.background.alignment,rightbottom
menu.foreground.alignment,rightbottom
menu.sidebar.alignment,bottom
サーフィス画像を置き換えたなら、赤字のシェル製作者情報の部分を変更します。ゴーストの情報を書いたときと同様、半角英数での名前、全角での名前、URLの順で書き込みます。
青字の部分はこのシェルの名前とIDです。特に理由がないならば変更する必要がないでしょう。
桃字の部分は、バルーン(吹き出し)の表示位置調整です。表示位置がずれているようなら、数値を調整して位置をあわせます。
緑字の部分は、アイコンやAIグラフ、右クリックメニューの背景などの画像ファイルを設定します。これらの名前が変わっていないなら特に変更する必要はありません。
黒太字の部分は、右クリックメニューの色と、背景画像の貼り付け方についての設定です。
descript.txtについては、「伺か。」のshell仕様書や「Tiny Place」の「シェル・ゴースト作成入門講座」にさらに詳しい説明があります。参考にしてください。
データの部分はかなり変更できましたが、ネットワーク更新の設定がまだ古いままです。そこで、これを修正します。
まだほとんどまったく解説していないのですが、華和梨の辞書データファイルdict-menu.txtを開きます。
<「伺か。」本体>
└─<ghost>
└─<Sample and Test>
├─<ghost>
│ └─<master>
│ ├─ dict-menu.txt
│ └ .....
├─<shell>
│ └─<master>
│ └ .....
└ .....
赤字のファイルですね。この中身の頭のほうに、次のようにネットワーク更新用URLの設定が華和梨用エントリの形でかかれています。
#「華和梨」偽AI辞書
# Menu Script
#################################################
#ネットワーク更新
#################################################
#ネットワーク更新
resource.homeurl:http://homepage1.nifty.com/creative-s/goa/update/
#ネットワーク更新キャプション
resource.updatebuttoncaption:ネットワーク更新(&U)
#################################################
(以下略)
この赤字の部分を書き換えてやれば、ネットワーク更新用のURLを変更できます。消しておけば、ネットワーク更新をしようとしてもできなくなります。
さらに、「GOA Lilith入門セット」用の更新情報ファイルを削除します。
<「伺か。」本体>
└─<ghost>
└─<Sample and Test>
├─<ghost>
│ └─<master>
│ ├─ updates2.dau
│ └ .....
├─<shell>
│ └─<master>
│ └ .....
└ .....
赤字のファイルです。これを削除してやってください。
ゴーストの知識のうち、自分の名前を記述している部分を変更しておきます。(とはいえ、「GOA Lilith入門セット」付属辞書では、ゴースト初回起動時にしか使わないのですが……)
<「伺か。」本体>
└─<ghost>
└─<Sample and Test>
├─<ghost>
│ └─<master>
│ ├─ dict-word.txt
│ └ .....
├─<shell>
│ └─<master>
│ └ .....
└ .....
赤字のファイルですね。中身は次のようになっています。
#「華和梨」偽AI辞書
# Word Script
#################################################
#華和梨汎用単語
#################################################
#人物名 ${人名}
人名:あの人,誰か
#組織 ${組織}
組織:マイクロソフト,NTT,ドコモ
#地名 ${地名}
地名:日本,ロシア,アメリカ,中国,ソ連,朝鮮,台湾,北朝鮮
#道具 ${道具}
道具:財布,時計,電話,机,シャーペン,消しゴム,鉛筆,ゴミ箱
#食べ物 ${食べ物}
食べ物:きのこ,ワッフル,うなどん
#するコト ${サ変}
サ変:料理,洗濯,掃除
#必殺技 ${必殺技}
必殺技:中華キャノン
#名セリフ ${セリフ}
セリフ:えんいー
#長い単語 ${長い名詞}
長い名詞:${ns}する${npw}
#################################################
#ゴースト固有の単語
#################################################
# 自分の名前
sakura.name:リリス
kero.name:ヌー
# 嫌いなモノ ${嫌いなモノ}
嫌いなモノ:アンチョビ
#################################################
この、赤字の部分を、実際のゴーストの名前(というより自称)に変更してやります。たとえば、
# 自分の名前
sakura.name:サンプル
kero.name:テスト
としてやればよいでしょう。
さて、ここで華和梨の辞書ファイルの設定方法について紹介しておきます。
辞書ファイル設定は、kawari.iniで行います。
<「伺か。」本体>
└─<ghost>
└─<Sample and Test>
├─<ghost>
│ └─<master>
│ ├─ kawari.ini
│ └ .....
├─<shell>
│ └─<master>
│ └ .....
└ .....
この中には、
dict : (辞書ファイル名)
という書式で、使用する辞書ファイルすべてが書き込まれています。付属のkawari.iniの中身は次のようになっています。
#「華和梨」辞書設定ファイル
#################################################
#デフォルト辞書
#################################################
#イベント辞書
dict:dict-event.txt
#トーク辞書
dict:dict-sent.txt
#コミュニケート辞書
dict:dict-com.txt
#単語辞書
dict:dict-word.txt
#メニューツリー辞書
dict:dict-menu.txt
#単語フレームワーク
dict:dict-base.txt
#################################################
行頭に"#"をつけるとコメント文を書くことができます。
付属する辞書以外の拡張辞書やネタ帳(自作のものやネットで公開されているもの)を組み込みたい場合は、それらのファイルを華和梨の置いてあるフォルダ内に置いたのち、"kawari.ini"の適当な位置に同様の書式の文
dict : (追加辞書ファイル名または追加ネタ帳ファイル名)
を追加することで設定します。たとえばdict-user.txtという辞書を追加する場合は、このようにします。
#「華和梨」辞書設定ファイル
#################################################
#デフォルト辞書
#################################################
#イベント辞書
dict:dict-event.txt
#トーク辞書
dict:dict-sent.txt
#コミュニケート辞書
dict:dict-com.txt
#単語辞書
dict:dict-word.txt
#メニューツリー辞書
dict:dict-menu.txt
#単語フレームワーク
dict:dict-base.txt
#################################################
#ユーザー辞書
#################################################
#ユーザー辞書1
dict:dict-user.txt
#################################################
赤字のように書き加えればいいでしょう。コメント文はあくまで例ですので、書かなくてもかまいません。重要なのは、太字の部分を、kawari.iniのどこかの行に書き加える、ということです。
このページは、偽Meisterが作成しています。