Top/トークべた書き支援ライブラリ
  トップページへ   [ 一覧 | 検索 | 最終更新 ]   [ 差分 | 履歴 | 凍結 ]

トークべた書き支援ライブラリ「あやりりすEX」

いちいちウエイトタグ書いてるのが面倒?

\s[]とか書いてたらヒマかかりすぎ?

SakuraScriptで文章書いたら後で推敲しにくくて困る?

……なら、これだ。

概要

"\u\s[10]\0\s[2]…\w5…\w5…\w5…\w5…\w5\w9\w9\1なんや、\w5アホみたいな顔してからに。\w9\w9\0\s[7]\n\nバッテリーがヘタりかけてるのに、\w9\n休止状態で放置しないでください!\w9\nばかになるでしょ!\w9\w9\1\n\n…\w5…\w5もともと賢い事ないがな。\w9\w9\0\s[26]\n\n…\w5…\w5…\w5…\w5\e"

こんな辞書が…

<<"
ま05:分かりました!分かりましたよ!20年モノのパソコンがどうなるのか!
し10:スクラップやのうて?
ま  :付喪神っていう便利な言葉が、世の中にはあるんですよ!
し11:…まあ、ゴーストにはなったがな?
">>

こうなります。

導入しても、通常のSakuraScriptの1行で書かれたトークはそのままスルーパス(あるいは句読点だけウエイトなどの調整可能)します。

文中のSakuraScriptはそのまま実行されます。細かく調整したい場合や。途中で単純な喋り以外の機能を呼び出したい時は、SakuraScriptをそのまま書いて下さい。

実運用サンプル

http://ssp.shillest.net/ghost.html

  • the "MobileMaster"
  • とらふぃっく☆とれいん
  • メリーさんの電話

http://ms.shillest.net/

  • いまいち萌えない娘
  • とらぶる☆ばぐとらっく

下ごしらえ

  1. 最新のシステム辞書と、最新のYAYAの機能をふんだんに利用していますので、yaya.dllの上書きと「システム辞書」の上書きをお願いします。
  2. aya_lilith_ex.dicaya_lilith_ex_config.dic を保存し、ghost/master以下に格納します。
  3. yaya.txtのinclude, system_config.txt直後あたりに、
    dic, aya_lilith_ex.dic
    dic, aya_lilith_ex_config.dic
    を追記してください。

aya_lilith_ex_config.dic を開き、あやりりすEXヘッダ0あやりりすEXヘッダ1をそれぞれ適切に設定して下さい。設定の仕方は辞書内のコメントに記述していますが、通常使いたい1文字の候補を複数書いて [まマ] のように大カッコでくくればOKです。

※発展:この部分には正規表現が利用できます。2文字以上使いたい場合などは工夫してみてください。

使い方

YAYAの比較的新しいバージョンで追加された、複数行テキスト記述機能(ヒアドキュメント)を使用しています。

" " で囲まれるテキストは

<<"
">>

' ' で囲まれるテキストは

<<'
'>>

と同等になります。この2つの書き方の違いは、後者が複数行べた書きできる点だけです。

これを使い、基本的には以下のように書きます。

<<"
ま05:分かりました!分かりましたよ!20年モノのパソコンがどうなるのか!
し10:スクラップやのうて?
ま  :付喪神っていう便利な言葉が、世の中にはあるんですよ!
し11:…まあ、ゴーストにはなったがな?
">>

頭の1文字「ま」「し」は、それぞれaya_lilith_ex_config.dicで設定した文字にしてください。

その後ろの全角数字はサーフィス番号(表情ID)です。半角でも通ります。

句読点や改行時のウエイト等は、適宜自動的に挿入されます。通常はそのままべた書きしてください。

何か特殊なことをしたい場合は、SakuraScriptがそのまま使えます。また、従来通りのSakuraScriptを含む1行のテキストとの共存も可能です。

文法

ま05:てすとてすと

「:」より前が表情やその他オプションを定義する部分、後ろが喋る文字です。

設定した1文字+サーフィス番号:テキスト、が基本形です。サーフィス番号(表情ID)は、半角・全角どちらでも使えますが、日本語変換モードのまま全角で打ち込むと楽です。

ま05「かぎかっこでもいけるよ」

