ゴースト3分クッキングを読んだら、次はどんな表現方法があるか調べよう。
特殊記号一覧ファイル構成にも目を通しておくと吉。




トーク

ランダムトーク

ランダムトークはトーク名なしのトーク()を辞書ファイルに記述して置くと、その中よりランダムで選択され一定時間毎にトークします。

*
:ランダムトークです。

*
:(2)隣の客はよく柿食う客だ!
:へー 

詳しくは→ランダムトーク

イベントトーク

イベントトークは、ゴーストが起動した時や、マウスでクリックした時などなんらかのイベントが発生した時に呼び出されるトークで、の後にトーク名としてイベント名を記述して置くとイベント発生時に呼ばれてトークします。

*OnBoot
:起動しました。

#別なゴーストから切り替わって起動した時のトーク 
*OnGhostChanged
:(R0)さんから交代したよ〜。

上記例の(R0)はリファレンスと呼び、イベントの情報を参照出来ます、参照出来る情報が複数ある場合はR1、R2…と続きます。

イベント及びリファレンスの種類については下記リンクを参照して下さい。
SHIORI(栞)イベントについては里々の仕様に含まれないので、里々wikiでは全てに触れません。

  • Ukadoc SHIORI Eventリスト(外部サイト)
    • アイコンのあるベースウェアでのみそのイベントが利用できます。
    • Reference0、Reference1、Reference2…がそのイベントで参照できるリファレンスで里々ではR0、R1、R2…と省略して書くことが出来ます。
  • 里々独自イベント→独自イベント
    里々でのみ発生するイベント

喋るキャラクターを切り替える(スコープの切り替え)

通常メインキャラ側から喋りはじめる時は次の様に書きます。

*
:おはよう

サブキャラ側から喋り始める場合は次の様に書きます。

*
こんばんわ

喋るキャラを途中で切り替える場合

*
:おはよう
:こんばんわ
:なんでやねん!

詳しくは→スコープ切り替え

ゴーストの絵を切り替える(サーフェス指定)

()内に表示したいサーフェス番号を入れて指定します、現在スコープがあるキャラのサーフェスが変わります。

*
:(5)おはよう!(7)って昼だよ!!
:(12)ねむねむ

詳しくは→サーフェス

ウェイトを入れる

ウェイトとはトーク中に入れる"間"の事、長文を読みやすくしたり、抑揚をつけたりします。

  • 里々では句読点等でウェイトが自動的に入る様になってます。(初期設定だとあまり実感出来ません)
    関連設定→自動挿入ウェイトタイプ,自動挿入ウェイトの倍率
  • ゴースト「ポストと狛犬」では、replace_after.txtによる設定で、トークに「・」「‥」「…」を記述するとウェイトが入る様になっています。
  • ゴースト「Rポストと狛犬」では、replace.txtによる設定で、トークに「w1」「w2」...「w9」を記述するとウェイトに置き換わる様にになっています。
  • 任意にウェイトを入れるには、さくらスプリクト「¥w9」「¥_w[300]」等を使用します。
    :お、\w3は、\w3よ、\w3う

詳しくは→ウェイト

さくらスクリプト

さくらスクリプトには二つの意味があります。
一つ目は、トークを修飾したりゴーストを制御したりするコマンド。
二つ目は、ベースウェアが理解できるトーク文字列の規格。

このwikiでは、もっぱら一つ目の意味で使われます。
これは、¥から始まる英数字で記述します。

TIPS.規格としてのさくらスクリプト
本来、ベースウェアに渡すトークは「さくらスクリプトで書く」ものです。
例えば里々だと下のような感じ書いた文章でも…
:普通のポストで終わりたくないなぁ……
:……っていうかお前、自分を普通だと思ってたのか。
:え?
さくらスクリプトや、他のSHIORIでは普通はこう書きます。
\0\s[0]\1\s[10]\0普通のポストで終わりたくないなぁ…\w2…\w2\n\_w[126]\n[half]
\1…\w2…\w2っていうかお前、\_w[78]自分を普通だと思ってたのか。\_w[84]\n\n[half]\0え?\e
里々もベースウェアにトークを渡す時は、この形式に自動で変換しているのです。

里々の記法や自動化は、すべてのさくらスクリプトをフォローしていません。
里々でもさくらスクリプトを直接記述する事ができるので、少し難しくはなるものの、さくらスクリプトを使いこなすことで、ゴーストの表現や挙動の幅を広げる事ができます。
どんなスクリプトがあるのかは下記の外部サイトを参照して下さい。

