【24sec】紹介動画を作りました
ゲームの形がある程度のまとまりを持ったので、
紹介動画を作りました。
▼紹介動画
▼ニコニコ
【24sec】リアルタイムなカードバトルゲーム【自作ゲーム紹介】 ‐ ニコニコ動画:GINZA
これで自分を盛り上げつつ、いま一番苦労しているネットワーク部分をなんとか進めたいと思います。
そのほか、前回からの変更点として、エンチャントを完成させました。当初の予定と少し変え、同じ効果に強弱2種ではなく、基礎ステータスに変化をもたらすStem Enchant と、特殊な効果をもたらす Aura Enchant の2種類で、組み合わせ可能にしてみました。
▼Duel Sevenで相手にEnchantが付与された状態
これで、相手の司令官、1枚目のカード、エンチャントを睨みながら、勝負するか降りるか悩んでもらう感じにできました。
▼エンチャントの例
24sec 対戦モードの基本を整備しました
今回は対戦モードを整えた。対戦は、ほかのプレイヤーがAI付きのデッキをサーバに登録したものを読み込んで戦う感じです。まだサーバ連携の部分は勉強中で、今回はさまざまなデータと文字列の変換の仕組みを作った上で、ダミーのプレイヤー文字列を読み込んで対戦させている。
▼ニコニコ
http://www.nicovideo.jp/watch/sm26313217
今回作成したDuel Sevenという対戦モードでは、プレイヤーは他のプレイヤーが作ったAIデッキと連続7回まで戦うことができ、1回戦ごとに報酬がどんどん増えていく。ただし、途中で敗北するとそれまでにプールされた報酬は全部パーになってしまう。また、4回戦以降は「エンチャント」という敵側に有利な仕組みが働き、闘いの引き際に悩みながらプレイする感じだ。
エンチャントの実装はまだだけど、最初に実装を目指すものはこんな感じ。
Enchans | 効果 弱(強) |
Lightning Storm | 自分が召喚するたびに雷撃1(2)が発生 |
Stone Body | 恒常的に防衛2(4)を持つ |
Great Hero | 恒常的に英雄 4(8)を持つ |
Massive Power | 恒常的にDPS 3(6)を持つ |
Heart Breaker | プレイヤーがKOされた時、HPが最大値の80% (60%)までしか回復しない |
Big Star | 最初から星 1(2)を持つ |
エンチャントは、4-5回戦で効果弱、6-7回戦は効果強になる予定。
ただ、サーバ連携の部分がまだ全然わかってないので、いったんそちらに着手し、その後にまた進めてみたいと思う。
セーブ機能をつけました、が……【24sec】
アセットのEasySave2を使って、
セーブ機能をついに実装しました。
ただ、
実験的に、ほんのちょっと変えたデータを
再アップロードしたら前のプレイはきれいに消失。
すなわち更新する度にリセットされる仕様のため、
あまり大っぴらに「セーブできますよ」とオススメ出来ない状態。
なんとかせねば。
▼ウェブアップローダーでプレイできます
24sec [Real Time TCG] | UnityGameUploader
- - - - - - - 追記 15.05.04 - - - - - - - - - -
なんで、更新するとデータを維持できないのか。
知識ゼロのド素人なのでよくわからないが、どうやらこういうことらしい。
(1)EasySave2はUnityWebPlayerのPlayerPrefという物に保存する
要するにWebPlayerのとき、保管場所はそのソフトに紐付いた一時的保管所になるということらしい(?)。確かにデスクトップで遊ぶ用にスタンドアローンでビルドしたゲームは、更新版を開いてもきちんとデータが引き継がれている。
ところがウェブ用にゲームをまるごとアップロードし直せば、別物として扱われてしまうようだ。完結したゲームなら、それでも最終版だけ独立して保存できれば問題ないが、だんだん後から中身を追加したい場合は、これでは困る。
(2)オンラインに保管することが対策になる?
Saving and Loading from Web | Moodkie Docs
EasySave2の公式サイトを見ると、オンライン保存用のサーバが容易されているらしい。これはたぶん、とっても親切なサービスなのだろう。でも、「phpとsqlファイルのセットアップ」とか、僕にはまったく意味がわからない。データ管理とセキュリティに関連したファイル形式か何か、かな? ので、まずはこの知識の壁を乗り越える必要が出てきた。うーん。
- - - - - - - 追記 15.05.16 - - - - - - - - - -
アホだった!
なんと簡単なこと! ついファイル管理のクセのまま、毎回ファイル名を変えているのが原因だった! そりゃ別ファイル扱いになるわ。別だもん。
というわけでアップロードするファイルを同じ名前にすれば、アップロードしてもデータは保持されることを確認。めでたしめでたし!
ひさびさに更新 細かいこと作りこみました【24sec】
仕事の関係もあって、1ヶ月ぶりの更新をしました。
仕事が忙しかったということだけでなく、ミッションの敵デッキやAIなどを調整、雰囲気だけのストーリーを作るのに時間がかかりました(この辺、大切だけど報告するインパクトが弱い)
ざっと報告です。
▼ミッション選択画面で敵司令官の情報が出るようにしました
なんでもないことですが、一応、ちょっと便利になったので。
▼バトル中に司令官とカード情報が見れるようにしました
このブログでコメントにて指摘くださった点を反映しました。バトル中にカードや司令官のインフォメーションを開くと一時停止(PAUSE)をかけた扱いになるので、得点ボーナスの「PAUSEをかけない(+50pt)」は取得できなくなります。この辺の設定は、24秒間の緊張を(あまり押し付けではない範囲で)守りたいなという意図です。
そのほか、第2カードセット「SkyFort」のミッションを揃えるなどし、敵AIも(ほどほどに)強化しました。
▼ニコニコ動画の更新報告
【自作ゲーム】リアルタイムなカードバトルゲームその8【unity制作中】 ‐ ニコニコ動画:GINZA
▼以下から実際にプレイしていただけます
いつものようにUnityGameUploaderを更新しました。ウェブプレイヤーを導入し、ブロック解除すれば遊べます。でも、ChromeだとUnityWebPlayerで使用するAPIに対応しなくなったらしく、設定解除が必要です。
24sec [Real Time TCG] | UnityGameUploader
※Chromeの件の詳細
「Google Chrome 42」でNPAPIが無効化。Unity Web Player/Silverlight/Lyncなどに影響 - 窓の杜
exe版も再びfirestorageにアップしました
ぜひ、よろしければお試しください。
AI作成機能を追加してウェブ更新しました【24sec】
ウェブ版を更新しました。と、した直後にさっそく、ちょっとしたバグを見つけてしまいました。ショック。でも、致命的ではないので次のアップロードで直します。
▼今回の作業(ニコニコ)
【自作ゲーム】リアルタイムなカードバトルゲームその7【unity制作中】 ‐ ニコニコ動画:GINZA
▼AI作成機能を搭載
AI作成機能をつけました。24秒間の中で、いつ、どのカードを出すか決めておく感じです。プログラムの面で、今回はわからないことが多く、とにかくいろいろ苦労しました。
▼AIを少し賢くするためのカスタマイズが可能
カードを出すタイミングは時間設定に加えて、ふたつまで補正条件を作れます。たとえば、このキメラ知性体の場合……
・基本19.5秒のときに召喚を試みます(場がいっぱいなど出せない状況なら、以降毎フレーム召喚を試みます)
・同じ時刻で複数のカードが召喚候補ならば優先順位の高いものから順番に召喚を試みます
・補正条件1は、敵の総合DPSが20以上なら召喚時刻が+3秒(3秒早く出る)
・補正条件2は、敵の場に1体もいないときは召喚時刻が-3秒(3秒遅くなる)
(条件1と2が両方満たされるときは+3-3で補正0秒になります)
という感じです。
▼以下から実際にプレイしていただけます
いつものようにUnityGameUploaderを更新しました。ウェブプレイヤーを導入し、ブロック解除すれば遊べます。
http://unitygameuploader.jpn.org/game/3935.html
また、UnityGameUploaderはいろいろわかりづらい部分もあるようなので、以前のようにzipのデスクトップ版もアップロードしました。
ぜひ、よろしければお試しください。
※ブログがコメント承認制になっていることに気づかなかったので直しました。
ウェブアップロード更新しました【24sec】
いくつかの機能を付け加え、ウェブプレイヤーを更新しました。
前回と同じく、リンク先でプレイできます。
▼Unity Game Uploader(たぶんウェブプレイヤーのブロック解除が必要)
24sec [Real Time TCG] | UnityGameUploader
ついでに、今日の更新内容はこんな感じ。
▼ゲーム解説を、少し掘り下げる「ヒント」を追加
6項目のゲーム説明に対応した形で、6つのヒントを作りました。Aim機能のことなど、きっと少し具体的に言わないとわかりづらいだろうなと思っていたので、そのあたりの活用方法を明確にした感じです。
▼デッキ作成画面にフィルタ機能を追加
検索をしてみると、自分でも「ああ、まだこの組み合わせのカード作ってなかったか」など、エクセルで管理してたけど、気付いていなかったことも多々ありました。画面で一望した方が頭に入ってきやすいんですかね。
▼エフェクトと購入の時間制限追加
いろいろ細かい微修正に加え、時間制限を追加。安価なPhoton型カードパックの購入には、一定期間のインターバルが必要な設定を実装しました。この辺は、現在未実装のセーブ機能が働きだすと、少しまともになる感じです。
そんな感じで、ぜひお試しください。
BGMと効果音をつけた【24sec】
今回はBGMと効果音をつけました。
プログラムの作業としてはそれほど大きな時間はかからなかったのだけど、BGMも効果音も、音源探しと選び出しに時間かかりましたね。あと圧縮とか。
メモ事項としては、いつかアプリにするつもりなら、BGMはmp3形式ではなく、ogg形式にしようってことです。mp3は5000ダウンロードを超えるとライセンス料金が発生するそうで。
BGMなら、たいていの音源はmp3形式で流通していると思うので、変換する。でも、BGMは入手元が違えば、音量がかなりバラつくので、変換する前に、音量調整をしておくのも大切です。oggに変換した後だと、これは難しくなるので、変換前に適当なソフトを拾ってやっておくこと。これは大切ですね。
▼参考URL
ゲームサウンドの容量を減らすには (mp3の利用に注意)
無料MP3音量調整ソフト一覧 (音量調整しておこう)
http://media.io/ (mp3をoggにオンライン変換できる)
▼今回の作業 YouTube
【自作ゲーム】リアルタイムなカードバトルゲームその4【unity制作中】 ‐ ニコニコ動画:GINZA