【1.20.1対応】コピペで動く!AIでKubeJSスクリプトを自動生成(オリジナル武器追加編)

KubeJS

マイクラのバニラ環境に飽き、「自分だけの独自のゲームバランスを作りたい!」と考えたことはありませんか? サバイバルでのモブとの戦闘において、「鉄とダイヤの中間くらいの攻撃力を持つ剣が欲しい」「特定の効果を持たせた自分たち専用の武器を作りたい!」と思った方も多いはず。

この記事では、マイクラの戦闘を劇的に進化させるオリジナルの「銀の剣」を追加する方法を解説します! 優秀なAI(レスポンスが速く賢いGemini 2.5 Flashなどが特におすすめです)を活用すれば、複雑なコードもコピペで一瞬です。俺と友達が遊ぶために作っているこだわりのマルチサーバーにこのギミックを仕込んで、戦闘をさらに盛り上げましょう!

(※サーバーの土台作りやKubeJSの導入がまだの方はこちらの記事からどうぞ👇)

【1.20.1対応】ConoHa VPSでマイクラ独自環境を作るMOD!KubeJS・MoreJS・LootJS導入完全ガイド
1. はじめに:KubeJSを駆使してマイクラを「独自環境」に魔改造する2. マルチプレイで独自環境を楽しむなら「ConoHa VPS」一択な理由3. ConoHa VPSでマイクラサーバーを立ち上げる3ステップ4. サーバーにKubeJS…

【重要】当サイトの動作確認環境

マイクラのModは、バージョンが少し違うだけでコードが動かなくなることがよくあります。この記事のスクリプトは、以下の環境で動作確認を行っています。

  • Minecraftバージョン: 1.20.1
  • 前提Mod: Forge
  • 使用Mod: KubeJS
  • 環境: ConoHa VPS

※バージョンが大きく異なる場合、コードのままではエラーになる可能性があるためご注意ください。

【事前準備】コードを書くファイルを作ろう

今回は新しいアイテム(武器)の「ベース(土台)」を作るため、startup_scripts フォルダを使用します。

ご自身のパソコンの .minecraft ➔ kubejs ➔ startup_scripts フォルダの中に、新しく weapons.js というファイルを作成してください。

💡ワンポイント:ファイル名は自由に変更OK! 名前はあくまで一例ですので、後で見て分かりやすい名前であれば自由に変更して構いません。(※ただし、名前の最後は必ず .js にすることだけ忘れないでください!)

1. AIをKubeJSの武器職人にする「魔法の前提プロンプト」

武器の追加は指定する項目(攻撃力や振る速度など)が多く、手作業で書くのは大変です。まずは、AIのチャット画面を開き、以下の「前提プロンプト」をコピペして送信してください。

▼AIにコピペする指示文(プロンプト)▼

あなたはMinecraftのMod「KubeJS」の専門プログラマーです。これから私がお願いするオリジナル武器の追加処理を出力してください。

【前提条件】 ・Minecraftのバージョンは「1.20.1」です。 ・アイテムのベース登録は startup_scripts 用に StartupEvents.registry('item', event => { ... }) の構文を使用してください。 ・コードだけをシンプルに出力し、複雑な解説は不要です。

準備ができたら「準備完了です。どんな武器を追加しますか?」とだけ返事をして待機してください。

AIから「準備完了です」と返ってきたら、いよいよ武器の魔改造スタートです!

2. 実践:「銀の剣」を追加!

追加したい装備の詳細な設定を指示します。

▼AIにコピペする指示文▼

以下の設定で新しい「剣」を追加するコードを書いてください。

【銀の剣】 ・アイテムID: silver_sword ・表示名: 銀の剣 ・ツールの種類: sword ・攻撃力: 6.0

▼AIが出力するコードの例▼

JavaScript

StartupEvents.registry('item', event => {
    // 銀の剣
    event.create('kubejs:silver_sword')
         .displayName('銀の剣')
         .type('sword')
         .tier('iron')
         .attackDamageBaseline(6.0)
         .speedBaseline(-2.4);
});

