びじゅあるのべる
びじゅあるのべるは、シナリオファイルとCSSファイル(無くてもいい)を用意することで、
誰でもビジュアルノベルもどきが作れる便利な(?)ツールです。
画像、音楽も組み込めますので、作りこめば結構本格的なものになるかも?

新着
2000/10/27
 click待ち部分少し手直し
 ページインデックスの持ち方変更
2000/10/21
 @:変数:@関連のバッグフィックス。
 SAVE,LOADの動作変更。文字列識別子のデータ移項が可能に。
 メイン部分、フッター部分を外部Script化。
更新履歴詳細
サンプル
まずは、日記風サンプルをご覧下さい。
おまけに、花火大会をご覧下さい。
さらにおまけで、てきすとあどべんちゃーもご覧下さい。
ビジュアルノベルとは程遠いですけど感じはでてる?
用意するもの
用意するものは、シナリオファイルとそれに付随する画像ファイル、音楽ファイル、外部CSSファイルです。
シナリオファイルは外部Scriptファイルで、決められたフォーマットにしたがって書きます。
シナリオエディタを用意しましたので、こちらをご利用下さい。
Delphi版シナリオエディタも用意しました。Windows環境の方はこちらが便利です。
開発キットをバージョンアップ。サンプルファイルから「びじゅあるのべる」本体まで全て含んでいます。
開発キットの差分ファイル。変更部分だけを収録。

シナリオファイル
シナリオファイルのパラメータの説明です。
シナリオ本文はエセプログラミング言語です ^^;
ImageExist ノベル内で画像を使用するかしないかの設定で、"yes"か"no"を設定します。
ImageDIR ノベル内で使用する画像の置いてあるパスを指定します。使用したい全ての画像は 全て同じ場所に置いてください。
後述のImageSRCと関連します。
ImageSRC ノベル内で使用する画像を指定します。使用したい全ての画像を設定してください。 後述のIMAGEタグと関連します。
MusciExist ノベル内で音楽を使用するかしないかの設定で、"yes"か"no"を設定します。
titel タイトル欄に表示される文字です。作品のタイトルなどをどうぞ。タグも使え、classで文字修飾できます。
author 著者欄に表示されるもじです。著者などを書いてください。タグも使え、classで文字修飾できます。
ieTOP ブラウザがIEの時に本文が開始される場所の高さの指定です。タイトル欄にあわせて調整してください。
cssSRC classを定義してあるcssファイルのURLを指定してください。自動で読み込みます。
mes_str びじゅあるのべるの本文にあたる配列です。この中では以下のタグが使用できます。
IMAGE
img_num
IMAGEが来ると次に指定してある番号の画像ファイルをImageSRCから読みこみます。 このとき先頭が0番目になります。文中に何個か入れることで画像を切り替えることが出来ます。
画像サイズは500x375を指定してあります。
使用例
画像変更のサンプル
画像変更のサンプルのソース
MUSIC
musicURL
MUSICが来ると次に指定してある音楽ファイルを読みこみます。
文中に何個か入れることで音楽を切り替えることが出来ます。
使用例
音楽変更のサンプル
音楽変更のサンプルのソース
STYLE
ClassName


STYLEEND
STYLEは次に指定されたclassで本文の文字修飾を行います。
効果の範囲はSTYLEENDまでで、入れ子も出来ます。
ページを超えての設定も有効になりました。
SKIPの時も反映されますが、コードが面倒になりそうなのであまりお勧めしません。
使用例
STYLEのサンプル
STYLEのサンプルのソース
使用しているCSSファイルも参考にしてください。
CANCEL CANCELは、通常改行してしまう本文部分を、CANCELの次の行だけ改行なしにします。
使い道としては、同一行でフォントを変えたい時ぐらいかな?
使用例
CANCELのサンプル
CANCELのサンプルのソース
NOWAIT


