キーコード概論

Last-modified: 2016-09-01 (木) 01:03:43

イベントの発火

(´・ω・`)
   さて。
   冒険を進める上で「色々なスキルやアイテムを使ってイベントを発生させる」
   ということを何度かやってきたと思う。
( ´∀`)
   見張りを眠らせたり、鍵を使ってドアを開けたり、だね。
(´・ω・`)
   そうそう。
   CardWirthでそういったイベントを起こす際には、「キーコード」という概念が重要になってくる
   今回はそれについて話そうかと思う。別に知らなくてもある程度は問題ないんだけど
   やっぱり知ってるのと知らないのでは冒険の楽しみ方が変わってくるからね。
( ´∀`)
   キーコードっていうのはどんなの?
(´・ω・`)
   大体のカードは、何らかの属性を持っていたり、そのカードを使った際に何らかの結果が起こるよね。
   その属性や結果をテキストにしたものだ。……具体例を出すと分かりやすいかな。
   例えばスキルカードの「魔法の矢」は
   「魔法」「攻撃」「遠距離攻撃」「魔法による攻撃」というキーコードを持ってる。
   「眠りの雲」なら「魔法」「眠り」
   「血清の法」なら「魔法」「治療」「中毒を解除」「麻痺を解除」
   「盗賊の目」なら「鑑定」だ。
( ´∀`)
   見たままだね。
(´・ω・`)
   そうだね。で、こういったキーコードを持ったカードが他のカードなどに働きかけたとき
   どういった動きをするのか。これを見ていくよ。
( ´∀`)
   分かった。
(´・ω・`)
   といっても原理は簡単。
   対象になったカードは「このキーコードなら反応するよ」というリストを持ってる
   このリストを上から順に見ていって、そのスキルやアイテムが持っているキーコードと
   マッチングしているかを調べる。もしマッチングしたら
   そのキーコードに対応するイベントが実行される。
( ´∀`)
   シンプルだね。
(´・ω・`)
   うん。ここで重要なのは、基本的にイベントの発生にはキーコードが重要なのであって
   スキルやアイテムが重要なのではないということ。
   例えばキーコード「眠り」に反応するイベントを発火させたいのなら、別に「眠りの雲」に限らず
   どこかのシナリオで拾ったアイテムの「睡眠薬」を使ってもいい可能性があるんだ。
( ´∀`)
   「睡眠薬」が「眠り」のキーコードを持っていればいいんだね。
(´・ω・`)
   たまに例外はあるけど、そういうこと。

裏技?

(´・ω・`)
   さて、このキーコードの特性を利用して、ちょっとした裏技を使うことができる。
( ´∀`)
   どんなの?
(´・ω・`)
   例えば、キーコード「ロープ」に反応して、縦穴の奥に侵入できるようになるイベントを考えてみよう。
   こういった場合、普通はシナリオのどこかでロープを入手できて、それを使うという展開になる。
( ´∀`)
   なるほど。
(´・ω・`)
   ところが、だよ。
   もし他のシナリオでキーコード「ロープ」を持っているアイテムを入手していたとしたらどうする?
( ´∀`)
   そのカードを使っても先に進めるようになる?
(´・ω・`)
   そう。そのシナリオ内部でロープを手に入れるためにいろんなイベントをこなさなければいけない
   というとき、イベントをばっさりカットして進むことができてしまうことがあるんだ。
( ´∀`)
   らくちんだね。
(´・ω・`)
   うん。
   ……ただ、そのロープを入手する過程で、先に進むために必要な
   他のアイテムも入手できるとしたらどうする?
( ´∀`)
   あ、前に戻ってやり直しになるのか。
(´・ω・`)
   やり直しで済むならまだいい。
   もし一度穴にもぐったら、入手イベントは消えてしまうように作られていたら
   その時点でクリア不可能になってしまうよね。
( ´∀`)
   確かに。
(´・ω・`)
   キーコードを生かして強引に進むこともできるけど、その段階でシナリオの作者の意図とは
   外れた進み方になる。作者の配慮が足りないと言ってしまえばそれまでなんだけど
   それでもできればバグに遭遇せずに気持ちよくプレイしたいよね。
   だから、こういうときには十分に注意して進めてほしいな。
   というわけで、今回はここまで。お疲れ様。