satofumi 2022/09/27 20:00

NPC をコーディングして領地運営するゲーム開発(冒険者パーティのダンジョン探索について)

このゲームの主な要素である「収集」「加工」「探索」「防衛」のうち、今回は冒険者パーティを編成してダンジョンの敵を倒す「探索」について解説します。

探索の役割

探索とは4人までのキャラクターを編成して、敵が待ち受けるダンジョンを探索させる機能です。ゲームはなるべくシンプルにしたいので、冒険者パーティは1つしか作れないようにします。


戦闘はダンジョンを攻略するか冒険者パーティが全滅するまで自動進行します。

冒険者パーティにキャラクターを追加して探索させるスクリプト

   -- キャラクターを冒険者パーティに追加する。
   local party = Party:new(edict)
   party:assign(swordsman)
   party:assign(spearman)

   while true do
      -- 最も近いダンジョンを検索させる。
      local dungeons = world:dungeons()
      if #dungeons <= 0 then
         break
      end
      local dungeon = dungeons[1]

      -- ダンジョンを探索させる。
      -- メンバー全員が集合して探索が開始されるまでブロックされる。
      -- メンバーは集合する前に装備を変更したり体力を回復したりできる。
      party:explore(dungeon)
   end

探索の目的は、運搬とクラフトだけだと地味になりがちなゲームに「ダンジョンを攻略する」というわかりやすい目標を追加することだったり、「戦闘シーンは見ていて楽しいよね」という意味合いがあります。

どんな展開になるか

ダンジョン攻略では複数の敵グループと戦闘して、最後の敵を倒すとダンジョンが解放されるようにします。ダンジョンは鉱山や森林の上にあって、解放することでそこから資源を収集できるようになります。

また、探索についてはダンジョン攻略に失敗してもキャラクターやアイテムのロストはなくし、がんがん冒険者を出撃させられるようにします。

そしてダンジョン攻略のためにより強い装備品のクラフトを目指したり、冒険者強化のために高価な料理の作成を目指すことがプレイヤーの目標になることを狙っています。

まとめと今後の予定

今回は「探索」要素である、冒険者パーティを編成してダンジョン探索するあたりについて記述しました。戦闘についてはスキル要素の追加も検討しており、また内容が確定したら記事にしていくつもりです。次回は最後のメイン要素であるタワーディフェンス要素の「防衛」について解説します。

月別アーカイブ

限定特典から探す

記事を検索