NPC をコーディングして領地経営するゲーム開発(食事と仕事によるパラメータ上昇)
※ 毎週金曜日に投稿していましたが、12/1 ぶんの投稿は普通に忘れていました。1日遅れの投稿になります。
今回の記事では、製品版について未実装の内容を確認して実装していきます。
未実装の機能やタスク
- 食事や労働で経験値が上がってパラメータが上昇する機能
- パラメータによって労働時間が短縮される機能
- 称号を獲得して特殊能力を得る機能
- フィールドの 3D 表示
- ランダムマップの生成
- 市場や倉庫などの建物の追加
- 作ったステージの Steam Workshop 共有
- 2,3章の会話を考えて記述する
- 戦闘時のエフェクト追加や見た目の調整
- UI の作り込み
まだまだタスクが残ってます。
やること
食事や労働で経験値を得て、能力が上昇するあたりに着手します。これは、生産が安定するとやることがなくなるので、経験値が得られる高価な食事(作るの大変)を作れるようにして「努力目標」を提供する狙いがあります。
食事を連続で行えないようにする
まず現状では空腹でなくても食事をすることができてしまうので、ある程度空腹にならないと食事できないようにします。
これはそういう条件を追加して、空腹でないときに食事をしたときにエラーメッセージをコンソール表示することにしました。
↓空腹でないときに食事したときのコンソール表示
よいです。
食事に経験値を定義する
食事に経験値を定義して、それが加算されるあたりを実装します。これは、アイテムの定義ファイルに経験値を定義します。
↓ アイテムの定義ファイルを編集して、ベイクドポテトに VIT の経験値情報を追加した。
よいです。
労働に経験値を定義する
労働をしたときにも経験値が入るようにします。たとえば「林業をすると STR に経験値が入る」とか「農業をすると VIT に経験値が入る」とかです。
↓ ワークの定義ファイルを編集して、VIT の経験値情報を追加した。
よいです。
この追加した情報を読み込めるような修正もしました。
経験値によってパラメータが上昇するようにする
経験値については、
- 経験値が増えたときのエフェクト描画がまだ
- パラメータごとの経験値を確認する方法がない
- 食事や労働でどれだけ経験値が増えるかを確認する方法がない
とかの課題がありますが後回しにします。
とりあえず、食事と労働で経験値が NPC に加算されるようにします。
まず、食事の際の経験値の追加は以前に実装していました。
よいです。
そして、ワーク完了時に経験値が入る仕組みを今回実装しました。
よいです。
ここまでの実装で経験値が加算されるはずなのですが、現状では NPC の経験値を確認する方法がないので、その方法の実装などは次回にやることにします。
まとめと今後の予定
製品版に向けてのタスクを確認して、食事とワークとで経験値が入る仕組みを未テストですが実装しました。
引き続き、今回の実装をテストするあたりか、条件を満たした NPC に付与される「称号」について仕様を決めたりを考えています。称号を得られると、なんかこう NPC がすごく強くなるようにしたいです。がんばります。