2013年08月25日

Divine GameBook Creatorの使い方03



前回の最後で伝えた通り「Divine GameBook Creator」は左ページにステータス値を表示できるというのが最大の特徴です。

さらにキャラクターを作成時に特定のポイントを各ステータスに割り振れるという機能もあります。
ウィザードリィみたいですね。

では今回は前回で使用したデータにその機能を入れて試してみましょう。
プログラミングの経験が無いとちょっと難しいかもしれませんが
コツを掴めば分かってくると思います。

ちなみに青い字が使われている構文です。
これは自由にコピーして使っても改変してもらっても構いません。


まずリスト欄一番上に位置するゲームブックタイトルのフォルダをアクティブにして設定画面を出して下さい。

その一番下にある「Stat Points」と「Stat」が今回ステータス割り振り機能を使う為の設定欄です。

WS000000.JPG

「Stat Points」は割り振るポイントです。10ポイントを割り振りたい場合は10と入れて下さい。
「Stat」は割り振りの対象となるステータスを入力して下さい。全てのステータスでなくて割り振りの対象となるステータスだけで結構です。
緑色の+マークをクリックすると入力欄が現れます。
Name:がステータスの名前を入れる欄です。
ステータスの名前は日本語では不具合が出るのでアルファベットで入力します。あくまで一時的な関数の名前ですのでプレイ画面でこれが表示される事はありません。
Starting Value:はそのステータスの開始時の値です。

WS000001.JPG

今回はドラクエ風に「chikara」ちから「subayasa」すばやさ「tairyoku」たいりょく「kashikosa」かしこさで作ってみました。HPやMPは別に設定するのでここで作成しません。
右の矢印で順序を変更出来ます。

前回の説明ではオープニングからのリンクを1番のパラグラフにしていきなり冒険が始まってましたが、そのリンクをはずして「キャラ作成」のページへ飛ぶように変更しました。
キャラクターのステータスを決めてから冒険に出るという形です。

キャラ作成のページはパラグラフリストの「オープニング」の下に作ります。
キャラクターの名前も自在に付けられますのでまずはその設定です。

WS000002.JPG

まずはあなたのお名前を入力してください。

[input=name]冒険者[/input]

[jump=ステータス設定]ステータス設定へ[/jump]


と入力しました。
inputはプレイヤーにキーボードで文字を入力させる命令です。
その入力されたデータを「name」という一時的な関数に入れてます。$マークがないので変数ではありません。
よってこの「name」の内部データはまた変数に入れる宣言をしないといけません。面倒くさいですね。

「冒険者」とあるのはデフォルトで入力欄に入っている文字です。何も入力しないで先へのリンクをクリックするとこの「冒険者」が名前となります。「名前を入れて下さい」でもいいでしょう。

その後、ステータス設定のパラグラフへ飛びます。

WS000003.JPG

ステータス設定のパラグラフです。

ここでは以下のように入力しました。


[op]$name=get(name)[/op]

$name さん、こんにちは。

では $name さんのステータスを設定します。


[Statsleft] ポイントを各能力値へ割り振りしてください。


ちから: [stat=chikara]1[/stat]
すばやさ: [stat=subayasa]1[/stat]
たいりょく: [stat=tairyoku]1[/stat]
かしこさ: [stat=kashikosa]1[/stat]


割り振りが終わりましたら

職業を選びましょう


[jump=職業設定?stats]職業設定へ[/jump]



「[op]$name=get(name)[/op]」というのは前のパラグラフで入力し「name」という一時的な関数に入っているデータを$nameという変数に入れる命令です。括弧内に一時的な関数を入れます。

そのあと文章中に「$name」を入れれば入力した名前が表示されます。「$name」の前後にはスペースを入れて下さい。

[Statsleft]は先ほど設定した設定画面の「Stat Points」の値が表示されます。割り振る合計数ですね。今回は10ポイントです。

その後の「ちから:」「すばやさ:」「たいりょく:」「かしこさ:」はプレイ画面で表示するステータス名です。
[stat=][/stat]の構文は先ほどの設定画面の「Stat」欄のステータスの事を指します。
=の後に設定した名前と同じ文字を入れて下さい。「1」というのは開始時の値です。設定画面の「Starting Value」と同じです。
これも指定されるのは変数でなく一時的な関数ですので、後のパラグラフで変数に組み込まないといけません。

最後に職業設定へのパラグラフへリンクしますが、「[jump=職業設定?stats]」と記載してあります。
「?stats」というのは職業設定のパラグラフの「stats」という項目へリンクしなさいという意味です。
正式に飛ぶのは職業設定のパラグラフの「[cond=from(stats)]」から「[/cond]」間での間の項目です。
パラグラフの中で特定の場所へピンポイントでリンクできるのですね。
なぜこういう事をしているのかは後で説明します。


次は職業設定のパラグラフを作成します。

WS000005.JPG

[cond=from(stats)]
[op]$chikara=get(chikara)[/op]
[op]$subayasa=get(subayasa)[/op]
[op]$tairyoku=get(tairyoku)[/op]
[op]$kashikosa=get(kashikosa)[/op]
[op]$status=true[/op][/cond]