出力されたコードを、先ほど作った weapons.js に貼り付けて上書き保存してください。

3. ⚠️【超重要】バージョンアップで変わった「種類(Type)」指定の罠

ここで、武器作りにおいて初心者が一番ハマりやすい罠について先回りして解説しておきます!

KubeJSで剣を作る場合、マイクラのシステムに「これは剣だよ」と教える必要があります。これを忘れると、「クモの巣を素早く壊せない」「範囲攻撃(スウィープ攻撃)が出ない」というただのコスプレアイテムになってしまいます。

昔のバージョンのKubeJSでは .type('sword') と書くのが主流でしたが、1.20.1の環境ではこの書き方をするとクラッシュしてしまいます! 必ず、上記のコードのように event.create('kubejs:silver_sword', 'sword') と、第2引数に種類(’sword’)を指定するようにしてください。

AIに指示を出す時も、古いバージョンの書き方を出力されないように注意が必要です!

4. 必要な画像を用意して、ゲームを「完全再起動」しよう!

装備の見た目となる画像(16×16ピクセルの透過PNG)を用意します。 今回は silver_sword.png という名前で保存してください。

① 自分のPCに画像を保存する ご自身のパソコンの .minecraft ➔ kubejs ➔ assets ➔ kubejs ➔ textures ➔ item フォルダの中に、用意した画像を保存します。

② サーバーにデータをアップロードして「完全再起動」する WinSCPなどのソフトを使って、サーバーの kubejs フォルダの中身(書き込んだコードと追加した画像)を、自分のパソコンと全く同じ状態になるように丸ごと上書き(アップロード)してください。

今回の startup_scripts は「マイクラの起動時」に一度だけ読み込まれる仕様になっています。そのため、データのアップロードが終わったら、必ずマイクラ本体(およびサーバー)を再起動してください。サーバーの起動中は、生でポリポリ間食するのにぴったりなミニトマトでもつまみながらのんびり待ちましょう!

再起動後、ゲームに入ってインベントリに「銀の剣」が追加されていれば基本の追加は成功です!

🎁【おまけ】特殊効果(バフ・デバフ)をつけて伝説の武器にしよう!

基本の武器が作れたら、もう一歩踏み込んで「攻撃時に相手を毒にする剣」といった特殊効果をつけてみませんか?

⚠️ 特殊効果をつける際の「超重要」な罠 KubeJSでは、アイテムのベースを作るのは startup_scripts ですが、「攻撃を当てた時」などのゲーム内イベントは server_scripts という全く別のフォルダに書く必要があります。

▼ AIへの指示例(特殊効果の追加)▼

プレイヤーが「銀の剣(kubejs:silver_sword)」でモブや他プレイヤーを攻撃した時、相手に「毒(minecraft:poison)」を5秒間付与する処理を、server_scripts 用に書いてください。

▼ server_scripts 用の特殊効果コード例 ▼

JavaScript

EntityEvents.hurt(event => {
    // 攻撃したのがプレイヤーで、メインハンドに「銀の剣」を持っているか判定
    if (event.source.player && event.source.player.mainHandItem.id === 'kubejs:silver_sword') {
        // 攻撃されたエンティティに毒(minecraft:poison)を 100 tick(5秒間)付与
        event.entity.potionEffects.add('minecraft:poison', 100, 0);
    }
});

「こんな能力があったら面白いな」と思ったら、「startup用とserver用に分けてコードを出力して」とAIにお願いしてみましょう!

まとめ:自分だけの最強装備でマルチプレイをもっと楽しく!

この仕組みを応用すれば、「攻撃力が異常に高い伝説の剣」なども簡単に追加することができます。友達と一緒に遊ぶサバイバルがさらに盛り上がるような、オリジナルの武器をぜひ作ってみてください!

コメント

タイトルとURLをコピーしました