Amazon画像に連動するローグライク「無念番付(PC版)」をUP

=前置き=

 珍しくGAE方面へのモチベが出てきたので、他のゲーム作成はひとまずお休みして「広告連動型のローグライク"無念番付"」のPC版を作ることにした。

=ゲームの解説=

http://healer-games.appspot.com/munen_banduke/index.html

  • ベースは普通のローグライクです
  • Flashの上のAmazon商品が一定周期で表示が変わります
  • 階層をまたいだ時点のAmazon商品の色に応じてアイテムが追加で配置されます
  • IEだとAmazon部分の表示が崩れるものの、個人では対応が面倒なので未修正です)

=ことの成り行き=

 元々は「Androidの無料ゲームにある広告は邪魔なんだけど、これをどうにか有効活用できないだろうか」というところから始まり、それへの一つの答として「"広告で一番多く使われている色"に応じてアイテムが追加でドロップするローグライクを作れば、広告への嫌悪感を減らしつつ降りるタイミングなどの戦略性も出てくる」というのがまとまった。そこで、以前から自分用に欲しかったスマホローグライクを作るついでにそういうギミックを付けてみた。

 ただ、その性質上、逆に「広告がないとゲームの機能を十分に楽しめない」という問題があった。特にこのゲームはAdobe Airで作っておりFlashでもだいたいの機能は動作するものの、広告を表示する肝心のStageWebViewはブラウザ上では機能しないためゲーム内に広告を表示することができず、広告の色を使うギミックも使えなかった。

 しかし、最近になってようやく「javascriptと連携すればPCの広告から色を持ってこれるのではないか」と気付き、モチベも維持できるようになったので今回の検証〜実装に至った次第。

=広告を使ったゲームの作り方=

 FlashAdobe Air)製のゲームで広告をギミックとして使う方法の簡単なメモ。

 スマホであればStageWebViewに広告を表示してそれをdrawViewPortToBitmapDataでBitmapDataに描き出すだけ。BitmapDataのサイズをWebViewに厳密に合わせないとエラーになることと、iOSだとこの方式で表示できる広告が少ない点以外はとてもラク

 しかしPC(ブラウザ)だとStageWebViewが使えないため、スマホの方式は使えない。また、いわゆる普通の「広告」はセキュリティの都合(iframe絡み)でアクセスできないため参照することができない。そのため「Amazonの商品画像」を使い、javascript経由でFlashに情報を渡してもらうのが妥当かと思う。ここらへんの詳細については技術的な話として別エントリにまとめる。

=予定=

 というわけで先月末までに1つゲームを作る予定だったが、PC版の無念番付を作っていた。前回のスマホゲームのUPからだいぶ間が開いてしまったので、次はまた新しいゲームの作成に戻るつもり。ただ、今回のようにモチベの方向によっては別の作業をしているかもしれない。なんにせよ、夏季休暇までには1つくらいは上げられると思う。