Guides / Commands & Data

Phù phép tùy chỉnh không cần mod: Định dạng phù phép dựa trên dữ liệu

Phù phép đã trở thành JSON của gói dữ liệu, vì vậy một phù phép tùy chỉnh không cần mod. Đây là cấu trúc tệp, các thành phần hiệu ứng thực sự có tác dụng và cách để làm cho nó có thể nhận được.

Phù phép từng được mã hóa cứng. Giờ đây, chúng là dữ liệu của gói dữ liệu, có nghĩa là một phù phép tùy chỉnh thực sự — tên mới, hiệu ứng mới, đường cong chi phí mới — là một tệp JSON.

Nơi nó tồn tại

data/<namespace>/enchantment/lightning_strike.json

Số ít enchantment/, giống như mọi danh mục gói dữ liệu khác kể từ khi đổi tên.

Tệp tối thiểu

{
  "description": { "translate": "enchantment.my_pack.lightning_strike" },
  "supported_items": "#minecraft:enchantable/sword",
  "weight": 2,
  "max_level": 3,
  "min_cost": { "base": 10, "per_level_above_first": 10 },
  "max_cost": { "base": 50, "per_level_above_first": 10 },
  "anvil_cost": 4,
  "slots": ["mainhand"]
}

Chừng đó tạo ra một phù phép thực sự xuất hiện trên bàn và hiển thị trên vật phẩm. Nó chưa làm gì cả — hành vi là riêng biệt.

  • weight là độ hiếm tại Bàn phù phép. Vanilla sử dụng 10 cho phổ biến, 1 cho rất hiếm. Nó là tương đối, không phải phần trăm.
  • slots quyết định nơi phù phép hoạt động: mainhand, offhand, armor, head, v.v. Bỏ qua nó và phù phép sẽ không bao giờ được áp dụng.
  • supported_items nhận một thẻ vật phẩm hoặc một danh sách. Các thẻ #minecraft:enchantable/* đã tồn tại cho các nhóm hợp lý.

Làm cho nó có tác dụng

effects gắn hành vi:

"effects": {
  "minecraft:post_attack": [{
    "effect": { "type": "minecraft:run_function", "function": "my_pack:strike" },
    "requirements": { "condition": "minecraft:random_chance", "chance": 0.25 }
  }]
}

run_function là lối thoát — bất cứ điều gì một hàm có thể làm, phù phép cũng có thể làm. Các loại hiệu ứng tích hợp bao gồm sát thương, Đánh bật lùi, độ bền, vật phẩm rơi ra và thuộc tính mà không cần hàm, và chúng rẻ hơn.

requirements nhận bất kỳ vị ngữ nào, vì vậy việc giới hạn theo loại của Bia bắn, thời tiết hoặc một cơ hội ngẫu nhiên là một khối JSON.

Đặt tên cho nó

description là một thành phần văn bản, vì vậy một tên được mã hóa cứng hoạt động:

"description": { "text": "Lightning Strike", "color": "gold" }

nhưng một khóa translate cộng với một tệp ngôn ngữ trong gói tài nguyên là điều làm cho nó được đọc chính xác cho người chơi ở các ngôn ngữ khác — cùng lý do trang web này lấy các thuật ngữ trò chơi từ các bản dịch của Mojang.

Làm cho nó có thể nhận được

Ba cách, và bạn thường muốn nhiều hơn một:

  • Bàn phù phép — tự động sau khi weight và đường cong chi phí được đặt.
  • Bảng chiến lợi phẩmenchant_randomly với phù phép của bạn được liệt kê, hoặc enchant_with_levels nếu nó nên cạnh tranh về chi phí.
  • Dân làng trao đổi — một Sách được phù phép với phù phép của bạn trong vật phẩm trao đổi.

Thêm nó vào #minecraft:in_enchanting_table là điều làm cho bàn cung cấp nó; thẻ này dễ quên và tạo ra một phù phép tồn tại nhưng không bao giờ xuất hiện.

Xây dựng JSON phù phép và đối tác trang trí Giáp của nó, với các thẻ và khe được đặt, trong Custom Enchantment & Trim Builder.

Trình tạo phù phép & hoa văn riêng →

More guides

Browse all →

Cần thêm công cụ Minecraft khác?

Bộ công cụ tạo, xem và chuyển đổi chạy ngay trên trình duyệt — tất cả đều miễn phí.