Jump to content

2 Screenshots

  • 32
  • 1
  • 105.23 kB
  • Update details
    v1.0.0
    Released
    Download size105.23 kB
    Total versions1
    Freshness Updated today

About Windmill Upgrades

Windmill Upgrades adds a part based upgrade system to electrical windmills, allowing their performance to be improved. Each part type has 3 tiers.

Players can open an upgrade interface while looking at a windmill and holding a hammer, then install custom parts by dragging them into specific slots. The menu input button is configurable, with support for RELOAD, USE, MIDDLE CLICK, and RIGHT CLICK.

Each upgrade part affects the windmill’s stats, allowing you to tune max output, effective height, wind capture, power stability, and thunder performance through a simple interface. Parts are matched to their proper module slots, upgrades are saved per windmill, and all changes are applied directly to the entity in a lightweight, persistent system.

The plugin also includes optional loot crate support, letting you control whether upgrade parts can appear in loot containers and set per-container drop chances for each tier. Alternatively, the parts can be added to any of your existing systems such as shops or crafting plugins.

The upgrade parts are all configured in the config, with unique icons and stats, allowing you to quickly deploy this functionality to your server.

As with most of my content, localization is possible, with a default English lang file included.

The part shortnames and skins are all pre-configured but can be modified, or replaced with items from my Custom Item Manager.

 

Permissions:

windmillupgrades.use - Allows players to open and use the windmill upgrade interface.
windmillupgrades.admin - Allows access to the admin part giving command.

 

Commands:

/wmpart - Admin chat command to give yourself all of the available parts for testing or adding to shops. Optionally can specify amount if you need more than one of each.

 

Pre-Configured Parts:

Blades:

Spoiler

Blades T1

  • Wind Capture: +8%

Blades T2

  • Wind Capture: +18%

Blades T3

  • Wind Capture: +30%
     

Blades increase the windmill's efficiency at catching wind
Also increases windmill spin speed (visual)

Shaft:

Spoiler

Shaft T1

  • Effective Height: +10

Shaft T2

  • Effective Height: +20

Shaft T3

  • Effective Height: +35

Shaft provides a height bonus. You will get improved efficiency at lower height.
Also increases windmill spin speed (visual)

Generator:

Spoiler

Generator T1

  • Max Power Output: +25%

Generator T2

  • Max Power Output: +50%

Generator T3

  • Max Power Output: +100%

Generator increases the windmill's maximum power output

Regulator:

Spoiler

Regulator T1

  • Power Stability Boost: Low

Regulator T2

  • Power Stability Boost: High

Regulator T3

  • Power Stability Baost: Very High

Regulator provides power stability. Drops in wind will take longer to affect power output.

Lightning Rod:

Spoiler

Lightning Rod T1

  • Thunder Bonus: +5% at full thunder

Lightning Rod T2

  • Thunder Bonus: +12% at full thunder

Lightning Rod T3

  • Thunder Bonus: +25% at full thunder

Lightning rod will provide bonus power output during a thunderstorm, scaling with thunder intensity. 

 

Default Config:

Spoiler

