3.9K Views
June 03, 24
スライド概要
JPPGBゲームコンテスト#1 エントリー作品のご紹介資料です。
実装面はほぼ書いてないですが、なに作ろう~辿り着いた先についてをつづった読み物がメインです。最後にゲーム説明をちょこっとしています。
ぜひDLサイトからダウンロードして遊んでみてください!
https://koruneko.github.io/JPPGB-GameContest-1/
ゲーム紹介記事はこちら
https://youseibubu.com/apps/powerplatform_rpg_game_dx/
ぴーたの異世界大冒険 ~最後のDX~ JPPGB ゲーム作成コンテスト#1 2024/06 作:ヨウセイ
イベント 【JPPGB】ゲーム作成コンテスト #1 - connpass ゲーム公開ページ ゲーム作成コンテスト | Midnight theme (koruneko.github.io)
スポンサー企業様 (アルファベット順)
自己紹介 Microsoft MVP for Business Applications Power Apps , Power Automate ヨウセイ 一般職からSharePoint、C#系の技術者へ。そこからPower Platform技術者へ。 主にシステム開発や技術支援をやっています。得意分野は以下です。 Power Apps Power Automate キャンバスアプリ モデル駆動型アプリ Dataverse Power Pages Power Automate for desktop SharePoint
自己紹介 Microsoft認定: Power Platform Solution Architect Expert 他取得 EXAM:PL‐600、PL‐400、PL‐200、PL‐100、PL‐900 • BLOG:Power Apps Tips ログ (youseibubu.com) • YouTube:ヨウセイTube - Power Apps同好会 • X(旧Twitter):https://twitter.com /youseibubu • Qiita:https://qiita.com/youseibubu • Docswell:https://www.docswell.com /user/yousei
【JPPGB】ゲーム作成コンテスト#0 チャンピオン! 【JPPGB】ゲーム作成コンテスト #0 前回はパワスロを作って大賞・デザイン賞をいただきました! 【JPPGB】ゲーム作成コンテスト #0の 作品が公開されました! - コルネの進捗 や備忘録が記されたなにか (hatenablog.com) 【パワスロ】JPPGB ゲーム作成コンテ スト #0 パワスロで大賞ならびにデザイ ン賞をいただきました! | Power Apps Tips ログ (youseibubu.com) 記事からアプリのダウンロード (GitHubから)もできます
はじめに 前回#0(お試し企画)に参加させていただき約3年ぶりにゲームを作りました。 その経緯もあり、今回もチャレンジをいたしました。(約1年ぶり) もともと今回はサクッとしたものを作ろう!と思っていましたが、ネタがなかなか思 いつかず。。 思案しているうちに、逆転の発想でこれなら!?となり、その後もスリム化&サクッ と出来る思い付き機能追加をやったりして今回のゲームが完成しました。 今回、特に実装面のお話やゲーム内容の解説はあまり必要ないかと思うので、 せっかくなので完成に至った経緯を主に綴っていこうと思います。
ゲーム作成の経緯 なに作ろう?
なに作ろう? 前提: ・あんまり時間がない。。(申し込み時点で2週間なし) ※エントリー期間、提出期間も延長いただけたので助かった ・やはりパズル系か?・・ →そもそも数学が全然得意じゃない!他の方とも被りそう。。 ・ゲームといえば・・RPG!? →マップ移動する系は見るがそもそも壮大なゲーム作る時間 なんてないー!それにイベント中にやるの時間かかりすぎる。。
RPG要素多すぎ。。 RPGって考えたら、思い付いただけでもめちゃめちゃ要素があるよ。。 MAP移動するアプリをサクッと作られてるのは見たことあるが。。 ストーリー MAP (作成・移動) メインキャラ NPC(村人) バトル 武器・防具 アイテム 経験値・LV お金などの要素 敵キャラ ボス・ザコ
RPG要素多すぎ。。 あれ?バトルシーンって作られてるの見たことないな? (Power Appでのお話)
バトルシーンのみに絞ればイケる?? →バトルのみで経験値をためて武器防具を使ってボスを倒す系か?? ストーリー MAP (作成・移動) メインキャラ NPC(村人) バトル 武器・防具 アイテム 経験値・LV お金などの要素 敵キャラ ボス・ザコ
バトルシーンのみに絞ればイケる?? いやいやバトルの敵ってザコ、ボスを用意するのどんだけかかるん。汗 複数体出して選択するとか色々面倒すぎて期間内無理だろ。。汗 経験値、レベルはイケそうだけどそんな長いのやるだろか?汗 武器・防具もどんだけ用意するの。。アイテムは数種ならいけそうか。 →ん!?ならいっそ!? メインキャラ バトル 武器・防具 アイテム →素材と効果と判定と。。 →ちょっとなら 経験値・LV 敵キャラ →ボス、中ボス、ザコキャラ
バトルシーンのみに絞ればイケる?? ボスバトルだけにすればいいじゃん!! (後日談:いきなり大魔王!というタイトルを思い付いたが この辺りでなんとかいけるか 調べたらすでにあった ※ゲーム性は異なる) と思いエントリー!
ボスバトルだけにしよう!!要素も削ろう →ボスだけにすれば敵は一体でいいぞ! →メインキャラ数は? →時間ないしうちのキャラの3体だ! →武器・防具はほんとは欲しいが廃止しよう(やむなし) →アイテムは数種だけにして共有にしよう(キャラごとは面倒) →ならLVは50くらいで固定すればいいか! 武器・防具 アイテム →3体 →なし →数種を共有 バトル 経験値・LV →ボスバトル →固定でいいか 敵キャラ メインキャラ →ボスだけにする!
キャラと職業 職業は。。 やはり、戦士、魔法使い、僧侶と、あとは遊び人とか召喚士とかか? キャラは。。 ぴーた君とぱわ代とパワ谷をパワポで加工してみて(パワポ素材で) 実はスリムなぱわ代(魔法使い)とパワ谷さん(僧侶)が出来たよ! メインキャラ →3体を戦士、魔法使い、僧侶、 遊び人などを用意するか
特技や魔法を 考えていたら。。
特技や魔法を考えていたら。。。 戦士も「たたかう」だけだとつまらんから特技とかほしいな。 魔法使いは多めに用意、僧侶系は回復とかバフ系(攻撃力アップなど) の要素もほしいな。 ん!?これ、Japan Power Platform Game Builders (JPPGB) ですよね?ならいっそ!?
特技や魔法を考えていたら。。。 スキルをPower Platformファミリーに したらオモロくないか??
特技や魔法を考えていたら。。。 戦士風 →Power Apps 魔法使い風 →Power Automate 僧侶風 →Power BI 召喚士風 →Copilot 実際の機能名ではなく雰囲気でそれっぽく作った 造語です。そのあたりご容赦くださいm(__)m おお!それっぽい技や魔法のアイディアが溢れ出てくるぞ!! →3キャラのスキルを選択できるようにしたら色んなパターンで遊んでもらえそう! →そうだ!召喚士系はまさしくCopilotやんか!足りないキャラはストック画像で! →そうだ!どうせならキャラ名やキャラ画像も変更できるようにしちゃおう!
ボスとのバランス、 LVを考えていたら
LVやボスバトルのバランスは。。 ・とりあえずはストック画像で用意しておいて。 →LV50固定ならバランスを相当調整しないと楽勝OR無理ゲーで 楽しくなさそうだな。。。 →そうだ!!挑戦レベルを選択できるようにしてLVに応じた ステータスで戦ってもらおう! →PRGでよくある「俺はこんな低いレベルでクリアしたぜ!」 自慢をコンセプトに持ってこよう!!
LVを下げてクリアを楽しむゲーム性! レベルを上げるのではなく、下げてクリアする逆転の発想だ! LV×ステータスのマッピング用意だけで済むしバランス調整もある程度で済むぜ! ※本当はもっと細かいレベル調整あるんでしょうがそれはそれで レベルを下げると難易 度が高くなる!
実装しながら色々調整
ターン判定や攻撃、オプション選択は? ・ターン判定は? →やはりタイマーで管理してターンを回す感じだろう ・動きは? →ターンが来たら動かす。攻撃食らったら動かすなどはタイマーで位置調整 ・エフェクトは? →以前お世話になったゲーム素材サイトでなんとかなるだろう。 最悪なしでもやむなし 今回のゲームは実装量 がまあまあ多くて面倒 ではありますが、数学 的知見がなくても出来 る内容ではあります!
攻撃バランスやターン制は? ・攻撃と防御のバランスってどうなっているのかな? →この辺のサイトに書いてあり色々あるようでした。そのうち一つをベースに採用 誰かに自慢できる!ダメージ計算式の簡単な話 - ハルのログ (hal-no-log.com) ・技や魔法、アイテム選択は? キャラに合わせたものを用意しておいて、ダイアログで出して選択。 決定したら情報を保持しておいて、ターンが来たときに発動させるなど (バリエーション多い点や各種状態の判定などが結構面倒でした汗)
想定をもとに作りながら調整していく ・データの用意 →定義はApp.Formulasで。 更新していくので、結果的にはコレクションや変数に格納して使う 最初は動きみるため仮で用意し、後半に色々要素を増やしていった感じ 最初はタイプとステータス、 コマンドメニュー位 後々、必要要素を色々追加 していった
想定をもとに作りながら調整していく ・ターン判定のタイマー →最初はループして順番来たら即実行としてたが、もろもろあり最終的に 最初に順番に行動指定して速度順(+ランダム要素)でターン来たら攻撃に変更 ・ターン判定用のタイマー(ほかのタイマーも絡めて調整) 後々死んだケースや倒したケース なんかを追加していった
想定をもとに作りながら調整していく ・攻撃、技などのタイマー →ターンが来たらオンにしOnTimerStartで技名を出し、動きやエフェクトの タイマーをオンにして平行で動かす →OnTimerEndでダメージやメッセージを調整して更新 →次のターンへ ・技系のタイマー 最初もっと汎用的な実装にしよ うと思ってたが時間もないので まずは動くように実装を進めま した。結果大体そのままですが、 動くからよし! (保守も引継ぎもしないしw)
想定をもとに作りながら調整していく ・ボスの攻撃やメッセージのタイマー →ボスの攻撃ターンが来たらランダムで攻撃させる(比率も付けて) →メッセージを出したあとの余韻が必要だったのでWait用のタイマーも追加 ・ボスの攻撃タイマー ・次に進む前にメッセージを見る時間が必要 なのでWait タイマーなど追加 後々倒した場合やゲーム オーバーなんかのパターン も追加
想定をもとに作りながら調整していく ・バフ効果の調整や状態判定などが面倒だった。汗 →攻撃力、防御力アップの要素は欲しかった!この辺の効果の判定を 後々に追加していったり。 ・死んだ場合の判定なんかも後々追加して調整していく ・遊んでみてバランス調整など まずは基本的な実装をやって動きを見 ていき、バフ効果や死んだらなどの調 整を後半に加えていった感じです。
ここへきて新たな コンセプトを思い付く
ここへきて新たなコンセプトを思い付く ん!? Power Platformスキルを駆使してボスを倒す?? →なら、DXやん! そうだ、最近はやりの異世界ものでDXで世界を救うんだ! →よしボスの技も調整しよう(ワラワラ) この辺は自分でアホだと思い ながらやってて面白くて、な んかのゾーンに入っていた
得意のセーブ機能も欲しい。。 パワスロで使ったSaveData、LoadDataで戦いの記録を残したい な。。 →これは経験あるのでせっかくだから実装しよう! 変更したキャラやクリアレベルなんかを残そう! ★そうだ!クリアしたら特典として ○○な機能も追加しよう! クリア特典はクリアして のお楽しみに!
エフェクトや背景、音楽などは ・背景 →こちらの素材を拝借しました! AIPICT | 背景イラストのフリー素材サイト ・エフェクト・加工 素材系は前回の経験を活かし スムーズに事が運びました! 公開いただいている皆さま 本当にありがとうございます! 出来れば最初からGIFで動きのあるがあれば。。→こちらの素材を拝借しました! Home | Materialforward (materialforwardvfx.wixsite.com) ・エフェクト音・BGM パワスロでもお世話になったこちらから拝借しました! 戦闘 | 無料 BGM・効果音のフリー音源素材 | Springin’ Sound Stock
タイマーや要素だらけにはなったけど ・タイマーだらけになった 最低限にして条件分岐で実装する想定だったが、Durationの変更調整などがうまく いかず(技の時はエフェクト長くしたかったり)→一つに条件詰め込みすぎてもよく わからなくなるし必要に応じて分けた。結果タイマーだらけだが動くからよし! ・キャラ要素のコントロール 最初ギャラリーで表現をしていたがUpdateした際に 画像がチラついてしまう。。 3体分の要素を用意、各変数用意してギャラリーと 連動させるなどで実装。 実装の綺麗さよりはゲームの快適さを優先だ!
ハマリ要素 ・大体できたのに。。 編集画面では想定通りになるのに、公開アプリではなぜか前画面で作ったコレクションの読み 込みされない。超遅いなどあり。 →おっかしいなーとハマったが、とにかく今動くように再調整して乗り越える ・最初の画面でBGMが自動で流れない。。 Xでもポストしたがブラウザの機能で急に音ならないように抑制されている ようでした。(スマホ版だと勝手になる) →スタートボタン画面を用意してその次から音が流れるように調整した。 ・最後にターン制の変更で地獄を垣間見た。。 根幹部分の調整のためいろんな箇所の再調整が必要になった。。
やっとゲーム紹介 お待たせしました。ゲーム画面の紹介です。 音楽鳴ります。不要な場合 簡単な操作のみご説明です。後はRPGのバトルです! はミュートください。 挑戦レベル:50以外に選択できます。 低いレベルでクリアにチャレンジ! キャラの名前とスキル、キャラ画像を 変更できます!あとテーマカラーも! ※セーブ機能である程度の数は残せま す!(エラーが出たら消して下さい) さあ、壮大な大冒険を始めてみましょう!
やっとゲーム紹介 いきなりボスバトルです!説明は不要ですね! ボスや様々なDX(技や魔法)は実際のアプリでお楽しみください! あきらめるで前画面へ戻れます ★たまに不具合があります! →選択したキャラが表示されない場合 があります。その時は「あきらめる」 で戻ってもう一度始めれば出ます。 キャラのステータス表示やスピード、バフ 状態を表示(一番最初だけ表示遅れる)
やっとゲーム紹介 いきなりボスバトルです!説明は不要ですね! ボスや様々なDX(技や魔法)は実際のアプリでお楽しみください! コマンドからアクションを選択 ・たたかう ・ぼうぎょ ・わざやまほう(スキルによる) ・アイテム(共通で使用。使える個 数は固定) わざやまほう、アイテムを選択する と選択画面が出ます。 対象選択するものはキャラ選択も。 情報アイコン(モダン)で説明も見 れます!
やっとゲーム紹介 キャラ特性 ・Power Apps :戦士風 (初期値:ぴーた) 特性:HP、攻撃、防御が高い。速度、MPは低い(魔力は使ってない) ・Power Automate:魔法使い風(初期値:ぱわ代) 特性:MP、魔力、速度が高い。HP、攻撃、防御は低い(攻撃は使ってない) ・Power BI:僧侶風(初期値:パワ谷) 特性:バランス型。サポート+回復系(おうぎは攻撃+魔力補正で調整) ・Copilot:召喚士風(初期値:ストック画像) 特性:バランス型。サポート+生成系(生成は攻撃+魔力補正で調整)
アイコン使用について • Power Platformのアイコン使用について 以下公式サイト上でトレーニング資料などのドキュメントなどでの利用は許可されています。が、 果たしてPower Appsのアプリ(ゲーム内)で使ってよいものなのか?→こちらについては日本 マイクロソフトの方へご確認し、今回のアプリについて利用の了承を得ております。 Microsoft Power Platform アイコン - Power Platform | Microsoft Learn
アプリ作成のまとめ ① 特定の要素に絞ればゲームは比較的作りやすい。そこに新たなゲーム性を生み 出すことも出来る!(バトル系は調整箇所多すぎなのでオススメせず汗) ② 作り始めて進めてみたら逆転の発想でアイデアが出ることも! ③ 綺麗な実装よりゲームの快適さ、楽しさを優先だ! ④ テスト十分に出来ずでバグがあるかもです。ご容赦ください。 実際にアプリで遊んでいただき 楽しんでいただければうれしいです! セーブ機能、クリア特典でさらに楽しんでください!!