[cond=from(senshi)][op]$syoku_settei=true[/op][op]$syokugyou="戦士"[/op][op]$HP=60[/op][op]$MP=0[/op]
[/cond]
[cond=from(majyutushi)][op]$syoku_settei=true[/op][op]$syokugyou="魔法使い"[/op][op]$HP=30[/op][op]$MP=20[/op]
[/cond]
[cond=from(touzoku)][op]$syoku_settei=true[/op][op]$syokugyou="盗賊"[/op][op]$HP=40[/op][op]$MP=0[/op]
[/cond]
[cond=from(souryo)][op]$syoku_settei=true[/op][op]$syokugyou="僧侶"[/op][op]$HP=50[/op][op]$MP=10[/op]
[/cond]

[trim]
[cond=!$syoku_settei]
では職業を決めてください。
[jump=職業設定?senshi]戦士[/jump]
[jump=職業設定?majyutushi]魔法使い[/jump]
[jump=職業設定?touzoku]盗賊[/jump]
[jump=職業設定?souryo]僧侶[/jump]
[/cond]
[cond=$syoku_settei]
あなたの職業は $syokugyou ですね。
では次は種族を決めましょう
[op]$LV=1[/op]
[jump=種族設定]種族設定[/jump]
[/cond]
[/trim]



これは職業を決めて下さいと「戦士」「魔法使い」「盗賊」「僧侶」の四つの職が選べるというパラグラフです。

かなりごちゃごちゃになりました。
[cond=from(stats)]から[/cond]までの構文は前のパラグラフからリンクされた部分です。
前のパラグラフから飛んで来たときのみこの内容が実行されます。
内容はステータス設定で割り振った値を変数に放り込んでいるのと、ステータス設定をしたよという証明の変数をONにしています。
この構文を設定しておかないとこのパラグラフへ訪れる度に中の内容が記録されます。
関数は一度変数に値を移してしまうと消去されるため、同じ命令を繰り返されると今度は空のデータを変数に放り込んでしまうのです。
そのためにリンク先で指定して一度実行したら無効になるようにしているのです。

[cond=from(senshi)]〜というのはその下にある[jump=職業設定?senshi]〜と連動しています。
同じパラグラフ内でリンクができるのですね。
四つの職をそれぞれのリンク先パラグラフを作成してバラバラに飛ばしてもいいのですが、それだとパラグラフ数も増え面倒くさいので一つのページで全て設定するようにしています。

「戦士」という選択肢をクリックすると[cond=from(senshi)]〜[/cond]までの内容を実行します。
$syoku_setteiという変数をONにして
$syokugyouという変数に「戦士」という文字を入れてます。
あとはHPとMPを設定してこのページを再読み込みしています。

「では職業を決めてください。」というテキストの上にある「[cond=!$syoku_settei]」という構文は
$syoku_setteiという変数がOFFの時だけ表示してくださいという命令です。
一度職業をクリックするとこの変数はONになりますから再読み込みした時には表示されません。

変わりにその下にある「[cond=$syoku_settei]」が変数がONの時に表示しなさいという構文ですので、一度職を選んだらこの下の「あなたの職業は $syokugyou ですね。」〜が表示される仕組みになっています。

職が決定した後に[op]$LV=1[/op]でレベルを1に設定しています。
[trim][/trim]というのはこの中にあるスペースや改行を取り払う命令です。
これが無いと表示したときに無駄な改行が生まれてしまうので設定してます。


次は種族設定です。

WS000006.JPG

[cond=from(hito)][op]$syuzoku_settei=true[/op][op]$syuzoku="人間"[/op][op]$chikara+=1[/op][op]$subayasa+=1[/op][op]$tairyoku+=1[/op][op]$kashikosa+=1[/op]
[/cond]
[cond=from(elf)][op]$syuzoku_settei=true[/op][op]$syuzoku="エルフ"[/op][op]$subayasa+=2[/op][op]$kashikosa+=2[/op]
[/cond]
[cond=from(dwf)][op]$syuzoku_settei=true[/op][op]$syuzoku="ドワーフ"[/op][op]$chikara+=2[/op][op]$tairyoku+=2[/op]
[/cond]

[trim]
[cond=!$syuzoku_settei]
では種族を決めてください。
[jump=種族設定?hito]人間[/jump]
[jump=種族設定?elf]エルフ[/jump]
[jump=種族設定?dwf]ドワーフ[/jump]
[/cond]
[cond=$syuzoku_settei]
あなたの種族は $syuzoku ですね。
では冒険の始まりです。
[jump=1]スタート[/jump][/cond]
[/trim]



