投稿記事

ゲーム案の記事 (10)

竹林ソフト 2023/10/22 20:00

「ずんだ餅ファイターズ、若菜色の旅立ち」の開発(ゲーム案)

以前に考えた ずんずんPJ の素材を使ったゲーム開発ですが、なんとなくイメージがまとまってきたのでゆっくり開発していきます。プロジェクト名は「ずんだ餅ファイターズ ~若菜色の旅立ち~」(仮)にします。

「ずんだ餅ファイターズ」だけだと単に意味がわからないので、より意味のわからない「若菜色の旅立ち」というフレーズを追加することで「ずんだ餅ファイターズ」という表現を疑問に思わないようにする高度な戦略ですね。

どういうゲームにするか

ずんだ餅を大量に生産する「生産パート」と異界からのモンスターを3姉妹がずんだ餅パワーで撃退する「撃退パート」からなるゲームです。この2つのパートはいつでも切り替えられるようにしたいです。

ここまで書いて「厳密に仕様を決めながら作る気分じゃないな」と思ったので、後は整合性を気にせずに書き出して終わりにします。

生産パート

すっごい雑に説明するとクッキークリッカーです。
ちょっと違うのは設備はもち米と枝豆を育てる「水田」「畑」と、それらを加工する「餅ファクトリー」「ずんだファクトリー」「ずんだ餅ファクトリー」の5種類です。
これらの建物の生産速度、生産量、備蓄量なんかをカード経由で購入してアップグレードしていきます。

少し特殊なルールとしては、加工しきれずに生産物を破棄すると撃退パートに出てくる敵が強くなって敵のドロップ量が多くなります。また、カードの購入にはお金と敵を倒した際に入手できる「素敵なサムシング」が必要なルールにします。

撃退パート

カードを購入して3姉妹を強化して、2D 画面で右から押し寄せてくる敵を撃退します。よくありそうな感じのゲームです。

この3姉妹用のカードの購入には、ずんだ餅が必要なルールにします。
あとは、敵が強くなりすぎたのに対処するために、敵拠点を攻撃しに行けるとかも考えています。

ゲームクリアとゲームオーバー

最長でも 20 分くらいでプレイが終わるようにする、かな…
まだ考えてないので、本当に実装し始めてしまって遊べるようになったらまた考えます。
ただ、ゲームプレイ後の感想が

  • 「あー、ちょっとしたミスで負けた」 ← プレイが悪くないと思えるようにする。
  • 「次はもっと上手くいきそう」 ← アンロックや恒久アップグレードを用意するなど。
  • 「こういうカード購入の組み合わせもあるのでは?」 ← 遊びの幅は広く!

になるような工夫は考えながら作成していきたいです。

まとめと今後の予定

気分転換に着手するための小さいゲーム案を考えてみました。考えた結果、小さいとは言えない規模になった気もしますが、そこは考えないことにします。

また、私の中の正論を言う私が「これ以上ゲーム開発のプロジェクトを増やしていいの?」と言っていて、それは間違いなく正しいのですが、ただ私は常に正しい行いができるほど賢くないので仕方がないなと思ったりしました。

このプロジェクトに注力するよりは、籠城ゲームを遊べるところまで作り込むとか、コーディングして領地経営するゲームのリリースに向けて残り作業を片付けるべき気もしているので、次回の予定は未定です。なんというか、ゲーム開発むつかしいな、と思います。がんばります。

竹林ソフト 2023/08/23 20:00

クラフトゲーム開発(物流のための UI をチェストに追加する)

最終的には、自キャラが探索エリアから資材満載で帰ってきたときに、ホームエリア入り口で拾ってきたアイテムをばらまくと、NPC が必要素材を取りに集まってくる、みたいなことをやりたいです。今回は、その仕組みの1つとして「このチェストはこのアイテムを要求している」というアイテムの要求情報をチェストに設定する UI を作ります。

チェストに要求アイテムを登録する UI の案

UI 要素としては、

  • 要求アイテムを選ぶためのボタンを押すと、大きなパネルが表示される。
  • タブでカテゴリごとに分類されている。食べ物、消耗品、装備とか。
  • カテゴリ内では、アイテムがアイコンでグリッド表示されていて、その中から選ぶ。

にします。
あと、要求 UI のついでに「このチェストからアイテムを運び出していいよ」という出荷を指定するチェックボックスも追加します。

実装したもの

とりあえず仮のボタンで最初のレイアウトを作ります。

次に、実際のボタンが C# のコードや YAML 定義のアイテム情報から生成されるようにします。

↓C# の enum で定義したカテゴリに基づいて Toggle をスクリプトで動的に作って配置したところ