{
  "Open Menu Button - RELOAD | USE | MIDDLE CLICK | RIGHT CLICK": "RELOAD",
  "Allow Non-Team Players To Open Owner Panel": false,
  "Module Types": {
    "blades": {
      "Display Name": "Blades",
      "Slot Index": 0,
      "Tiers": {
        "t1": {
          "Display Name": "Blades T1",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701219069,
            "Display Name": "Windmill Part: Blades T1"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Effective Height": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.08
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Thunder Bonus": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 1.5
            }
          }
        },
        "t2": {
          "Display Name": "Blades T2",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701219784,
            "Display Name": "Windmill Part: Blades T2"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Effective Height": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.18
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Thunder Bonus": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 2.5
            }
          }
        },
        "t3": {
          "Display Name": "Blades T3",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701220391,
            "Display Name": "Windmill Part: Blades T3"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Effective Height": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.3
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Thunder Bonus": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 4.0
            }
          }
        }
      }
    },
    "shaft": {
      "Display Name": "Shaft",
      "Slot Index": 1,
      "Tiers": {
        "t1": {
          "Display Name": "Shaft T1",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701225045,
            "Display Name": "Windmill Part: Shaft T1"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Effective Height": {
              "Add": 10.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Thunder Bonus": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 1.25
            }
          }
        },
        "t2": {
          "Display Name": "Shaft T2",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701225268,
            "Display Name": "Windmill Part: Shaft T2"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Effective Height": {
              "Add": 20.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Thunder Bonus": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 1.75
            }
          }
        },
        "t3": {
          "Display Name": "Shaft T3",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701225698,
            "Display Name": "Windmill Part: Shaft T3"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Effective Height": {
              "Add": 35.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Thunder Bonus": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 2.5
            }
          }
        }
      }
    },
    "generator": {
      "Display Name": "Generator",
      "Slot Index": 2,
      "Tiers": {
        "t1": {
          "Display Name": "Generator T1",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701223247,
            "Display Name": "Windmill Part: Generator T1"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 1.25
            },
            "Effective Height": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Thunder Bonus": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 1.0
            }
          }
        },
        "t2": {
          "Display Name": "Generator T2",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701223467,
            "Display Name": "Windmill Part: Generator T2"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 1.5
            },
            "Effective Height": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Thunder Bonus": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 1.0
            }
          }
        },
        "t3": {
          "Display Name": "Generator T3",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701223639,
            "Display Name": "Windmill Part: Generator T3"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 2.0
            },
            "Effective Height": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Thunder Bonus": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 1.0
            }
          }
        }
      }
    },
    "regulator": {
      "Display Name": "Regulator",
      "Slot Index": 3,
      "Tiers": {
        "t1": {
          "Display Name": "Regulator T1",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701224403,
            "Display Name": "Windmill Part: Regulator T1"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Effective Height": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.05
            },
            "Thunder Bonus": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 1.0
            }
          }
        },
        "t2": {
          "Display Name": "Regulator T2",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701224589,
            "Display Name": "Windmill Part: Regulator T2"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Effective Height": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.12
            },
            "Thunder Bonus": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 1.0
            }
          }
        },
        "t3": {
          "Display Name": "Regulator T3",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701224791,
            "Display Name": "Windmill Part: Regulator T3"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Effective Height": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.2
            },
            "Thunder Bonus": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 1.0
            }
          }
        }
      }
    },
    "lightningrod": {
      "Display Name": "Lightning Rod",
      "Slot Index": 4,
      "Tiers": {
        "t1": {
          "Display Name": "Lightning Rod T1",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701223874,
            "Display Name": "Windmill Part: Lightning Rod T1"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Effective Height": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Thunder Bonus": {
              "Add": 0.05,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 1.0
            }
          }
        },
        "t2": {
          "Display Name": "Lightning Rod T2",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701224068,
            "Display Name": "Windmill Part: Lightning Rod T2"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Effective Height": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Thunder Bonus": {
              "Add": 0.12,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 1.0
            }
          }
        },
        "t3": {
          "Display Name": "Lightning Rod T3",
          "Required Part Item": {
            "ShortName": "sticks",
            "SkinId": 3701224233,
            "Display Name": "Windmill Part: Lightning Rod T3"
          },
          "Stat Changes": {
            "Max Power Generation": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Effective Height": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Wind Capture": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Output Stability": {
              "Add": 0.0,
              "Multiplier": 1.0
            },
            "Thunder Bonus": {
              "Add": 0.25,
              "Multiplier": 1.0
            },
            "Rotor Speed": {
              "Add": 0.0,
              "Multiplier": 1.0
            }
          }
        }
      }
    }
  },
  "Loot Drops": {
    "Enabled": true,
    "Containers": {
      "assets/bundled/prefabs/radtown/crate_normal.prefab": {
        "Enabled": true,
        "Tier 1 Chance": 2.0,
        "Tier 2 Chance": 0.0,
        "Tier 3 Chance": 0.0
      },
      "assets/bundled/prefabs/radtown/crate_normal_2.prefab": {
        "Enabled": true,
        "Tier 1 Chance": 2.0,
        "Tier 2 Chance": 0.0,
        "Tier 3 Chance": 0.0
      },
      "assets/bundled/prefabs/radtown/crate_elite.prefab": {
        "Enabled": true,
        "Tier 1 Chance": 15.0,
        "Tier 2 Chance": 2.0,
        "Tier 3 Chance": 0.0
      },
      "assets/bundled/prefabs/radtown/underwater_labs/crate_elite.prefab": {
        "Enabled": true,
        "Tier 1 Chance": 15.0,
        "Tier 2 Chance": 2.0,
        "Tier 3 Chance": 0.0
      },
      "assets/bundled/prefabs/radtown/crate_underwater_advanced.prefab": {
        "Enabled": true,
        "Tier 1 Chance": 2.0,
        "Tier 2 Chance": 0.0,
        "Tier 3 Chance": 0.0
      },
      "assets/bundled/prefabs/radtown/crate_tools.prefab": {
        "Enabled": true,
        "Tier 1 Chance": 2.0,
        "Tier 2 Chance": 0.0,
        "Tier 3 Chance": 0.0
      },
      "assets/prefabs/npc/m2bradley/bradley_crate.prefab": {
        "Enabled": true,
        "Tier 1 Chance": 0.0,
        "Tier 2 Chance": 10.0,
        "Tier 3 Chance": 3.0
      },
      "assets/prefabs/npc/patrol helicopter/heli_crate.prefab": {
        "Enabled": true,
        "Tier 1 Chance": 0.0,
        "Tier 2 Chance": 10.0,
        "Tier 3 Chance": 3.0
      },
      "assets/prefabs/deployable/chinooklockedcrate/codelockedhackablecrate_ghostship.prefab": {
        "Enabled": true,
        "Tier 1 Chance": 10.0,
        "Tier 2 Chance": 5.0,
        "Tier 3 Chance": 1.0
      },
      "assets/prefabs/deployable/chinooklockedcrate/codelockedhackablecrate_oilrig.prefab": {
        "Enabled": true,
        "Tier 1 Chance": 10.0,
        "Tier 2 Chance": 5.0,
        "Tier 3 Chance": 1.0
      },
      "assets/prefabs/deployable/chinooklockedcrate/codelockedhackablecrate.prefab": {
        "Enabled": true,
        "Tier 1 Chance": 10.0,
        "Tier 2 Chance": 5.0,
        "Tier 3 Chance": 1.0
      }
    }
  }
}

 


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.4m
Total downloads
Customers
10.8k
Customers served
Files Sold
155.9k
Marketplace sales
Payments
3.3m
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.