ゲームブック総合サイト、投稿作品にパラグラフジャンプ機能追加しましたッ!!

ゲームブック

こんにちは。

あるいはこんばんは。

ゲームブック総合サイトの管理者です。

進捗管理云々のエントリでも触れておりました……。

パラグラフジャンプ機能(みたいなモン)を付け加えましたのでその模様を報告いたします。

パラグラフジャンプ機能って

そんな正式名称あるんですね。

最近FT書房さんのFT新聞に梧桐 重枝さんの「パラグラフジャンプを超えて」が掲載され話題になったりでタイムリーですが。(筆者がこの機能を盛り込んだのも、たまたまですが)

その説明は豊穣の迷宮などのKindleゲームブック作家のちゃなさんのブログに詳しいです。

chanagame.hateblo.jp

簡単に言うと隠しパラグラフ。

普通にゲームブックを選択肢を選んで読み進めていても、到達することの出来ないパラグラフのことです。

そのパラグラフにたどり着きたい場合は、何らかのイベントをクリアするなどのアクションが必要です。

具体的には鍵を見つけるとか。

登場人物を手助けして温情を得るとか。

そうしたらその隠しパラグラフへ行くための方法を知ることが出来たりします。

具体例を出しますと、下記のようなゲームブックがあったとします。

1

東にはなにもありません。

西には鍵があります。

北に行くと宝箱があります。

東に行く→2

西に行く→3

北に行く→4

2

君は東に来た。

やがて何もないことに気づくだろう。

もと来た道を戻る→1

3

西に来たんだね。

ラッキ!鍵を見つけたよ

このことで君は宝箱を見つけたら、次のパラグラフに進んで良い

もと来た道を戻る→1

4

宝箱があります。

鍵を持っているなら開けられるが、君は持っているか?

持ってないなら最初からやり直し→1

5

鍵を宝箱に挿して回す!

うっ!

毒が塗られた吹き矢が胸に命中した……。

ゲームオーバー

そんなに人生、甘くない。

2のパラグラフで東に行って→4のパラグラフに行っても、3のパラグラフで示されている

宝箱を見つけたら、次のパラグラフに進んで良い

という情報を読者は知らないので、5のパラグラフには進めません。

ある条件を満たさないとたどり着けないパラグラフに、読者が条件を満たしてたどりくことをパラグラフジャンプと言うようです。

(筆者も最近知りました)

隠しパラグラフと言い換えている場合もあります。

ゲームブック総合サイトではどうする

はい。

その機能を盛り込みました。

要は上記の例だと、

  • 読者の進んだパラグラフを記録しておく
  • 3のパラグラフに行ったことがあれば、4のパラグラフで「5に進む」と言うパラグラフを表示させる。
  • 3に行ってなければその選択肢は表示させない

ということをすればいい。

理屈は簡単なんですよ。

元に読者が進んだパラグラフの記録と、その条件下で隠しパラグラフを表示させることはすんなり実現しました。

ところが条件をクリアしていないんなら隠しパラグラフを隠す、と言う挙動が想像以上に難しくて難航しました。

何回フリーズさせたことか。

そのたんびにブラウザ閉じてコードちょうしてまた試して……とエンドレスエイトの様に繰り返し。

dic.pixiv.net

まあ、終わってみればループを工夫すればすんなり行けましたけどね。

プログラミングはほんと、調子のいいときと停滞するときと、波がありますね……。

記述の仕方

迷ったんですよね。

現状ではパラグラフへの遷移は大かっこ2つを使っています。

例)14へ行け の場合

[[014へ行け|014]]

それと被らないようにしたほうが効率はいいですので、中括弧でも使おうかと思ったんですよ。

{{条件パラグラフ|選択肢の文言|飛び先}}

上記ゲームブックの例なら、パラグラフ4に

{{003|持っているなら箱を開けよう|005}}

と記載するルールにしたかったんですよね。

でもなぜか、編集しようとか思って修正ボタンを押して作品を見ると、ほぼ中括弧ごと消えてしまう挙動が出るんですよね。

となれば、大なり小なり記号 <> とか使おうとも考えましたが、作品中に<br>タグや<img>タグを使う場合も多いでしょうし、<<と誤入力しちゃうとバグを誘発しやすくなるなと。

なので、やむを得ず小カッコ (()) を利用することにしました。

小カッコは普通に文章で多用される記号なので使いたくないんですけど、他にわかりやすい記号もないなと断念しました。

普通の地の文などで小カッコこそよく使われる記号だなとも思うのですが……。

だからといって ## とか $$ だと訳解んないし、始まりと終わりがわかり易くないと駄目だよなと。

ので、下記の通りにしました。(誤入力にはお気をつけ下さい。)

((条件パラグラフ|選択肢の文言|飛び先))

上記ゲームブックの例なら、パラグラフ4に下記を記載すればOK

((003|持っているなら箱を開けよう|005))

((003|持っているなら箱を開けよう|005))

の場合だと、読者が3と言うパラグラフに一度でも行ったことがあれば

持っているなら箱を開けよう5

と言う選択肢が表示されます。

3のパラグラフに行ったことがなければその選択肢は表示されません。

実際の挙動は下記でお確かめくださいまし。

gamebook.xyz

まとめ

そんな感じでパラグラフジャンプ(みたいなモン)機能を盛り込みましたので、どしどし投稿をお待ちしております。🙇

コメント

タイトルとURLをコピーしました