カギカッコで区切ってもOKですが、ちゃんとカッコは閉じてください。

ま消:きゃー消えちゃった―

番号のかわりに「消」と書くと、ウインドウが消えます(キャラが隠れます)

ま :さっきの表情のままね

何も書かないと前の表情のままです。スペース(全角・半角問わず)は無視されます。

二人:バルス!

「二人」と書くと二人同時に喋ります。

ま07し11二人:バルス!

この書き方は複数つなぎあわせることもできます。上記の例の場合、キャラ二人をそれぞれ7番・11番の表情に変えてから、同時に喋ります。

待ち無しま05:あまり待たない
待ちゼロま05:ぜんぜん待たない
待ち多めま05:ふつうより長めに待つ

直後にツッコミを入れたい、また長めに悩んでいる演出を入れたい、という時のために、このように喋り出す前の待ち時間を制御することができます。なお、まったく書かなくても標準で適宜待ち時間が入ります

クリック待ちま07:クリック待ってる

クリック待ち、と書くと、喋り出す前にバルーンをクリックしてくれるのを待ちます。

改行無しま05:改行しないよ

改行無し、と書くと、前に喋った内容から改行せず表情だけを変えることができます。

改行多めま08:改行しまくり!

ちょっと多めに改行します。段落の区切りなどに。

ま00:(ユーザ)さん!

ユーザ名を途中に挿入します。:の後、喋る文字の部分にのみ適用されます。

ま05:(チョコ|菓子パン|ケーキ)食べよう!

|で区切って文字列を書き、カッコでくくるとランダム選択になります。

#コメントなので無視

#ではじまる行は完全に無視されます。

@設定:パッシブモード
@設定:クイックセクション
@設定:タイムアウト1000「時間切れ」

「@設定:」ではじまる行は、以降の喋りに関係するオプション設定です。上のサンプルはそれぞれ、

  • パッシブモード(マウス反応以外すべて無視)
  • クイックセクション(全文字ウエイト無視で一瞬で表示)
  • タイムアウト(以降に続く数字のミリ秒間待つ、待ったら「」でくくった名前の関数を呼ぶ)

になります。

@メニュー:さんぷる1|Sample1Execute
@半分メニュー:さんぷる2|さんぷる2実行
@改行多めメニュー:さんぷる3|OnTest3Exec|R0
@クリック待ちメニュー:さんぷる4|さんぷる4実行

「@~メニュー:」ではじまる行は、メニュー表示です。
半分メニューは標準サイズバルーンに横2つずつ並べる表示です。
改行多めとつけると、1行改行が1行半になります。選択肢の区切りなどに。
クリック待ちとつけると、そのメニューを表示した直後でクリック待ち(\x)に入ります。

後ろは|区切りです。最初の項目が表示するテキスト、2つ目以降は実行する関数/イベントです。

なお、メニュー内は自動でクイックセクションになり、一気にウエイトなしで表示されます。

自動チェイントークとランダム選択

ま05:ちぇいんてすと。
し10:うまくいくやろか。
=====
ま05:ちぇいん2-Aにきたよ。
し10:成功やね。
-----
ま05:ちぇいん2-Bにきたよ。
し10:ここはランダムや。

===== (=が5つ以上) で区切るとチェイントーク、----- (-が5つ以上) で区切るとランダム選択になります。

例えば上の例の場合、最初の ===== までを喋った後いったん終わり、次のランダムトークを喋るタイミングで、2つめと3つめのトークからどちらかを喋ります。

FAQ

なぜEX?
イベント処理支援ライブラリ「あやりりす」っていうのがあったんですが、こちらはまだいろいろ依存がありすぎて切り離せない…。ちなみに、さらに他に用語解説用ライブラリもあったりします。
なぜ書いたし
いや、Twitterなどでネタいただくのはいいんですが、 ラ「ごにょごにょ」テ「ごにょごにょ」 といった形式を一々全部SakuraScriptに直すのがものすごく面倒で……
まとめて開発版で怪しいことしたいです。
the "MobileMaster"・とらふぃっく☆とれいんをデバッグ用前線扱いで運用中です。
選択肢とかも書けるようにして果ては里々並に…
そんなごちゃごちゃしたのはふつうにSakuraScript書きなさいって…