雑念日記

主に技術的なことをつらとらと(書ければいいな)。

DXRubyでローグライクゲーム その3

前回まで→ その1 その2

具体的な進捗は以下のような感じ。


  • モンスターに種族が指定可能になった
    • ゴースト系なので聖なる武器に弱い、などが可能になった
  • プレイヤーやモンスターに異常状態や特殊効果を付与可能になった
    • たとえば混乱
      • プレイヤー: 狙った方向に歩けない/攻撃できない
      • モンスター: スキル使用不可、ランダム歩行、同士討ち
  • 新アイテムの実装
    • 魔導書
      • 使うと自身やアイテム、部屋にいるモンスターなどに何らかの影響を及ぼす
    • リング
  • モンスターが使えるスキルの拡充
    • 投擲: 任意のアイテム(手裏剣や薬系)をプレイヤーに向かって投げる
    • 泥棒: プレイヤーの持つアイテムを盗む
    • ワープ: 自身がワープする、またはプレイヤーをワープさせる
    • ...etc
  • アイテムの拡充
    • 以下を新規実装した(まだまだ追加する予定)
    • 武器系
    • 盾系
      • 亡者の盾: 強いが満腹度が減りやすい
      • 饅頭の盾: 弱いが満腹度が減りにくい
      • 厳戒の盾: アイテムが盗まれなくなる
    • リング系
      • 平静のリング: 混乱状態になるのを防ぐ
      • 天眼のリング: 装備しているとアイテムとモンスターの位置がわかる
    • まんじゅう系
      • マントウ: 満腹度が少し回復する
    • 薬系
      • 酩酊酒: 飲む、または投げると混乱
      • テレポートドリンク: 飲む、または投げるとランダムワープ
      • 俊足の薬: 飲む、または投げると倍速
    • 魔導書系
      • 雷鳴の魔導書: 部屋の中のモンスターにダメージ
      • 混迷の魔導書: 部屋の中のモンスターを混乱状態にする
      • 光輝の魔導書: フロアの地形やアイテム、モンスターの位置がわかるようになる
      • 戦神の魔導書: 装備している武器の修正値を+1
      • 守護神の魔導書: 装備している盾の修正値を+1
  • モンスターテーブル、アイテムテーブルの実装
    • ダンジョンとその階層ごとの出現モンスターを設定ファイルで指定可能になった
    • ダンジョンごとに出現アイテムと出現率を設定ファイルで指定可能になった

その2まででシステム面がある程度できたので、アイテムや敵の振る舞いなどを充実させていく方向に進むことができている気がします。 特定条件下で発生するバグを見つけたときに、セーブデータから再現環境を呼び戻せることも地味に便利。

ベースがそれなりにしっかりしてきたので、機能追加も結構心理的ハードルが低くてよい。 例えば「混乱」という状態異常を実装すると、使うと混乱するアイテムを実装したくなるし、混乱攻撃を仕掛けてくるモンスターも作りたくなる、それに対応するために混乱を防ぐ装備品を作りたくなるなど、実装が次の実装モチベーションを呼ぶような状態になってて楽しいです。

その一方でアイテムやスキルを追加するたびに、「これの画像用意しなきゃ...」「エフェクト描かなきゃ...」というコーディング以外のタスクが溜まっていることに若干の圧迫感というか焦燥感というかなんというかそんなものを感じてたり。 もちろん絵を描くことは好きだし、その2でも書いたけどむしろそれをしたいがためにゲーム作り始めた側面もあるので、いよいよその必要性が高まってるのはよいことなのですが。なんかよくわからないけど今は絵を描くことに対する精神的な敷居が高くなっていて、なかなか手に付かないので...。

とはいえ、作った以上は誰かにプレイしてもらいたく、プレイしてもらうからには最低限のアートワークは用意したいので、頑張りたいです。

次回も引き続きアイテムと敵(とその振る舞い)を追加していく予定です。 まずはお金を追加しようと思ったんだけど、店もないのにお金があってもなぁ、と悩み中。 現状ではいわゆるギタン砲(風来のシレンではお金を投げると金額の1/10のダメージが相手に入る)の用途しかないわけで。 でもお金を盗むモンスターも追加したいし...ウジウジ。