NOWAITEND
MOWAITは、NOWAITENDまでの文字列を表示する時、改行時のClick待ちを解除します。
長い文章を見せたい時などに使用すると便利です。
使用例
NOWAITのサンプル
NOWAITのサンプルのソース
NEXTPAGE NEXTPAGEは、同一ファイル内で改ページを行います。
使用例
STYLEのサンプルを参照してください。
LINK
paramfileURL
LINKはシナリオファイルを切り替えるリンクを指定します。
切替は<a>タグで行いますが、srcの指定は、
http://www2.gol.com/users/blaze/script/novel/novel.html?param.js という感じで、?の後に外部Scriptファイルのurlを指定します。
一行単位でパッと表示したいときにも使えます。
使用例
LINK&SKIPのサンプル
LINK&SKIPのサンプルのソース
SKIP
リンク文字列,行番号[,class]
SKIPはシナリオファイル内で分岐させたい時に使用します。
指定行番号(mes_str[num])に飛ぶようなリンクを作成します。
classを指定(任意)するとリンク文字列を修飾できます。
使用例
LINKのサンプルを参照してください。
GOTO
行番号
GOTOはSKIPと似ていますが、こちらは内部的に行をジャンプさせます。
後述のCHECKPARAMと組み合わせることが多いと思います。
使用例
CHECKPARAMのサンプルを参照してください。
STOP STOPはシナリオファイルを進めるのを中止します。
段落単位で表示をコントロールしたい時などに使用してください。
使用例
CHECKPARAMのサンプルを参照してください。
SETPARAM
数値 or "文字列",パラメータ
SETPARAMは「びじゅあるのべる」上に用意された変数領域に値をセットします。
数値 or "文字列"が変数の識別子になります。
ここでセットした値はCHECKPARAMで参照でき、話の分岐を内部的にできるようになります。
文字列を識別子にした場合、SAVECOOKIEを使ったシナリオファイル間のやり取りは出来ません。
パラメータに文字列を設定する時は""で囲ってください。
使用例
CHECKPARAMのサンプルを参照してください。
CHECKPARAM
数値 or "文字列",パラメータ,演算子,真,偽
CHECKPARAMは、指定の変数の値とパラメータを指定演算子を使い比較をします。
比較の際paramの値が左辺になります。比較結果が真ならば真の行番号、
偽なら偽の行番号に内部的にジャンプします。
比較演算子には、
・ == 等しい
・ != 等しくない
・ <= 以下
・ < より小さい
・ >= 以上
・ > より大きい
が指定できます。 パラメータが文字列の場合は""で囲ってください。
パラメータには他の変数も指定できます。この場合、paramList[識別子]を指定してください。
識別子が文字列の場合は、paramList[\'"識別子"\']となります。
使用例
変数を使ったサンプル1
変数を使ったサンプル1のソース
PASSWORD
文字列,判定値,真,偽
PASSWORDは、文字列を問題文としたpromptを表示して読者にパスワードの入力を求めます。
入力された値と判定値を比較して真ならば真の行番号、 偽なら偽の行番号に内部的にジャンプします。
使用例
PASSWORDを使ったサンプル1
PASSWORDを使ったサンプル1のソース
BLOCK


BLOCKEND
BLOCK〜BLOCKENDは、この間の文章を一括表示します。「びじゅあるのべる」用の タグは無視されますが、HTML用のタグは利用出来ます。
使用例
BLOCK使ったサンプル
BLOCKを使ったサンプルのソース
COOKIESAVE 変数領域に格納されている値をcookieに保存します。この値は、COOKIELOADで 呼び出すことが出来ます。 シナリオファイルの切り替え時に利用してください。
使用例
COOKISAVE使ったサンプル
COOKIESAVEを使ったサンプルのソース
COOKIELOAD cookieに保存したデータをparam1〜10に反映させます。 シナリオファイルの切り替え時に利用してください。
cookie情報は一度読み込まれると消えるように設定してあります。
使用例
COOKIESAVEの続きを参照してください。
COOKIELOADを使ったサンプルのソース
INCREASE
数値 or "文字列",増加値
識別子が数値 or "文字列"に代入している数値を増加値分だけ増加させます。
使用例
変数を使ったサンプル2
変数を使ったサンプル2のソース
DECREASE
数値 or 文字列,減算値
識別子が数値 or "文字列"に代入している数値を減算値分だけ減算させます。
使用例
使用していませんが、INCREASEの例を参照してください。
GOSUB
行番号


RETURN
BASICで使われるGOSUB〜RETURNとほとんど同じです。
1行内でのSTYLE変更を頻繁に行いたい時に使うと便利?

使用例
INCREASEの例を参照してください。(あまりいい例ではありませんが...)
CASE
数値 or "文字列"
判定値1,行番号
判定値2,行番号

CASEEND

C言語でいうswitch文。CHECKPARAMでもできますが、判定したい値が多い時はこちらが便利。
判定が全て偽だった場合、CASEENDの次の行に制御が移動します。(C言語でいうdefaultの場合)

使用例
INCREASEの例を参照してください。
@:変数識別子:@ 本文中に埋め込むことで、指定識別子の変数内容をテキストに書き出すことが出来ます。
使用例
INPUTの例を参照してください。
INPUT
文字列,数値 or "文字列"
文字列を問題文としたpromptを表示して、
入力の結果を数値or"文字列"を識別子とした 変数領域に格納します。
使用例
INPUTを使ったサンプル
INPUTを使ったサンプルのソース
DICE
数値 or "文字列",ndq
q面対ダイスをn回降った結果を乱数で求め、数値or"文字列"を識別子とした変数領域に代入します。
ndqには、例えば6面体ダイスを2回降った結果(2〜12)が欲しい場合には2d6と指定します。
使用例
DICEを使ったサンプル
DICEを使ったサンプルのソース

使用法
シナリオファイルとCSSファイルが出来ましたら、ftpでご自分の適当なSiteに置きまして、
http://www2.gol.com/users/blaze/script/novel/novel.html?ScriptFileURL
の、ScriptFileURLを自分の外部Scriptファイルのパスにしてブラウザで開いてみてください。

使用に関して
「びじゅあるのべる」を使用の際には特に制限は有りません。
「びじゅあるのべる」本体を自分のサイトにおいて公開したい方はご一報ください。
作品を公開するにあたっても、ご一報くださると嬉しいです。
何故かというと「びじゅあるのべる」はまだまだ更新中なので、
最新のお知らせなんかを伝えたいかな〜と。


更新履歴