by 唐草 [2014/03/07]
ドラクエXには、季節のイベントが多い。七夕、クリスマス、お正月などなどドラクエの世界観をぶち壊すようなイベントが平然と行われている。
先月は、バレンタインデーイベントが行われた。これは、女性NPC(None Player Character)の人気投票イベントのようなもの。
今月は、ホワイトデーイベントが行われている。こっちは、男性NPCの人気投票。システムもボスもバレンタインの使い回しで、手抜き感が拭えない。まぁ、クリア報酬が良いからちゃんとプレーしてるのだが…。
さて、この手の季節イベントに参加するためには、イベントNPCの前でチャットを使って合い言葉を言うというスタイルが多い。
クリスマスなら「メリークリスマス」、今回のホワイトデーなら「ハッピーホワイトデー」と発言するとイベントが始まる。
多くのプレーヤーは、素直に指定されたキーワードを発言している。
だが、中にはひねくれ者もいる。
指定されたキーワードの後に別の言葉をつけてイベントを進めている。先日twitterで「ハッピーホワイトデーブ・スペクター」と発言してもイベントが進んだという報告が拡散されていた。
この字面は確かにおもしろい。でも、コンピュータの処理を知っていればこんな事、なんの驚きもない。
イベントを進めるための言葉の判定は、簡単な文字列検索で行われているのだろう。
技術者が愛してやまない正規表現を書けばこんな感じになる。
/^(ハッピーホワイトデー).*$/
これは、「行がハッピーホワイトデーで始まり、その後に0文字以上の別の文字が来て、行が終わる」という検索のための表記だ。たったこれだけの表記でどんなトンチの効いた発言だって拾って処理できる。合い言葉の後にどんな言葉が来ても問題無い。
こういうものが動いていると分かると、合い言葉も無味乾燥な処理に見えてきてしまう。
仕掛けが分かるとつまらなくなってしまうこともあるんだよなぁ。