月別アーカイブ: 2018年5月

タワーディフェンスゲームを作る(24)

今回は、ユニットが倒されたときのエフェクトを Partical System で作成して適用しました。

あとは、ステージをどこまでクリアしたかとかの情報を保存するあたりを実装しました。次は OP とか、チュートリアルとかのシーン再生まわりを実装したいです。

いい感じです。

タワーディフェンスゲームを作る(23)

心の赴くままに色んなプロジェクトを実装していくはずが、気づけばタワーディフェンスしか作ってないのに気づきました。気にせず実装していこうと思います。

今回は、ゲームが起動直後に動作するシーンとか、そういうシステムまわりを実装していきます。

その前に、実装前に書いて実装しながら更新しているゲーム仕様を公開しました。ときどき更新する予定です。
http://hyakuren-soft.sakura.ne.jp/query_defense/document/

何を開発するにしても、仕様書がないとなんか落ち着かないので書いてます。頭のなかでぼんやりと考えたことを仕様所に書きながら整理するのが好きです。

それはそれとして、ゲーム作成前に書いた仕様は、あんだけ悩んだのに現実に即してなくてどうかと思うね。自分で書いたんだけど。

えっと、ゲーム開始直後にシーンを操作するあたりを Unity で実装しようと思ったんだけど、シーンまわりの仕様を書いてたらよい時刻になったので、今日はこれで終わりにします。

実装はできなかったけど、仕様を書くのも大事なのでオッケーです。
いい感じです。

タワーディフェンスゲームを作る(22)

今日は仕事で疲れたので軽めのタスクに着手して終わりにします。ちょっとでもいいので進捗があるのは大事だと思います。

で、今日は「みかんポイント」を画面に表示しようと思います。みかんポイントとは、ユニットを新規に配置したりアップグレードするのに使います。1秒に1ポイント増えるし、その兵舎を初めて占拠したときに 40 ポイントくらい配置しようと思います。

そして、できたのがこれです。

みかんのアイコンは真面目に作ると大変そうなので、みかん色の丸にしました。後で置き換えます。

それから、実際に着手してみたら他の実装も気になってしまって、他のタスクも片付いたりしました。なんというか、着手するの大事だと改めて思いました。

いい感じです。

タワーディフェンスゲームを作る(21)

今回はゲーム開始直後から最初のゲームまでの流れをどうしたいかとかをノートに書き出しました。キャラクターのセリフとかを書き出してみるとよくわかるのですが、私には「シナリオ作成パワー」が不足しています。
とはいえ、今の自分にできることをするしかないです。

さて、シナリオ作成とかは引き続くやるとして、未実装だったドラゴンブレスによる攻撃のあたりを実装しました。

いい感じです。

タワーディフェンスゲームを作る(20)

ゲームシステムのエフェクト以外を実装したので、マップの作成を開始した。
具体的には Tiled Map Editor でマップ作成をするために、タイルセットを作成するのと、Tiled Map Editor の保存データをこのゲーム用のデータフォーマットに変換するスクリプトを作ります。

で、できたタイルセットがこれです。

このゲームでは高低差があるマップを表現したかったので、タイルセットに高さを示す数値を書き込んで、それで高低差を実現することにしました。

Tiled Map Editor が出力する tmx ファイルは見ればわかるフォーマットなので、Python スクリプトを作って自分のゲーム用のデータに高さを使うようにした上で変換しました。

あとは、ゲームで使う画像をカラーから白黒にしたかったので、これも Python スクリプトで作成しました。

このスクリプトは下記サイトのものを参考にしました。

https://qiita.com/gigegige/items/aad577f49cf4f203f03d

ここまででマップ作成もエディタでできるようになったので、ゲーム起動からゲームまでの流れとか、ストーリーとかを考えようと思います。

いい感じです。

タワーディフェンスゲームを作る(19)

