ウソブックス:ウソペディアで高度なゲームの作り方 (簡易版)

出典: 究極の八百科事典『ウソペディア』

ウソペディアをこよなく愛するあなたは、きっといつしかウソペディアの発展に寄与する過程の中で、ウソのような素晴らしいゲームを作りたいと思っているはずである。しかし、本記事の執筆者はアンサイクロペディアで溢れているような絵も音もないモノクロな物語(とも言うのも誇大表現だけども)は正直あきあきしているし、どうせならちゃんとゲームらしいゲームを作って、我らウソペディアンの技術力の無駄な高さを見せつけてやりたいと思っている。そのためには、色々な人が、「どうやってゲームをつくればいいのかといった、ノウハウを共有することが大切だと考えている」。

そこで、「ウソペディアで高度なゲーム[1]の作り方(簡易版)」を通して、まずは概略的にそのイメージを持ってもらおうというのが、この読み物の趣旨である。

はじめに[編集 | hide | hide all]

ここウソペディアは、MediaWiki(メディアウィキ)と呼ばれる、「ウィキシステム」で記事を書いている。あなたがウソペディアでゲームを作ろうと思ったら、兎にも角にも「メディアウィキ」に慣れることが先決である。であるからして、普通の記事を10数本作ってこそ、ようやくゲームを作ることが許されるのである。

そうして、この記事を今あなたが読んでいるということは、「ウソペディアでゲームを作りたい」と強く思っている証だろう。もしかしたら、「でも、難しいんでしょう?」と思っているかもしれない。始めに言っておくが、難しいに決っている。そう、この記事はある程度難しいことが分かる「大学生、それ以上の大人向け」として書いている。むしろあなたが高校生で、この記事の内容を理解できたのなら、あなたは天才かもしれない。そんな心意気で読んで欲しい。

用意するもの[編集 | hide]

この記事の内容を実践するには、以下の3つが全て必要である。

パソコン
秀丸
エクセル(Excel)

パソコンが無いなら、ゲームを作るよりもゲームで遊ぶだけを勧める。秀丸に関しては、「提示されている正規表現ファイルやマクロファイルを他のエディタ環境へ移植できる」ならば代替のものを使っても良い。しかし、この記事を読んでいるあなたなら、用意しておいた方が無難だ。今後絶対必要になるし、ライセンス料はかかるが購入しておくことを勧める。

エクセルは合ったほうが良いだろう。秀丸のマクロで実現できるものもあるが、マクロを書く手間をかなり省けるので、紹介する使い方もやれるようになっておくといいだろう。つーか、面倒なので全部用意してくれ。

エクセルに作りたいゲームの画面を作る[編集 | hide]

この画面はエクセルに現在想定しているゲームの画面を仮構築してみたところだ。左側の黄色いマスが四角と斜線になっているものがあるが、これは「1」という数字を入れると自動的にセルの色が黄色になり、それ以外だと背景色がつかないように設定している。これを「条件付き書式」という。この条件付き書式は慣れると非常に便利なので、ぜひ覚えておくといいだろう。

そして、今回はあくまでイメージを付けてもらうだけなので、映像を見せるだけで細かい説明(エクセルの操作等)はしない。別の機会で解説する予定であるのでそちらを待って欲しい。もしもあなたが暇人だったりニートだったなら、google:excel+条件付き書式のリンクを使って勉強しておいてもいいだろう。

そして、作った画面を実際にメディアウィキのテンプレート機能で再現できるように、「エクセルの関数」を定義して、メディアウィキのテンプレート書式が作られるようにしている。その結果が図の右下で黄色になっている部分だ。

ウソペディアに貼り付ける[編集 | hide]

先ほどエクセルに作った右下の黄色の部分をコピーし、それをブラウザの編集領域へクリップボード[2]を経由して貼り付けることで、ゲーム画面を作るわけである。

しかし、ここで問題が出てくる。

エクセルからブラウザの編集領域へ直接コピペして貼り付けると、せっかく作った「メディアウィキのテンプレート書式」が崩れてしまうのだ。

その理由は、クリップボードを経由してエクセルの内容を貼り付けると、貼り付ける際にTSV(Tab slashed Value)という形式に変換されるからだ。これは要するに、エクセルのセルの値がタブ文字と改行記号で分割・分離されて記録されている形式であり、この特徴のせいでうまく想定したとおりに動かない(事が多い)。

そこで、秀丸のようなテキストエディタの持つ「正規表現」を用いて、このTSVを処理してしまうのである。

この画面が、秀丸で正規表現を用いて、問題のあるTSVを一気に空文字に置き換えさせるための処理例だ。

後は、これをメディアウィキの編集領域へ流し込めば、想定した通りに画面が出力されるだろう。

実際に上記の方法で作ってみた画面が以下の画像である。

なんか想定と左右が反転しちゃってるけど、別に気にしない。めんどいもん

テンプレートの中身を見やすく表示する[編集 | hide]

私が秀丸を推す理由は、「私がMediaWikiのテンプレートを編集するための色分け機能を定義したファイルが存在する」からである。このファイルを使えば、複雑怪奇なテンプレートが、多少は見やすくなるはずである。

このように、変数やテンプレートなどを色分けし、MediaWikiのフォーマットの太字や[[リンク]]にも色がつく上に、インデントを<!---->を用いて行う際の視認性の低下をある程度抑えることも可能である。

また、複雑な見た目になりやすいMediaWikiのテンプレートの形式は、見やすく表示したほうが楽である。

最後に[編集 | hide]

最後に、今回の内容をざっくりと箇条書きにしたので、読んでおいて欲しい。

 
  1. ゲーム画面を作る
    Excelなら関数機能と表機能があるのでMediaWikiのソースコードを作り出させることができる
  2. TSVを処理する
    秀丸なら、正規表現を使って簡単にTSVを対処できる
  3. ウソペディアに貼り付ける
    TSVを処理した内容をウソペディアに貼り付ける
加えて、秀丸なら、メディアウィキのテンプレートを分かりやすく表示できる。

ということで、ここまで読んでもらってどうだっただろうか。

ここまでの内容で覚えて欲しいのは「最後の箇条書きした3点」だけをまず覚えておくと、今後解説をスムーズに理解できるかもしれない。

あなた高度なゲームを作ることが可能になることを、ウソペディア及びウソゲームスの開発スタッフは願っている。

関連事項[編集 | hide]

  1. ここでいう「高度なゲーム」とは、変数やページ間引数を使ったゲームのこと。ウソゲームス:Usodaのようなゲームを指す。決してアンサイクロペディアンは作れないし、アンサイクロペディアの空間には投稿できないだろう。
  2. 通称コピペをする際に経由する領域。ウィンドウズ(Windows)では基本的な事項。