そして、ボタンの方は全アイテムのボタンを並べておいて、今のカテゴリーに所属するボタンだけ SetActive(true) される実装にしました。

↓カテゴリの2つのボタンをそれぞれ押したときの動作

よいです。
アイテムのボタン(正確には Toggle)が押されたときに、ボタンが押されているとわかる枠の表示などの見た目の調整はまた次の機会にやります。

まとめと今後の予定

アイテム選択の UI を実装したので大変よいです。
次回はこのアイテム選択 UI をチェストに適用するあたりに着手していきます。がんばります。

竹林ソフト 2023/08/22 20:00

ねこ巫女籠城ゲーム開発(操作まわりの調整)

建築と防衛の最低限の実装ができたので、操作まわりで未実装になってたあたりを実装します。

実装したこと

操作キャラを切り替えたときに選択の枠も切り替わるようにする

ゲームの画面下にキャラ選択や操作のボタンがあって、操作キャラをキーボードの 1, 2, 3 キーで切り替えることはできていましたが、操作キャラの枠を切り替える処理が未実装だったので実装しました。

操作キャラを切り替えたときにカメラも切り替える

これは、3人いる操作キャラを切り替えたときに、切り替え元のカメラを無効にしてなかったのを修正したら動作するようになりました。よいです。

俯瞰カメラの位置姿勢がセーブされるようにする

セーブしてロードしたときに、カメラの位置姿勢が保存されるようにしました。
カメラの位置、オイラー角、ズーム値を保存するようにしました。

↓カメラ情報の保存を管理するクラス

↓実装後にカメラの位置姿勢を変えた保存後の読み込みが適切な様子

よいです。

マップ表示、俯瞰表示、三人称表示を切り替えるボタンを配置する

私は基本的にはキーボードだけで操作できればよい派なのですが、この開発では画面にもボタンを配置しようと思いました。ボタンがほしい人もいるので。あと、ボタンを用意すると、そのボタンにカーソルを合わせたときの Tooltip でショートカットを提示できるのはよいです。

そして実際にボタンを配置しようとして、画面全体の UI 配置を考えてなかったのに気付いたので決めます。

画面のどこに何を配置するか

  • 上: 住民の数とかの情報
  • 下: 操作ボタン
  • 左上: ゲームのクリア目標とかのメッセージ
  • 左下: だんだん消えるメッセージログ
  • 右下: カーソルを合わせた建物・ユニット情報の表示
  • 右上: ミニマップ、雑多なボタン

まぁ、基本的には Factorio を参考にします。そして、今回追加した視点変更のボタン3つがこれです。

この雑すぎる作業を「よい」と言い切れる自信がないですが、何も作業しないよりはましだと思います。ミニマップ表示するかどうか、とかを決めたらまた作業します。

マップ表示にキャラの位置を表示する

マップ表示に切り替えたときに、操作キャラや敵の位置も表示しようと思ったのですが、今回のやる気が尽きたので次の機会にやります。
「キャラの移動先を指示したときに(なるべく)キャラを直線に沿って移動させる」とか「日付とかを表示する UI を仮配置する」も次の機会にやります。

まとめと今後の予定

「これだけ着手するぞ!」と項目を書き出してみて、いくつかを後回しにしつつも操作キャラを切り替えたときのカメラ制御を適切にできたので大変よいです。今後も、開発中に操作してて「あー、これ未実装だったか」と繰り返し思ってしまう箇所は都度実装していきたいです。
次回は、敵が建物を攻撃したり避けて移動するあたりに着手しようと思います。がんばります。

竹林ソフト 2023/08/20 20:00

銃タレットやセンサのコーディングをして野良ゾンビを撃退するゲーム案

2D ゲームの PV を見ていて「これの銃の向きや射撃タイミングを Python スクリプトで制御するゲームどうじゃろ?」と思ったので、そういうゲームの案を列挙します。
今、NPC を Lua スクリプトでコーディングして領地経営するゲームを開発していますが、それの Python による銃タレット制御バージョンです。

ゲーム案

整合性を気にせずに書き出すと

  • なんか荒廃した世界でゾンビがいる。自キャラは昼に探索して夜に寝る。
    • 寝るときの防衛用の自動ゾンビ迎撃のガンタレットの制御プログラムを作るゲーム。
  • 見下ろし視点
  • 最初のステージでは、細い通路をゾンビがまれに歩いてくる。
    • 人感センサでゾンビを検出したら射撃するようなプログラムを作る。
  • 人感センサだけでなく、赤外線距離センサ、超音波センサ、カメラがあってもいい。
    • ゾンビを人感センサで検出できるのかは気にしない。
  • 銃の向きを変えるタレットも制御する。
  • 動きの早い敵がいて、偏差射撃が必要なようにする?
  • ビーコンを持ってる対象(自分)が撃たれない仕組みを作らせてもいい。
  • 熱線レーザー武器とバッテリー管理とか。
  • 複数の銃の管理とか。
  • 射撃前にカメラ撮影するのをクリア条件にできるようにするとか。