名前について

里々では、変数トーク等を呼び出しや展開する時()を使用しますが、何でもかんでも()を使うので、あとで辞書を見返した時にそれがトーク関数なのか、変数なのか、単語群なのか、この変数名はトーク名と重複していないかとが解らなくなる事があります。
なので変数なら、"〜変数"の名前にするとか英数で命名するとか、トークなら"〜トーク"とか日本語で命名するとかのルールを予め作っておいた方がよいかもしれません。
…ただし里々やshioriのイベント・リソースの予約名とか「ポストと狛犬」で使ってる変数やトークの名前とかが既にフリーダムなので完全にどうこう出来るわけではありません。

バルーンに表示された文章を消す

バルーン中をリセットする時にはさくらスクリプト「¥c」を使います。

*
:今日のあなたの運勢は\w8・\w8・\w8・\w8
\c大吉です!よかったねー

「今日のあなたの運勢は・・・」と表示されたあと
バルーンがリセットされて、
「大吉です!よかったねー」と表示されます。
ウェイトとかを考えておかないと、前の文章を
読み終わらないうちに消えてしまったりするので注意。
トークを何往復もさせる場合、バルーンにスクロールが出ないよう
適宜¥cを使うゴーストは多いです。
反面、¥cを使わずに全て表示させておくゴーストもいるので
そのあたりは好みによるでしょう。

終了する

さくらスクリプト「¥-」を使うと、そこで即時終了します。

¥0と¥1を同時にしゃべらせる

さくらスクリプト「¥_s」を使う。

:\_sいっしょにしゃべるよ。\e

¥_sか¥eで閉じ。

前に出たランダム単語と同じものを使う

@あれ
えー
びー
しー

*
:(あれ)がほしいなー。
:(H1)ですか。
:(あれ)もほしいんだけどねー。
:(H3)もですか。

これで、
「えーがほしいなー。」
「えーですか。」
「しーもほしいんだけどねー。」
「しーもですか。」
になるはず。

Hの後にはトーク中にその変数が現れた順番を入れます。 この時(0)(1)(2)…や(H○)や(R○)なども変数としてカウントされます。

*
:(1)(あれ)がほしいなー。
:(H2)ですか。
:(2)(あれ)もほしいんだけどねー。
:(H5)もですか。

イベントトークやジャンプ先をランダムに入れ替える

「*OnBoot」や「*OnGhostChanging」などのイベントを複数用意すると、そのイベントが発生した時に、そのうちのどれか1つをランダムにトークします。
ご自身で用意したジャンプ先についても同様です。

*OnBoot
:起動しました!

*OnBoot
:呼ばれました!
*OnGhostChanging
:次の方へ交代しますね。

*OnGhostChanging
:え〜、交代ですか〜?
*選択肢1
:正解です!

*選択肢1
:おめでとうございます。

イベント発生時にゴーストが喋るパターンを多数用意したいだけならば、次のようにすると記述を簡素・短くできます。
つつき反応など、短い反応をたくさん用意したいときなどに有効です。

*OnBoot
:(OnBoot時台詞集)

@OnBoot時台詞集
(5)呼ばれました!
(5)起動しました!
(4)……うぃー。
(5)起動してしまいました!

分岐と条件式

記号の「*」「>」のあとに【タブ】と条件式を書いておくと、条件式が成立した時にだけ有効にする事ができます。

*トーク【タブ】(機嫌)<30
:私は不機嫌である。
*
>ウニョラー【タブ】(機嫌)<30
:これはウニョール草といいます。

*ウニョラー
:トッピロキー!

条件式はほんとに色々書けるので、詳しくは条件式へ。

narアーカイブの上書き時、全ファイルを入れ直す

install.txtに

refresh,1
refreshundeletemask,satori_savedata.txt

と書き加えれば、元からあるファイルを全て削除したあと、 改めてインストールします。 refreshundeletemaskで指定したファイルは削除されません。 (上の例なら、里々のセーブデータを削除せずに残します)

追加シェルのあるゴーストの場合追加シェルまで消えてしまうケースがあるため「refresh,0」の方が良いです。(消去したいファイルはdelete.txtで指定)


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-05-05 (土) 20:39:39 (139d)