非接触ICカードで戦うバーコードバトラーみたいなの作ってみた。
「QRコードバトラー」の登場が待たれる
今回は非接触ICカードを使ったけれど、時流に乗るなら「QRコードバトラー」も楽しそうだ。調べてみると、スマホアプリは出ているみたいだけど、ゲーム機まで自作した人はまだいないようである。……作るか。

その昔、バーコードを読み込ませて戦う「バーコードバトラー」というゲーム機が大流行となった。
あれを今風にアレンジするとしたら、バーコードの代わりに何を読み込ませるといいだろう。「非接触ICカード」なんてどうだろうか。
そんなわけで、非接触ICカードで戦う「バーコードバトラー」風のゲーム機を即興で作ってみた。
いまから30年近く前のこと、「バーコードバトラー」というゲーム機が大ブームとなった。バーコードを読み込ませると、それに応じてプレイヤーのステータス(生命力・攻撃力・守備力)が決まるのだ。強いバーコードを見つけたい一心で、全国の小学生たちが家じゅうのバーコードをかき集めていた(もちろん私も)。
このゲームの一番のポイントは、「バーコード」というありふれた日常アイテムを媒介として、現実とゲームがリンクするところだろう。「ふりかけのバーコード使ったら、めっちゃ攻撃力高いのが出た!」とか、「高いカメラのバーコードなのに弱すぎる!」みたいな意外性も面白かった。あれから20年以上経ったいまでも、たまに思い出しては「いいゲームだったなあ」と感慨にひたる私である。
ときに2020年。バーコードはまだ現役バリバリではあるが、一方で当時はなかった新しい技術も身近になっている。その代表格が、非接触ICカードであろう。交通系のSuicaをはじめ、iDやQUICPayなどの電子マネーにも幅を利かせている(これらはすべて、ソニーのFeliCaという技術がベースとなっている)。
寒さが一段と増してきた2月のある日、私は「次に何を作ろうか?」とウンウン唸っていた。そんなとき目に付いたのが、これである。
たしか、「WAONで決済したときの『ワオン!』という鳴き声を、実際の犬の鳴き声で再現したら面白いんじゃないか」というアイデアがあったので、とりあえずリーダーだけ買っておいたのであった(いまいちなアイデアのためお蔵入りになった)。
こういう電子パーツの類いは、「何に使うか分からんけど、とりあえず買って引き出しに入れておく」と良い。そうすればドラえもんの四次元ポケットのように、困ったときの助けになってくれる。実際これを見た瞬間に、「ああ、これでバーコードバトラーを作ればいいのか!」と膝を打ったのである。
そんなわけで、前置きが長くなってしまったけれど、「バーコードの代わりに非接触ICカードを使った、バーコードバトラー風ゲーム機」を作ろうと思い立ったのであった。
思い付いたはいいものの、原稿の締め切りまであとちょうど一週間しかない。しかも平日は本業があるため、実際に作業できるのは1日3時間×6日ほどである。なんとかなるだろうか……ギリギリなんとかなるはずである。プレッシャーで痛む胃を抑えつつ、深く考えずにいそいそと制作を開始した。
そうして出来上がったものがこちらである。お昼の料理番組よろしく、途中はすっ飛ばすスタイルでいきなり完成品を見てもらいたい。
戦闘自体はわりと単純で、それだけにステータスの高さがそのまま勝利に直結するところがある(これはバーコードバトラーでも同じ)。いかに強いカードを保持しているかがポイントである。
ちなみに自分の場合は、交通系ICカードを9枚、電子マネー系を9枚持っていたので、計18枚の中から選択可能だった。バーコードのように、次から次へといろんなものを試せる手軽さはないものの、「ICOCA、おまえ結構強かったんだな……」というように、馴染みのカードが意外なステータスを持っていたりして、カードを読み込ませる楽しさは十分に味わえる。いいものができた。
とは言うものの、ハードとソフト両方の開発が必要であり、スケジュールは結構カツカツであった。悩む時間もなく、思いついたまま一気に作り上げたので、これは「即興開発」と言っていいだろう。
日々できあがっていく達成感、締め切りに追われる焦燥感、上手く動かなかったときの絶望感。その気持ちをラップに乗せて歌うだけの音楽力は私にはないので、つらつらと文章で発表していきたい。
先に書いたとおり、FeliCaリーダーを見て「バーコードバトラー風のゲーム機を作るか!」と思い立ったのが、日曜の夕方18時であった。作り方の見通しはすぐに立ったので、まずは「ICカードから情報を読み取る」部分が本当にできるのか、試作を作って確かめることにした。
本当に完成するのか? という悩みを払拭するためには、手を動かして、不確定要素をひとつずつ潰していく正攻法しかないのだ。
作り方のサンプルが公開されていたので、1時間ほどの作業で難なく完成した
ちなみにICカードからは、「IDm」というカード固有のID番号を読み取ることにした。このIDmは16桁の数字(16進数)であり、ソニーが管理して同じ番号が2つと流通しないようになっている。これをバーコードの代わりに使おうという魂胆だ。
3Dプリンタでの出力には時間がかかるうえ、一度では絶対に成功しない自信があったので、優先して取りかかった。モデリング自体は1時間ほど。しかし3Dプリンタの機嫌が悪く、メンテナンスをしていたら、たっぷり1時間以上経っていた。寒さに弱い3Dプリンタにとって、冬場は鬼門なのである。
この日は最後に、ゲーム画面の実現手段について調査を進める。3時間ほど情報収集したところでタイムオーバーである。作業時間は6時間ほどであった。
仕事を終え、一息ついたところで2日目の作業に取りかかる。
できるだけ手間のかからないシンプルな画面構成にしたので、短時間でもそれらしくなってきた(ちなみに、PythonのTkinterというライブラリを使っている)。
でもなにか、もの足りないような。
バーコードバトラーに寄せて、数字のフォントを7セグメント風に変更した。この方が断然しっくりくる。
表示先は液晶なので、もはや7セグである必要は何もない。何もないのだが、妙な安心感があるのはなぜだろう。そもそも7本の線だけで全アラビア数字が表現できるのって、冷静に考えるとすごくないか。7セグすごい。いや、でも今は7セグについて思いを巡らせるだけの時間はないのだ。先を急ごう。
パッと見た感じは上手くいっている。しかし、やはりというか、各部の寸法が微妙に間違っており、そのままで使用できないものが出来上がっていた。
すぐに修正して、3Dプリンタに印刷を託す。うちの3Dプリンタは安物なので、これだけの印刷に13時間かかるのだ。寝ている間には仕上がらないので、確認できるのは翌日の夜になる。気の長い話である。それだけに、一度の失敗も許されないという緊張感があり、またしても胃が痛くなるのであった。
あとは細々としたソフトウェア部分を実装し、この日は約3時間で作業を終えた。
いよいよゲームの核心となるソフトウェアの開発に取りかかる。のだが、その前に仕様を決めておかないといけない。
まずは、肝心かなめのステータスである。ICカードから読み取ったIDmを、どのように生命力・攻撃力・守備力に割り振るかを決めていく。ネット上に本家バーコードバトラーを解析した情報があったので、それを大いに参考にさせてもらった。
ステータスの決め方を決めるなんて、もはや神の所業である。自分のさじ加減ひとつで、強いキャラを生み出すこともできるし、逆に弱くもできる。こういう設定を作るのって、めちゃくちゃ面白い。
ほかにも攻撃力の計算式や、先攻・後攻を決めるアルゴリズムなども固めていく。
さて3Dプリントの外装はというと……またしても失敗していた。微修正されたのち、再び13時間という、はるかなる航海へと旅立っていった。
この日は残りの仕様を決めたあと、いよいよプログラミングに取りかかる。
この作業により、ようやく終わりが見えてきた。つまり「これが解決しないと完成しないかも……」という不安要素をひとつずつ潰していった結果、それがついにゼロになったのだ。あとは時間さえあれば完成にまで持って行ける。
こういった状況を「心理的完成」と誰かは言った。誰かとは私のことなのだが。
この日は気温がグッと低くなった。その影響がプリントのクオリティにも現れている(気温が低いと素材が収縮して反りやすい)。寒い夜中にプリントするのは避けて、気温が上がりはじめる翌朝から印刷をスタートすることにした。
さて早いもので5日目である。この日は攻撃と回復のプログラムを淡々と仕上げていき、これにて一通りのプログラミングが完了した。
でも何か物足りない。あまりにも静かというか、無音なのだ。いくら攻撃しても無音。宇宙空間で戦闘しているならリアリティもあるというものだが、あいにくそういう設定ではない。明日は効果音まわりの実装に着手することにしよう。
外装問題もギリギリのところでどうにかなった。いよいよラストスパートである。
この日が最終日になるはずである。少し早めの時間から作業を開始する。
まずは前日の課題となっていた効果音。フリー素材サイトから良い感じの音をもらってきて、タイミングよく鳴らすためのプログラミングを行う。こちらは2時間ほどで終了した。
最後に残ったのは、外装の組み上げと電気回路の配線だ。
完成した。しかもピッタリ予定どおりである。正味50時間以上かけて出力した外装はつややかで美しく、対戦中に鳴る「ピッピッピ」という8bitサウンドは耳に心地よい。いいものができた。
かかったのは5日間、作業時間にすると約22時間であった。友だちよ、これが私の一週間の仕事である。
せっかくなので、対人戦をやってみたい。家で転がっていた妻を起こして、いっちょデュエルと洒落こもうじゃないか。
「しかしあれだねえ」と嘆息しながら妻は言った。「この対戦、全然面白くないな」
核心を突かれてしまった。(うすうす気付いてはいたが)対戦に戦略性がなさすぎて、両者ともただポチポチするだけで終わってしまうのだ。楽しさが最高潮を迎えるのは、カードを読み込ませてステータスが表示される瞬間である。そのあとは消化試合の雰囲気すら漂う。
数字だけを見て楽しむのは、かなりの想像力を必要とする。このゲームを本格的に作るとしたら、きっと読み込ませたカードに応じてキャラクターが自動生成されて、戦闘にも派手なアニメーションが付くだろう。現代人は、リッチな表現に慣れすぎてしまった。
とは言え、一週間かけて作ったゲーム機には愛着がわいている。誰が何と言おうと、私はこう思うのだ。いいものができたと。
今回は非接触ICカードを使ったけれど、時流に乗るなら「QRコードバトラー」も楽しそうだ。調べてみると、スマホアプリは出ているみたいだけど、ゲーム機まで自作した人はまだいないようである。……作るか。
▽デイリーポータルZトップへ | ||
▲デイリーポータルZトップへ |
良い景色を前にして踊ろう (大北栄人) (02.11 11:00)
非接触ICカードで戦う「バーコードバトラー」風ゲーム機を即興で作ってみた (斎藤公輔(NEKOPLA)) (02.11 11:00)
ドイツのガチャガチャはやさぐれている (ライスマウンテン) (02.10 16:00)
台湾の石門金剛宮で地獄を楽しむ (玉置標本) (02.10 11:00)
麻婆ナスの素は、麻婆豆腐の素の2倍濃い (北向ハナウタ) (02.10 11:00)
法枠工の崖をワッフルで作ろう (古賀及子) (02.09 16:00)
書き出し小説大賞第184回秀作発表 (天久聖一) (02.09 11:00)
1月の記事ベスト5発表!~新幹線の駅に置き去り・「もうおいしそー」料理 (デイリーポータルZ編集部) (02.09 11:00)
今週の記事まるっと3行まとめ(1/30~2/5) (デイリーポータルZ編集部) (02.08 16:00)
シウマイ弁当は冷たいままが美味い ~パリッコさんに聞きました~ (デイリーポータルZ編集部) (02.08 11:00)
土曜のお便り 〜チンアナゴは地中の体が大きいので窮屈で大変 (トルー) (02.08 11:00)
カツ丼は余暇の料理 ~トルーさんインタビュー (デイリーポータルZ編集部) (02.08 11:00)
金田一少年フローチャート・新聞のコラムみたいにうまいこと言う~自由ポータルZ (デイリーポータルZ編集部) (02.07 16:00)
季節はチョコレート~チョコレートを楽しみたいときに読む記事まとめ (デイリーポータルZ編集部) (02.07 13:00)
沖縄の食堂にある「煮付け」とはどんなメニューなのか (DEEokinawa) (02.07 11:00)
ネズミ年なのでネズミの丸焼きとネズミのアイスをクイに行く (地主恵亮) (02.07 11:00)
ウィーンから片道1万円で極夜の北極圏に行く (Satoru) (02.06 16:00)
東京の無人駅をめぐる (ネッシーあやこ) (02.06 11:00)
16年クリアできなかったゲームをクリアする (ぬっきぃ) (02.06 11:00)
山に登るなら『隠れピークハント』をしてみよう (松本圭司) (02.05 16:00)
食べ放題で人は何円分くらいどれくらいの量を食べているのか (デイリーポータルZ編集部) (02.05 16:00)
有名人の名前について知っていることを語る会 (西村まさゆき) (02.05 11:00)
懐かしの英字新聞柄シャツを思い出し、日本語新聞柄シャツも作ってみた (北村ヂン) (02.05 11:00)
海鮮丼を求めて早朝の市場へ行く~東急沿線さんぽ (江ノ島茂道) (02.04 16:00)
高カカオチョコレートのカカオの割合が細かくてエレガント (トルー) (02.04 11:00)
採掘中の現役鉱山は映画の世界だった (岡本智博(オカモトラボ)) (02.04 11:00)
寒くなるかは、ジェット気流のエアカーテン次第!?〜2月の天気〜 (増田雅昭) (02.03 19:00)
大豆より殺傷力の高い節分豆をさがす (高瀬雄一郎) (02.03 11:00)
“あの”フライドチキン味ふりかけでコンビニチキンをあの味に (パリッコ) (02.03 11:00)
鶴見川流域はバク~ストへぇ綱島編後半の見どころ (プープーテレビ) (02.02 16:00)
広告募集 広告募集
今日のみどころ
[2/11] 先週まで「来週火曜は休みだから」と思って入念なスケジュール調整をしていたはずなのですが、週末のうちにすっかり忘れてしまい、月曜の昼に気づいて「明日休みじゃん!!」と声を上げてしまいました。前日に気づくの、祝日の醍醐味です。(石川)
良い景色を前にして踊ろう
非接触ICカードで戦う「バーコードバトラー」風ゲーム機を即興で作ってみた
▶今週末、2/15~16は、ものづくりの祭典Maker Faire@つくば!デカ顔、記事で作った工作展示、ヘボコンもあります。
特集 | 2020年: | 1月 | 2月 |
2019年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
2018年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
2017年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
2016年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
2015年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
2014年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
2013年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
2012年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
2011年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
2010年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
2009年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
2008年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
2007年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
2006年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
2005年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
2004年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
2003年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
2002年: | 9月以前のふろく|10月:狩 |11月:冬 |12月:夜 | |
コネタ | 2006年: | 1月|2月|3月 |
1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | ||
2004年: | 7月|8月|9月|10月|11月|12月 | |
※「コネタ」は2006年4月から「特集」と同じ扱いになりました。 |
良い景色を前にして踊ろう (大北栄人) (02.11 11:00)
非接触ICカードで戦う「バーコードバトラー」風ゲーム機を即興で作ってみた (斎藤公輔(NEKOPLA)) (02.11 11:00)
ドイツのガチャガチャはやさぐれている (ライスマウンテン) (02.10 16:00)
台湾の石門金剛宮で地獄を楽しむ (玉置標本) (02.10 11:00)
麻婆ナスの素は、麻婆豆腐の素の2倍濃い (北向ハナウタ) (02.10 11:00)
法枠工の崖をワッフルで作ろう (古賀及子) (02.09 16:00)
書き出し小説大賞第184回秀作発表 (天久聖一) (02.09 11:00)
1月の記事ベスト5発表!~新幹線の駅に置き去り・「もうおいしそー」料理 (デイリーポータルZ編集部) (02.09 11:00)
今週の記事まるっと3行まとめ(1/30~2/5) (デイリーポータルZ編集部) (02.08 16:00)
シウマイ弁当は冷たいままが美味い ~パリッコさんに聞きました~ (デイリーポータルZ編集部) (02.08 11:00)
土曜のお便り 〜チンアナゴは地中の体が大きいので窮屈で大変 (トルー) (02.08 11:00)
カツ丼は余暇の料理 ~トルーさんインタビュー (デイリーポータルZ編集部) (02.08 11:00)
金田一少年フローチャート・新聞のコラムみたいにうまいこと言う~自由ポータルZ (デイリーポータルZ編集部) (02.07 16:00)
季節はチョコレート~チョコレートを楽しみたいときに読む記事まとめ (デイリーポータルZ編集部) (02.07 13:00)
沖縄の食堂にある「煮付け」とはどんなメニューなのか (DEEokinawa) (02.07 11:00)
ネズミ年なのでネズミの丸焼きとネズミのアイスをクイに行く (地主恵亮) (02.07 11:00)
ウィーンから片道1万円で極夜の北極圏に行く (Satoru) (02.06 16:00)
東京の無人駅をめぐる (ネッシーあやこ) (02.06 11:00)
16年クリアできなかったゲームをクリアする (ぬっきぃ) (02.06 11:00)
山に登るなら『隠れピークハント』をしてみよう (松本圭司) (02.05 16:00)
食べ放題で人は何円分くらいどれくらいの量を食べているのか (デイリーポータルZ編集部) (02.05 16:00)
有名人の名前について知っていることを語る会 (西村まさゆき) (02.05 11:00)
懐かしの英字新聞柄シャツを思い出し、日本語新聞柄シャツも作ってみた (北村ヂン) (02.05 11:00)
海鮮丼を求めて早朝の市場へ行く~東急沿線さんぽ (江ノ島茂道) (02.04 16:00)
高カカオチョコレートのカカオの割合が細かくてエレガント (トルー) (02.04 11:00)
採掘中の現役鉱山は映画の世界だった (岡本智博(オカモトラボ)) (02.04 11:00)
寒くなるかは、ジェット気流のエアカーテン次第!?〜2月の天気〜 (増田雅昭) (02.03 19:00)
大豆より殺傷力の高い節分豆をさがす (高瀬雄一郎) (02.03 11:00)
“あの”フライドチキン味ふりかけでコンビニチキンをあの味に (パリッコ) (02.03 11:00)
鶴見川流域はバク~ストへぇ綱島編後半の見どころ (プープーテレビ) (02.02 16:00)
広告募集 広告募集