まぁ、テーマとしてはありだと思う。
ただ、課題を複雑にするとプレイヤーが苦しいと思うので、ステージの難易度をどうやって実現するかを決めるのは大変そう。

現実世界でよくある「用意したセンサのうちいくつかはなぜか動作しない」みたいな現実をつきつけるかは検討中。

「ゲームで Python の勉強をしよう」みたいな謳い文句を掲げてもいいとは思うものの、Python に触れる要因にはなっても習熟の要因にはならないと思うので、やりたくない。

まとめ

思いついたゲーム案を書き出してみました。ゲームシステムの実装方法は思いつくけど、どういうゲームにするかとか、どういう方向性にするかは時間をかけて考えます。そして、時間をかけて考えても「作るか」って気分だったら着手を検討します。

ただ現状は「開発プロジェクトを減らしてどれかの開発に注力すべきなのでは?」とすら思ってて、新規開発に着手しづらくて悩ましいです。

竹林ソフト 2023/04/16 20:00

筋トレ・ワンダーランド VR のゲーム案

実装するかどうかわからないゲーム案です。

どういうゲームをイメージしているのか

最近 "Plantera 2: Golden Acorn" というクリック収集放置ゲームを遊んで「こういう仕組みいいなぁ」と思ったのと "Sairento VR" というマルチプレイ可能な剣戟 VR ゲームを遊んで「なるほど」と思いました。
というわけで、クリッカーゲームを参考にしつつ、クリックする代わりに VR 空間内で筋トレするゲームの案を考えます。

ゲームについて考えたこと

  • 筋トレの動作を検出するために VR ゲームにする。
  • マルチプレイにすることで、みんなで筋トレできる。
    • みんなで筋トレすることに意味があるかは即答できない。
  • フィールドにコインを消費して筋トレ・マシーンを建築できる。
    • 筋トレ・マシーンごとに対応する筋トレが異なる。
    • 筋トレ・マシーンは定期的にコインを生成する。
  • 筋トレ・マシーンのエリア内で対応する筋トレを行うとコインの生成速度が上がる。
    • 上昇した生産速度は 48h くらいかけてゆっくりと下降する。
  • 応援してくれるキャラをコインで購入できる。
    • モデルはインポートできる。
  • マルチプレイ時のモデル共有をどうするかは後で考える。
    • 権利問題めんどいので、モデルはとりあえず共有できなくていい。

ここまでが基本要素です。

どうしたら楽しくなりそうか

このゲームがどうすれば楽しくなるかについては、そもそもなんでクリッカーゲームが楽しいのか問題があります。仮に「インフレ楽しい」「次に何を購入するのか考えるの楽しい」ということにします。

インフレ楽しい

今のところ「コインの生産速度が上がる」という要素はあります。で、楽しく思える最適な表現が即答できないんですけど、とりあえずコインを山のように積み上げて表現するとか、コイン風呂に入れて記念撮影できるとか、そういう方向を考えています。コインが触れ合う音が流れるのもよさそうです。

次に何を購入するのか考えるのが楽しい

これは少しむつかしくて、筋トレ・マシーンに投資するとコイン生成速度が上がる、という仕組みを提供するのはあると思います。ただ、どこかで実質的な上限があるなとは思います。

他に考えたこととしては

  • 飾りの建物を購入できて、フィールドに建築して装飾できるガーデニング要素
  • 敵が攻めてくるのを防ぐためにタレットやトラップを購入できる防衛要素

とかです。
詳しいことはまだ決めていません。

コインが生成されるのではなく、筋トレ・マシーンごとにアイテムが入手できてクラフトしていくシステムも可能そうです。

次に何を購入するか考える以外にも「今までにこれだけ筋トレしてきました」というチャート表示機能も良さそうだなと思いました。

まとめと今後の予定

とりあえず、ゲームについて考えたので書き出してみました。ただ、これ以上開発するゲームの種類を増やしていいものか悩ましいです。
1,2週間くらい経過してもこのアイディアが脳裏に残っているようなら、仕様をもう少し考えてみたり、要素デモを作ることを検討します。

実際に作るかどうかはわかりませんが、

「筋トレしてコインを貯めてコイン風呂で記念撮影しよう!」

みたいなノリは大好きです。もし作るとしたらこういうノリは大事にしたいです。がんばります。

1 2 »

月別アーカイブ

限定特典から探す

記事を検索