Jump to content

3 Screenshots

  • 43
  • 1
  • 188.97 kB
  • Update details
    v1.0.0
    Released
    Download size188.97 kB
    Total versions1
    Freshness Updated today

depends on

Required files or plugins needed for this resource to work properly.

About AnvilUpgrade

Add a working Anvil and a Metal Hammer to your server and let players reforge their gear. Drop an item onto the anvil, strike it with the hammer, and it transforms into an upgraded or reskinned version — with resource costs and chance-based outcomes you fully control.

⭐ Key Features

  • ✅ Adds a custom Anvil deployable and a Metal Hammer tool as real in-game items
  • ✅ Reforge system — place an item in the anvil and strike it with the hammer to convert it
  • ✅ Chance-based results: one input can roll into several possible outputs (the default recipe turns an AK into ice, jungle, medical, diver, or a skinned variant)
  • ✅ Fully configurable recipes — define the input item (shortname, skin, name, amount), its resource cost, the number of hammer strokes required, and the weighted result table
  • ✅ Optional Metal Hammer durability, measured in strikes, with a found-condition range and repair support (can be turned off entirely)
  • ✅ Tunable anvil entity: health, per-damage-type protection, optional invulnerability, and a lootable toggle
  • ✅ Anvil decay with delay, duration, indoor decay, heal rate, and tick controls
  • ✅ Anvil repair and pickup rules — require the hammer, require building privilege, and carry condition over on pickup
  • ✅ Per-item world-model transform overrides so each item sits correctly on the anvil
  • ✅ In-world UI that shows the resources needed for the current upgrade
  • ✅ Localized into 31 languages out of the box

🔑 Permissions & Commands

None — AnvilUpgrade has no permissions or chat/console commands. Everything happens in the world: whoever holds the Anvil and Metal Hammer items can use them. Control access by choosing who receives those items.

⚙️ Configuration

A full config is generated on first load at oxide/config/AnvilUpgrade.json. Excerpt of the key sections (the per-damage-type protection table is generated automatically with sensible defaults):

{
  "Config Version": 1,
  "Metal Hammer Item": {
    "Enable Condition": true,
    "Max Condition (durability / strikes)": 500.0,
    "Found Condition Fraction Min (0-1)": 0.1,
    "Found Condition Fraction Max (0-1)": 0.4,
    "Repairable": true,
    "Maintain Max Condition": true
  },
  "Anvil Entity": {
    "Health": 1000.0,
    "Lootable": true,
    "Invulnerable": false,
    "Base Protection (per damage type, 0-1)": {
      "Generic": 0.98,
      "Bullet": 0.9999,
      "Explosion": 0.4998,
      "...": "remaining damage types generated automatically"
    },
    "Decay": {
      "Enabled": true,
      "Decay Delay (hours)": 8.0,
      "Decay Duration (hours)": 8.0,
      "Decay Indoors": false,
      "Override Heal Rate": false,
      "Heal Rate": 1.0,
      "Decay Tick Override (seconds, 0 = default)": 0.0
    },
    "Repair": {
      "Enabled": true,
      "Resources": [ { "Short Name": "metal.refined", "Skin ID": 0, "Amount": 25 } ]
    }
  },
  "Anvil Pickup": {
    "Enabled": true,
    "Require Hammer": true,
    "Require Building Privilege": true,
    "Item Count": 1,
    "Set Condition From Health": true,
    "Subtract Condition (0-1)": 0.25
  },
  "Configs": [
    {
      "Requirements": {
        "Short Name": "rifle.ak",
        "Skin ID": 0,
        "Text": null,
        "Amount": 1,
        "Number of strokes (Min 1)": 10,
        "Resources": [ { "Short Name": "metal.refined", "Skin ID": 0, "Amount": 30 } ]
      },
      "Collect resources on success only": false,
      "Result Items": [
        { "Short Name": "rifle.ak.ice",    "Skin ID": 0,          "Chance (0-100)": 20.0 },
        { "Short Name": "rifle.ak.jungle", "Skin ID": 0,          "Chance (0-100)": 20.0 },
        { "Short Name": "rifle.ak.med",    "Skin ID": 0,          "Chance (0-100)": 20.0 },
        { "Short Name": "rifle.ak.diver",  "Skin ID": 0,          "Chance (0-100)": 20.0 },
        { "Short Name": "rifle.ak",        "Skin ID": 2436647042, "Chance (0-100)": 20.0 }
      ]
    }
  ],
  "World Item Transform Override": {}
}

Each result item also supports amount ranges and a condition range; add as many recipes to "Configs" as you like.

🌍 Localization

Ships with 31 languages, including English, Russian, German, French, Spanish, Portuguese, Italian, Polish, Turkish, Ukrainian, Chinese (Simplified & Traditional), Japanese, Korean, and more. Every message is editable under oxide/lang.

🧩 Dependencies

  • CustomItemDefinitions (required) — library that provides the custom Anvil and Metal Hammer items
  • ServerPrefabs (required) — library that provides the custom anvil entity and hammer prefab

📥 Installation

  1. Install the required libraries CustomItemDefinitions and ServerPrefabs.
  2. Drop AnvilUpgrade.cs into your oxide/plugins/ folder.
  3. Edit the generated config to define your recipes, then reload the plugin.
  4. Distribute the custom items to players — the Anvil (anvil) and Metal Hammer (hammer.metal) — through your kits, shop, or give system.

💬 Support

Questions, ideas, or issues? Leave a comment or send me a DM here on Codefling.

  • Like 1

User Feedback

About Us

Codefling is the largest marketplace for plugins, maps, tools, and more, making it easy for customers to discover new content and for creators to monetize their work.

Downloads
2.7m
Total downloads
Customers
11.5k
Customers served
Files Sold
164.6k
Total sales
Payments
3.6m
Processed total
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.