Minecraft1.12.2でMod作製 PART5. ゴーレムの機能を追加

こちらはPCゲーム「Minecraft」のMod作製日記です。

Minecraft.1.12.2でのMod作製の作業進捗を書いています。
Minecraft.1.12.2での完成を目標としていますが、Minecraft.1.13の仕様によってはそちらへ移行してからの完成を目指すかも知れません。









Modの作製をちびちびと進めて、少しずつだけど形になってきた。
ゴーレムに追加したら面白そうな機能を考えて、思い付いたらそれを1つずつ作っていく。

今回は、IT系の企業で働く知人の力を借りて、「それぞれのMobのキル数をカウントして、キル数に応じて与えるダメージを増やす」という機能を作ってみた。
というか、元を作ってもらったw

相変わらずJavaの理解がたりず、理解できない部分が多いので、作ってもらったコードも解説してもらったりして、なんとか実装できた感じ。
バニラのMobのキル数だけなら、コードが多くなるけど、自分でもなんとかなるんだけど、今回、作りたかったのは、他のmodで追加されるMobのキル数も処理できるようにしたかったので、プロの力を借りたw

人によって導入するModが違うので、どんなMobが追加されるか分からない状態で、そのMobを判定するコードを用意しなければならなかったから、頭を抱えてたわけで、「作り方はあるはず・・・でも分からない」といった状況だったので、作れるかを聞いてみた結果、作って貰えたw

貰ったコードでは私の知らなかったHashMapというものを使っていて、説明を聞いた時は何となくわかったけど、1日たったらちんぷんかんぷんなので、時間がある時に調べてみようと思ってる。

他にも文字列と(エンティティ名)と変数の値(キル数)をセットで格納して、読み込むときに切り離して使う方法も教わった。
これもしっかりとは理解できていないから、次に使う機会があったら、調べながら覚えていこうと思う。

[他のModのMobとの戦闘テスト]

何はともあれ、デバッグもリリース後の他modとのチェックも無事に完了して、他のModの追加Mobのキル数もカウントされて、ダメージにボーナス付くようになった。
後は大量のMobのキル数をカウントさせても大丈夫かどうかを確認すればokかな。

キル数によるダメージ増加が完成した後に、連休なのを良い事に夜更かしをして、「武器の使用回数でダメージにボーナスを追加する」機能と、「盾の発動回数で盾の発動率にボーナスが付く」機能も追加してみた。

熟練度的なもので、キル数と合わせて、「ゴーレムが学習していく」ような感じにしてみた。
キル数によるダメージボーナスの部分を応用すれば、キル数による盾の発動率にボーナスが付く機能も作れそうだけど、とりあえず保留。

今のところ、キル数も熟練度もカウントの100分の1をそのまま加算するようにして、カウントが300以上の場合は300で計算するようにしてみた。
これでしばらく遊びながら様子をみて、デフォルト設定の値を決めようと思ってる。

いずれはコンフィグファイルも作って、Modを使用する人がカウントからの倍率と上限を変更できるようにしたい。

盾の発動率を作った流れで、「ゴーレムが矢を防御した時に、確率で矢をドロップする」機能もつくってみた。
確率は盾の発動率の半分に設定。

キル数によるダメージ増加の部分を作ったので、以前作った武器の部分も作り直して武器のダメージもそこで計算するように変更。
以前のコードだと「Boolean」で作っていたので、trueかfalseしかできず、「木の棒」、「石の棒」、「鉄の棒」、「黒曜石の棒」と別々にデータを管理してたけど、これではコードが多くなるので、「Integer」で作り直して、「武器の種類」、「武器の素材」、「武器の攻撃力」、「武器の耐久値」にしてみた。

「武器の耐久値は」元々、作ってあったので、そのまま使用。
武器の種類はまだ「棒」しかないけど、いずれ増やしていったときに、「0が武器無し」、「1が格闘」、「2が棒」といった感じにできる。
「武器の素材も」数字で管理して「1が木」、「2が石」といった感じ。

後は攻撃時の左手の振りを、「武器の種類が(2)以上なら」に変更。

思い付きで「革の帽子」を右クリックで渡すと、ハットを被るようにしてみた。
一応、アーマーポイントを1増やすw

[2つのアイテムを組み合わせて渡す]

武器を装備させるのを、今まではバニラの「木、石、鉄の剣」と黒曜石を右クリックで渡すようにしてたけど、それっぽくしようと思って、プレイヤーの両手に特定の組み合わせでアイテムを持ちながらShift+右クリックすると渡せるようにしてみた。

木は「棒」を単品、石の棒は「丸石と火打石」といった感じにしてみた。

ゴーレムのHPを回復する為のアイテムも、以前に作ってたけど、入手手段が1つしか無く、もう1つの入手方法を作る予定が上手く進んでいないので、間に合わせで、「ポピー」で回復出来るようにしておいた、回復量は控えめに2(ハート1個分)。

それに加えて、「スライムを倒すとHPが回復する」機能と「HPが減っている時のみ、自発的にスライムを攻撃する」AIを追加した。
これ自体は状況に左右されやすいので、気休めにしかならないかもしれないけど。

[盾の追加]

最後に盾を追加してみた。
こっちの盾の場合は戦闘中以外は背中に背負うようにしてみた。

とりあえず順調に進んでいる気がする。
機能も充実してきたし、更なる機能を考えつつ他のModとのバランスを見てく感じ。
作りたい機能はたくさんあるけど、技術が追い付いていないので、1つずつコツコツと作っていく。
友人が遊びながらテストをしてくれるという事で、この後、渡す予定w










次の記事

☆Minecraft1.12.2でMod作製 PRAT6. ゴーレム用ペットの追加

前の記事

☆Minecraft1.12.2でMod作製 PRAT4. Mod作製の進捗状況

Minecraft 記事一覧へ