[USER]は斑の迷宮に踏み入った……
第一層は緑に溢れた樹海の迷路だ。
壁のように密生した広葉樹は徐々に紅に染まりつつある……
[LIST1]
通路を進んでいく……
[LIST1_1]
通路を進んでいく……
[LIST1_2]
……
冒険の結果、[USER]は[LIST5_999][LIST6_999]を手に入れた!
金貨[LIST8_999]00枚を手に入れた!
[LIST10]
[LIST1]冒険の内容
[LIST2]罠の内容
[LIST3]罠による被害の程度
[LIST4]モンスター名
[LIST5]アイテムの品質やエンチャント
[LIST6]アイテム名
[LIST7]戦闘結果
[LIST8]金貨の数値
[LIST9]キャラクター名
[LIST10]志望判定
[LIST1]
冒険の内容
例:
木々の隙間に通れそうな隙間を見つけた。[BR][USER]は体を滑り込ませて先に進んだ!
[LIST1]の中身は大量のベーシックな結果と、少数のユニークな結果で構成されています。
ベーシックな結果とは、小部屋や罠、モンスター、宝箱の発見、抜け道の発見等。
ユニークな結果とは、称号や一品もののアイテムをドロップするいわゆるユニークモンスターとの遭遇などです。
それぞれ、一日の冒険で参加者の中の一人か二人程度がユニークな結果を引く、程度の比率を目標としていました。
複数回[LISTn]が結果に出現する場合、[LISTn_m]のように枝番をつけると、結果が別々に抽選されます。
石造りの扉が行く手を阻んでいる……罠だ![BR][LIST2][BR][LIST3]
行く手に小部屋を見つけた!……罠だ![BR][LIST2_1][BR][LIST3_1]
[LIST2]には罠の内容、[LIST3]には被害の程度を記述しています。
これらに枝番を付けない場合、同じ罠から同じ被害を受ける不自然な結果が表示されてしまいます。
[LISTn_1]、[LISTn_2]、[LISTn_3]……のように、[LISTn]を使うたびに枝番の数値を増やす必要があります。面倒ですが頑張りましょう。
行く手に小部屋を見つけた!……モンスターだ![BR][LIST4]と戦闘を開始![BR][LIST7]!
行く手に小部屋を見つけた!……宝箱だ![LIST5][LIST6]を手に入れた!
[LIST4]はモンスター名、[LIST7]は戦闘の結果を記述しています。
[LIST5]は品質やエンチャント(『質の良い』『炎の』など)、[LIST6]はアイテム名を記述しています。
分岐が二つならIF関数とRND関数の合わせ技で処理することが出来ます。
私は関数を使うと頭がこんがらがるので、単純に結果を2つ入れていました。
構造がシンプルになる分お手入れがしやすく楽、という理由もあります。
3つ以上の分岐を作る場合も、単に結果を増やすだけでよく簡単です。
マンネリ感を防ぐために、内容をこまめに(可能な限り毎日)弄る必要があるので、『手入れが楽である』ということは非常に重要です。
人懐っこくリスが寄ってきた。……リスが傷薬を盗もうとしている![BR]気付いた[USER]はリスを振り払い事なきを得た!
人懐っこくリスが寄ってきた。……リスが傷薬を盗もうとしている![BR][USER]は傷薬をひとつ盗まれてしまった!
人懐っこくリスが寄ってきた。……リスが傷薬を盗もうとしている![BR][USER]は傷薬をねこそぎ盗まれてしまった!
[LIST10]は死亡か生存かの分岐に使っています。
[USER]は意気揚々と街に凱旋した!
[USER]は死んでしまった……
LIST内に前者を49個、後者を1個置いていました。力業もいいところですね。
当然、IF関数とRND関数を使った方がスマートですし、LISTもひとつ空けられます。
その他、[LIST8]は金貨の金額に使っています。
関数でランダムな値を生成してもいいですが、LISTを使うことで極端に高い/低い金額ほど出にくくすることが出来ます。
ただ、そのために10個しかないLISTをひとつ使うかは微妙なところです。
|