迷走か進化か

最初に考えたことは、シナリオライターができる限り半角文字を使わずにシナリオを記述できれば、と言うことだった。
そこで着目したのが、タグだった。pretextgosub。しかも(非公式命令ながら)zenkakkoもある。
それで意気揚々と組んでいたのだが、全く起動しなくなった。何故だろう。
http://senzogawa.s90.xrea.com/reference/NScrAPI.html#zenkakkoに書いてあった。

最新版ではサポートされていません。【】に到達した時点で強制終了します。ver2.82までは動作するようです。(by senzogawa)
区切り文字が半角「/」なのはそのままです。

俺様m9(^Д^)プギャー
どうする。[]に戻すか? いやそんなんなしや。つか、pretextgosubとgettag - 永字八法が嘘ばっかりになってる。さらにm9(^Д^)プギャー
で、至った結論が「タグは使わない」だった。
諦めたのか。いや、そうじゃない。pretextgosubもluacall tagも使わない。そうすると、【】は表示文として解釈され、luacall text(0)に渡される。そこで処理できる。
function NSCALL_text()で、テキストを得て、それをホイホイ表示するのではなく、まずは解析してタグを処理して、タグ以外の部分を表示文とすればよい。そうすれば、スクリプトはそのままで済む。おぅけーい。
断言する。シナリオライターは半角文字を打つ必要がない。ゲームのscenalioから、本当の意味での「シナリオ」へのシフト。あれこれもしかしてすごい?
もう、00.txtに書く必要すらない。「今のシナリオ、どこに書いてあったっけ?」迷わない。外部に切りだして好きな名前つけて、それをcsvreadで一行ずつ読み込んで実行していけばいい(for〜nextとかはシナリオには要らんでしょ?)。驚くべきことに既読ストップ問題すらこれで解決する。オリジナルの既読判定を組めるからな! NScript(スクリプト言語)使ってオリジナルのシナリオ記述言語を実装するって? 「よく切れる刃物で鉛筆を削ってその鉛筆で人を刺して切れ味がどうこう言う」みたいな。
今ここまで来たところで、今日その次を考えた。
まさに2chペヤングコピペ。「ペヤングでも、麺とスープを高級品に変えればうまいんですよ」いやそれもうペヤングじゃない。ペヤングなの箱だけ。ペヤングじゃなくてアルキメンデスに変えたって同じことが言える。「NScripterでも、lua使ってシナリオを外部に切り出せばシナリオライターが一切半角文字の命令書かなくてもよくなるんですよ」NScripterじゃなくてもなんとかなるって言う。SGEとか吉里吉里とか。
そもそもスクリプト記述言語もテキストじゃなくてXMLの方が合理的じゃね? 思想的にXNovelになってね? あ、でもテキストの手軽さ、半角は書かないって言う最初の原則には抵触するのか。よかった。ここの手前でストップできる。
人間、考えすぎもよくないんだな、きっと。