ゲームブックを作ろう その09
次のシーンを作る
B.水辺
【B】
貴方は洞窟を左へと進んだ。洞窟には一定間隔で松明が掲げられている。しばらくすると水辺が見えてきた。見た感じ、底は浅そうだ。向こう側へは頑張れば飛び越えれそうではある。
どうしようか?
走って飛び越える→【B01】
水筒があるなら水を汲む→【B02】
水を飲むために水面に顔を近づける→【B03】
危険を避け、水辺を迂回する→【B04】
【B01】
荷物はいくつ持っているだろうか?
二つ以上→【B0101】
一つ以下→【B0102】
【B0101】
助走が甘かったのか、対岸まで少し足りず、
ドボンッ!
と水の中に落ちてしまった。
落ちてしまってから気付くが、ここは水場ではなく沼だった!
下手にもがけば沈んでしまうため、試験の時間が終わって救助が来るのを待つこととなってしまった。
GameOver
【B0102】
貴方は危なげなく水辺を飛び越えた。少し先には背丈のある草が生い茂っている。
戻る→【B010201】
進む→【D】
【D】
【B010201】
貴方はもう一度飛び越えようと助走をつける。そしてジャンプ!
……しようとしたが、ジャンプのために踏み込んだ場所はぬかるんでいて、水の中に下半身が沈んでしまった。
落ちてしまってから気付くが、ここは水場ではなく沼だった!
下手にもがけば沈んでしまうため、試験の時間が終わって救助が来るのを待つこととなってしまった。
GameOver
【B02】
水筒に水を汲んだ。水辺の水とメモに記録しておくこと。
次はどうしようか?
走って飛び越える→【B01】
水を飲むために水面に顔を近づける→【B03】
危険を避け、水辺を迂回する→【B04】
【B03】
水辺に顔を近づけると、何やら蠢いているように見える。暗い中、目を凝らしてみると、何かの卵のようだ。
水を飲む気は失せてしまった。
もし水を汲んでいたら捨てることも出来る。その場合はメモを消しておくこと。
次はどうしようか?
走って飛び越える→【B01】
水筒にあえて水を汲む→【B02】
危険を避け、水辺を迂回する→【B04】
【B04】
遠回りにはなったが、何事もなく迂回出来た。少し先には背丈のある草が生い茂っている。
戻る時間は惜しいのでこのまま進むことにした。→【D】
今回の冒頭は【__START__】ではなく【B】となります。後でつなげるのでどこから始まるか分からなくなりますが、パラグラフのチェックをする時は、検索で【B】に当たる部分を探しましょう。
パラグラフ数も10行ってないのでそう苦労はしないと思います。ちょっとばかり理不尽なゲームオーバーが多い気もしますが、死亡エンドでもありませんし、まぁいいとしましょう。
前回同様【D】には何も書かなくて構いません。
次回はもう少し作り進めます。
……にしても、文章を作っておいてコピペすると<br>タグ挿入するんだなぁ(´・ω・)
ゲームブックを作ろう その08
簡易なマップを作る
別にパソコンで作る必要はないです。手書きのメモで十分。位置関係とかメモで書いておくと、頭の中を整理しやすいというだけの話です。要は自分が分かれば良いのです。
話を戻して作業の続きです。冒険の舞台は「駆け出し冒険者の度胸試し」としましょう。
A.入り口です。
B.水辺です。
C.垂直の段差があります。
D.うっそうと生い茂る草むらです。
E.陰鬱な墓地です。
Z.終着点。ボスでも置きましょう。
配置を決めたならそれぞれの冒険を作っていきましょう。
戦闘は作っても良いのですが、今回はアイテム方式にします。
Aは【__START__】から始め、Zにのみ【__LAST__】を置きます。
今日の所はまずAを完成させましょう。
A.入口
【__START__】
新人の度胸試しの時期が来た。貴方はここにあるいくつかのアイテムを手に取り、試しの洞窟にて自身の成長の程を示すのだ。
冒険を始めよう→【A】
【A】
幾つか冒険に持っていけるアイテムがある。ここで手に取れるのは2つまで。慎重に選ぼう。試験官が見張っているのでズルはいけない。
錆びた剣→【A01】
フック付きロープ→【A02】
何か入った袋→【A03】
空の水筒→【A04】
【A00】
どのアイテムを見ようか?
錆びた剣→【A01】
フック付きロープ→【A02】
何か入った袋→【A03】
空の水筒→【A04】
【A01】
あまり手入れの行き届いてない剣だ。ないよりましだろうか?
持っていくならメモすること。
他のアイテムも見るなら→【A00】
もういいなら→【A99】
【A02】
フックの付いたロープだ。引っかけることが出来れば、忍者になれるかもしれない。
持っていくならメモすること。
他のアイテムも見るなら→【A00】
もういいなら→【A99】
【A03】
ビー玉が詰まった小さな袋だ。
持っていくならメモすること。
他のアイテムも見るなら→【A00】
もういいなら→【A99】
【A04】
中身の入ってない空の水筒だ。
持っていくならメモすること。
他のアイテムも見るなら→【A00】
もういいなら→【A99】
【A99】
持っていくものは決まった。もしかして何も持ってなかったりするだろうか?
何も持ってない→【AEND】
しっかり持った→【A100】
【AEND】
「毎年居るんだよ。俺は大丈夫だとか思ってる奴。ちょっと来い。説教だ」
有無を言わさず貴方は連行されるのだった。
GAMEOVER
【A100】
試験官に見守られながら洞窟の中へと歩を進める。
中に入るとすぐに二手に分かれているのが分かる。
左からはかすかな水音が聞こえるが、右からは何も聞こえない。
左へ行く→【B】
右へ行く→【C】
【B】
【C】
こんな感じでしょうか。よくできたと思ったら自画自賛しておきましょう。
BとCは今は何も書かなくて構いません。後で一つにまとめる時に消しますので。
A99を最終項目にするつもりが、書いてる途中でゲームオーバーを作りたくなってしまったので、A100になりました。こういう所もgamebookcompilerの便利なゆえんですね。
Aのシーンの総項目数は12なのでミスもしにくいでしょう。
コンパイルが終わったら、出来上がったhtmlをブラウザにドロップすれば良いだけですので、ちゃんと全項目を踏破できるか、行けない項目は無いかをチェックしておきましょう。
明日以降はBCDEZを書き進めたいと思います。
ゲームブックを作ろう その07
少し本格的なゲームブック
今までの記事は「どうやって作るか」に重点を置いてきましたので、ここで少し本格的な物を作ってみたいと思います。
「作り方さえわかれば後は適当にやれる」という方は「ここまでお読み頂き有り難うございました。良いゲームブックをお創り下さい」と門出を祝わせて頂きます。正直、文章力と、ルート設定能力がしっかりしているならば、今までの記事で十分作れます。
「じゃあ、ここから何をやってくの?」といえば、比較的大きめのゲームブック及びパラグラフの振り方について書かせて頂きます。もちろんgamebookcompilerを用いての記事になります(本当に優秀なんですよ)。
大きめのゲームブックとは
別に1000項目を超えるとかそんな大層な物ではありません。100項目超えるだけでも割とひーひー言いますから。
まずは基本を押さえて、大きい物の作り方を身に着けます。そこから自分なりに工夫出来る人は工夫して行けばいいと思います。
で、その作り方とはズバリ! 小さなゲームブックを組み合わせる! です。「なんやねんそれ」とか思わないように。石を投げようとするのもダメですよ。
ゲームブックで最も面倒な事……あいや、頭を悩ませるのはパラグラフのつながりです。「こことここがあってない!?」「ぎゃー! エラーだらけだ!」とか言うのは日常茶飯事。普通の事です。……少なくとも私の頭はそんなに優秀では無かったですorz
どうすればエラーが少なくなるか? というとパラグラフ数を減らせば良いのです。「当たり前やん」「つまらんわぼけぇ」とか振りかぶって石を投げようとか思わないように。ちゃんと大型のゲームブックは作れるんです。gamebookcompilerという優秀なツールさえあれば! ……他力本願とも言いますが。
では本題に入りましょう。
gamebookcompilerは数字だけが使えるパラグラフではない
お手本の中にもあったと思いますが、半角英数字なら何でも使えるのです。つまり、シーン毎にパラグラフをリセットすればいいのです。
例えば前書きがあって冒険が始まる。諸々の準備が整った、さあいざ出発! これを1シーンと考えます。これくらい小さなくくりで良いのです。始まりの時点なので職業を選ぶだとか持っていく装備の種類を決める位の10にも満たないパラグラフ数のはずです。これらのパラグラフ数の頭にアルファベットをつけるだけで良いのです。
そしてシーンが変わる時、その先のパラグラフをBだとかCだとかにすれば良いのです。仮にシーンが多すぎてZまでいっちゃったよ! って時は、その次をAAとかにすれば良いだけなのです。簡単でしょ?
そうやって小さなシーンを重ねて作れば、余程のことが無い限りパラグラフの振りミスをすることは無いでしょう。
一つのシーンが長くなっちゃったけどどうしたら? って場合には、更に後ろにアルファベットや数字を継ぎ足せば良いのですが、まずはそうならない程度のものを作りましょう。
次回から具体的に作ってみたいと思います。
ゲームブックを作ろう その06
出来上がったゲームブックをいじる
ひとつ前の投稿に完成形を載せてみましたが、パラグラフ間の行間が10だとやはり近そうです。スマホならあまり気にならないかもしれませんが、20か30位にしておいた方が良いかもしれません。
パラグラフの予約の扱いについて
前置きや冒頭部分を書く場合は、無理にパラグラフ1を確保する必要は無いのですが、特に一ページに全部載せる場合は始まるところが必要なので、前置きあるいはパラグラフ1が確定していないと困るのです。
最終パラグラフに関しては、物語すっ飛ばしてエンディングだけ見られるのが嫌って人には、最終パラグラフがエンディングにならないように注意するか、最終パラグラフを予約することで回避できます。
個人的には後書き、特に物語に関わらない、反省や愚痴……はともかく、感謝や色々書く処を用意したらいいと思うのですが好みですね。
どこから始めたらいいか分からないようなゲームブックを作らないようにするのであれば、パラグラフの予約は覚えておいた方が良いかもしれません。
【__START__】は、必ずパラグラフ1を当ててくれるパラグラフ予約用の書式です。パラグラフ1に冒頭部分を書く癖をつけておけば、始まりのパラグラフが行方不明になることは無いでしょう。冒頭部分には前背景の説明や、いかにしてゲームが始まるか、又注意事項などを書いておいても良いでしょう。
@RESERVE=数字は、@RESERVE=の後ろの数字のパラグラフを予約します。ただしそうパラグラフ数を超えるような数値はNGです。一度予約なしでコンパイルしてから総パラグラフ数を確認し、その範囲内で改めて予約するのが良いでしょう。ゲームブックの中にはゲームオーバーのパラグラフが決まっていて、選択肢の先にそのパラグラフが見えたら「ああ、失敗だ」と分かる仕組みになってるものもあります。こちらは好みの問題なので、無理に使う必要はありません。
【__LAST__】は、必ず最後のパラグラフを当ててくれる予約用の書式です。物語の最後をどこかに隠し、最終パラグラフには後書きを書くのに使えるでしょう。こちらも好みの問題なので、無理に使う必要はありません。
これらを駆使すれば、ゲームブックづくりが若干やり易くなるでしょう。
次回はgamebookcompilerにおけるパラグラフの振り方の工夫についてです。
ゲームブックを作ろう その05のおまけ
※行間は10です。
お使いクエスト
休日、家でごろごろしてると、あなたは母親にお使いを頼まれるのだった。
クエスト開始→9
1
「じゃあ〇〇君(ちゃん)の今日のおやつは無しね」
「ぎゃー!」
GameOver
3
「足りなくなっちゃったからお小遣いから出した」
「ちょっと、メモ取らなかったの? 要らないものまであるわよ? 足りない分は出してあげるけど、お釣りをお小遣いで上げるつもりだったからそれは無しね」
「とほほ……」→11
4
ちゃんと頼まれたものを買えたしお釣りももらった。
意気揚々と家に帰った→8
5
「買ってくるものは●と■と▲と……」とお母さんは色々口にしてます。
メモを取る場合は「メモを取った」とどこかに記録しておく。
お金を受け取る→7
6
家を出て目的地のスーパーへとやってきた→2
7
お使いのお金「2000円」を受け取る。
さあ買い物に行こう→6
8
「ちゃんと買ってきたよ」
「あら偉いわね! お釣りはお小遣いとしてあげるわ。ご褒美のおやつはケーキよー」
「わーい!」
めでたしめでたし。→11
9
「〇〇君(ちゃん)。お買い物行ってきてくれる~?」
お使いを引き受ける→5
断る→1
10
うろ覚えだったためお金が足りなくなった。やむを得ずお小遣いでまかなう。
肩を落として家路につく→3
ゲームブックを作ろう その05
ゲームブックをブログにアップする
昨日html形式で出力したものをメモ帳で開き(右クリック→プログラムから開く→メモ帳)、内容を全部選択してコピーします。コピーしたものは(ご利用のブログにもよるが)ブログのHTML編集にてペーストし、後はタイトルを決めれば以下の様なゲームブックが公開できます。
お使いクエスト
休日、家でごろごろしてると、あなたは母親にお使いを頼まれるのだった。
クエスト開始→9
1
「じゃあ〇〇君(ちゃん)の今日のおやつは無しね」
「ぎゃー!」
GameOver
2
メモを見る→4
メモは無い→10
3
「足りなくなっちゃったからお小遣いから出した」
「ちょっと、メモ取らなかったの? 要らないものまであるわよ? 足りない分は出してあげるけど、お釣りをお小遣いで上げるつもりだったからそれは無しね」
「とほほ……」→11
4
ちゃんと頼まれたものを買えたしお釣りももらった。
意気揚々と家に帰った→8
5
「買ってくるものは●と■と▲と……」とお母さんは色々口にしてます。
メモを取る場合は「メモを取った」とどこかに記録しておく。
お金を受け取る→7
6
家を出て目的地のスーパーへとやってきた→2
7
お使いのお金「2000円」を受け取る。
さあ買い物に行こう→6
8
「ちゃんと買ってきたよ」
「あら偉いわね! お釣りはお小遣いとしてあげるわ。ご褒美のおやつはケーキよー」
「わーい!」
めでたしめでたし。→11
9
「〇〇君(ちゃん)。お買い物行ってきてくれる~?」
お使いを引き受ける→5
断る→1
10
うろ覚えだったためお金が足りなくなった。やむを得ずお小遣いでまかなう。
肩を落として家路につく→3
11
成功にしろ失敗にしろ、君の冒険はここで終わる。
ただ、これだと次のパラグラフどころか(環境にもよるが)大分先までが丸見えなので、行間は空けておきたいですね。
あまり格好良くはありませんが、メモ帳で開いたhtml形式のゲームブックの中身をざざっと置換してしまいましょう。
編集→置換で置換窓を開いたら、上の置換元に
下の置換後の文字列には
としてやれば、パラグラフの前に行間を空けてやることが出来ます。
10の値を大きくしてやれば、それだけ行間が空くので「次のパラグラフはぜってえ見せねえ!」って人はどんどん大きくすればいいと思います。
ただ、あまり大きくすると縦に長大なブログになってしまいますのでお勧めしません。
このまま次の記事に行間を取ったものを公開します。
(追記)当日修正について
公開してみた所、追加したはずの行間が消えてました……。多分aタグの中に無理やり押し込んだのを、ブログの方の補正機能で矯正されたんだと思います。「編集見たまま」の方ではちゃんと行間取ってたのになぁ。
修正版は空div入れる方式に変えたので、はてなブログ以外でも大丈夫だと思います。
ゲームブックを作ろう その04
gamebookcompilerでゲームブック形式にする
前回大事なことが抜けてました。それは出だし部分です。出だし部分を加えずにドロップすると、何処から始めて良いか分からなくなってしまいます。うっかりしてました。
ですので前回作った文章の頭に、
お使いクエスト
休日、家でごろごろしてると、あなたは母親にお使いを頼まれるのだった。
クエスト開始→【1】
という3行を追加しましょう。
保存するテキスト名は何でも良いです。それこそ「テスト」だろうと「お使い」だろうとかまわないのですが、今回は「お使い.txt」でいきます。
ではgamebookcompilerを起動しましょう。
見た目はこのような感じになっております。
初めて起動した場合、出力形式が「TXT」になってるかもしれません。これをHTML単一にかえましょう。
出力後の番号の文字種に関してはどちらでも構いません。お好みで。
番号を強調するに関しても「パラグラフですよー」と自己主張させるものですのでお好みで。
検査を省略はチェックを入れない方が良いでしょう。
並び替えをしないのであればこのツールを使う意味は殆ど無いので、やはりチェックは入れずにおきましょう。
用意が出来ましたらtxtファイルをドロップします。すると状況欄に完了 (総項数:11 分岐差最小値:1)と出るはずです。出ない場合は何か間違っているので、前回の記事に戻ってコピペするなりしましょう。その場合、保存する時は名前を付けて保存から、文字コードがANSI形式であることを確認しましょう。これのミスが割とありますので。
ファイル(変換済)お使い.htmlが生成されていれば成功です。後はこれを右クリックから「プログラムで開く」→メモ帳で開きましょう。htmlのタグに関して知識の無い方はなんじゃこりゃと思われるかもしれません。逆に知ってる人にしてみれば「うわぁ、<br>だらけだー」ってことが分かると思います。
次回はこれをブログに載せたいと思います。