前回まででユニットの移動や攻撃、スキルの実装は終わったのでエフェクトをいくつか実装しました。
今回は、ソーサラーとヒーラーのエフェクトの作りました。

ソーサラーの炎の球は、Unity Tutorial の 4_Fire を改造して使っています。この炎だけ出来がよくて生々しいので、そのうち作り直したいと思います。もっとファンシーな炎にしたいです。
次回はステージ作成をしたいです。

いい感じです。

タワーディフェンスゲームを作る(18)

今回は、味方ユニットのスキルを実装しました。各ユニットに2種類のスキルがあって、3段階のアップグレードができます。

スキルは、こんな感じです。

  • 剣士
    • 通常攻撃に魔法攻撃が付与される。
    • 物理防御、魔法防御が上がる。
  • 戦士
    • 攻撃した対象の周囲の敵にスプラッシュダメージを与える。
    • 自分の体力が回復するようになる。
  • 盗賊
    • 攻撃が N 回の攻撃ごとにクリティカルする。
    • 敵からの攻撃を N 回ごとに回避する。
  • アーチャー
    • 攻撃頻度が上がる。
    • 攻撃した対象の物理防御がしばらく下がる。
  • スナイパー
    • 攻撃が  N 回ごとにクリティカルする。
    • 攻撃した対象の移動速度がしばらく下がる。
  • ソーサラー
    • 魔法攻撃力が上がる。
    • 攻撃が N 回ごとにファイアウォールを発生させる。
  • ヒーラー
    • 回復量が増える。
    • ヒール毎に周囲のアンデットにダメージを与える。

ただ、エフェクトの実装がまだです。
とりあえず、ファイアフォールのエフェクトだけ適用しました。

こういったエフェクトは順に実装していくとして、エフェクト以外の実装が終わったので、ステージ作成とパラメータ調整に入る段階になりました。
次回は、Tiled Map Editor を使ったステージ作成をしたいと思います。

いい感じです。

タワーディフェンスゲームを作る(17)

前回に実装したこと。

  • ユニットが取り除けるようになった。
  • 矢、魔法の弾が途中で急に消えないようにした。

そして、今回はユニットのアップグレードを実装したいと思っている。
具体的には各味方ユニットに3段階の強化ができるスキルを2つ持たせます。

とりあえずスキルのアップグレードを指示できるようにしたのがこれ。
ユニットを表示している枠がボタンになっていて、それを押すと真ん中のくまクエリちゃんの表示になるし、この状態で上にはみ出てるボタンを押すとスキルの段階が2になる。
なんだろな、この説明を書いててわかりにくいので、この操作 UI はいつか変更すると思う。

まぁ、とりあえずこれで進めようとおもう。とりあえずでいいから進めるの大事。

いい感じです。

 

タワーディフェンスゲームを作る(16)

昨日にクリアした “Doki Doki Literature Club!” が私の心をぎゅっと押し付けてきて気分が沈みがちですが、がんばります。

今日は「また今度やるわ」と思って後回しにしていたタスクを片付けていきます。タスク管理のページはこんな感じです。

で、細かなチケットを修正した後のチャートがこれです。

いくつかのチケットを実装し、「これは実装しなくていいや」と思ったチケットをリジェクトしたことで、総チケット数(オレンジ色の戦)も減っています。

細かい内容は省略しますけど、放置していたバグや修正を実装できて気分が晴れやかになりました。放置しているチケットは贅肉と同じなのかもしれないな、と思いました。

いい感じです。

タワーディフェンスゲームを作る(15)

今回は今まで放置してきたチケットを片付けたいと思います。
具体的には

  • タワーにユニットを配置するときに影響範囲を描画する。
  • ユニット選択のマーカーまわりを作り直す。
  • ユニットの移動経路を表示する。

です。

で、移動経路の作り直し以外は実装できました。
タワーの射程の表示は、地形の高低差があると表示が隠れるけれども、とりあえずはこの実装でいこうと思います。

いい感じです。