先ほどの職業設定と内容はほぼ一緒です。
[cond=fromを使えば職業設定と種族設定を一つのページで実行する事も可能です。
分かり易くする為に分けましたが。
職業設定ではHPとMPが決定されましたが、種族設定ではステータスが調整されます。
人間では各ステータスがそれぞれ+1されるのに対し、エルフではすばやさとかしこさが+2、ドワーフではちからとたいりょくが+2されるようにしています。

そのあと冒険の開始として1番へのリンクを貼っています。



残りは左ページに表示されるステータスゲージを作成します。
パラグラフ名は「左ページ」まんまです。

WS000007.JPG

[trim]
[size=4][b]ゲームブック-冒険者の日常[/b][/size]
[hr]
[cond=$name][size=4]$name[/size][cond=$syuzoku_settei] - $syuzoku[/cond]
[hr][/cond]
[cond=$syoku_settei and $LV][size=3]レベル $LV $syokugyou[/size]
[hr][/cond]
[cond=$EXP][b]経験値:[/b] $EXP / $maxEXP
[hr][/cond]
[cond=$status][size=3][b]ステータス:[/b][/size]
[cond=$HP][b]HP:[/b] $HP[/cond]
[cond=$MP][b]MP:[/b] $MP[/cond]
[b]ちから:[/b] $chikara
[b]すばやさ:[/b] $subayasa
[b]たいりょく:[/b] $tairyoku
[b]かしこさ:[/b] $kashikosa
[hr][/cond]
[cond=$gold][b]GOLD:[/b] [color=#B78500]$gold[/color] G[/cond]
[/trim]


一番上の「ゲームブック-冒険者の日常」はタイトルです。サイズを変えて太字にしています。これは常時表示されます。
その他の項目は決定した時点で表示されるようにしています。

[hr]は境界線で所持金である$goldは色を変えてあります。

左ページの上から

タイトル
名前と種族
レベルと職業
経験値と次のレベルまでの経験値
HP
MP
ちから
すばやさ
たいりょく
かしこさ
所持金

となってます。


左ページを作成したらパラグラフタイトルのフォルダの設定画面の「Left Page」で指定してあげて下さい。でないと表示されません。

ではプレイしてみましょう。
今回はMacのSafariで表示してみました。やはりMacは綺麗に表示しますね。

01.jpg

スタート画面です。左ページにはタイトルのみが表示されています。

02.jpg

名前入力画面です。今回はデフォルトの「冒険者」で進めます。

03.jpg

ステータス割り振り画面です。10ポイントを各能力値の枠の左右にある+-をクリックして調節します。今回はちからとすばやさを4でたいりょくとかしこさを3にしました。

あと名前を決めたので左ページに名前が表示されました。

04.jpg

職業設定画面です。左ページにステータスが反映されています。今回は「僧侶」を選択。

05.jpg

「あなたの職業は僧侶ですね。」とちゃんと本文で確認されました。左ページにも「レベル1 僧侶」と表示されました。あとHPとMPも表示されました。戦士と盗賊だとMPは0なので表示されません。

06.jpg

種族設定画面です。今回は「ドワーフ」にしてみました。

07.jpg

左ページの名前の右横に種族が追加されました。あとドワーフの特性である「ちから」と「たいりょく」がそれぞれ+2されています。

08.jpg

経験値や金を手に入れればそれも表示されます。今回は試験的に表示してみました。


どうですか?結構サマになってきたと思います。
このステータスデータはクッキーで保存しているらしくそれを残しておけば続編などを制作した時に変数名が同じならステータスを引き継げるようになってます。

あとはこのステータスを使ったバトルシステム構築ですが、今の所勉強中です。
上手く行けば記事に出来そうですがちょっと時間かかりそうですね。

今回のも結構試行錯誤しましたからね。まだまだ勉強不足です。。。


追記: 一応上記で作ったゲームブックを公開しておきます。
クリックするとゲームブックのプレイページへ飛びます。
試作盤なので第二章のトップで終了してます。

ちなみにHTML5に対応しているブラウザが必要となります。古いIE以外は対応していると思います。
上では記載していませんが「うんのよさ」をサイコロ二つ振って設定する場面も設けました。
プレイしてどんなものか試してみて下さい。

PC向けはこちら

モバイルHTML版もアップしました。こちらはシンプルで本文だけ表示されて左ページは画面左上のアイコンをクリックすることで表示されます。あとモバイルHTML版はセーブシステムを設定できます。左ページを表示するアイコンの下にあるアイコンでセーブできます。今回は3つセーブスロットを設けています。左ページの一番下にそのタグを打ち込みました。

モバイルHTML版はこちら
(PCからでも見れます)

あとゲームブックの編集ファイルもアップしました。ソフトウェアを持っている方はダウンロードして開いてみて下さい。中のデータは自由に引用改変して使って頂いて結構です。

専用ファイルをダウンロード
(表示されてしまう場合は右クリック保存でお願いします)


更に追記: 公式で設置されているデモ用のゲームも翻訳(適当です)してアップしました。
こちらはステータスの他にバトルシステムも入ってます。ただデモ用ということで単純なシステムです。
詳しくは専用ファイルをソフトウェアで開いてみてください。

【公式デモゲーム日本語訳版】

PC用ページ

モバイル用ページ

専用ファイルダウンロード


何かあればコメントください。
posted by 文芸遊戯研究会 at 00:36| 制作ソフト | このブログの読者になる | 更新情報をチェックする