RaidsPerRegion 2.2

Custom Sever Event - MythicMobs Addon [Towny Compatible]

  1. ShermansWorld
    Native Minecraft Version:
    1.16
    Tested Minecraft Versions:
    • 1.16
    • 1.18
    Source Code:
    https://github.com/ShermansWorld/RaidsPerRegion
    Contributors:
    ShermansWorld, KristOJa
    Other Plugins by ShermansWorld:
    CharacterCards, Governor, CustomServerTime, SimpleLockpicking


    icon.png

    Now Towny Compatible!

    Description:

    RaidsPerRegion is a server event plugin addon that utilizes MythicMobs. It allows you to start a raid on a WorldGuard region or Towny town. When a raid is started your custom MythicMobs mobs start spawning in the specified region. The players in the region must kill a set number of mobs before the timer runs out in order to win the raid. There are three tiers of raids.

    Demo Video


    Usage:

    Usage is described in the config.yml. This is where you can change the settings for the raids. This includes adding your custom mobs, adjusting spawnrates, and setting the kills goal and time allowed.

    Notes on Open Source:

    This plugin is an open source project developed by ShermansWorld and KristOJa. Feel free to change the code to fit your needs, we just ask that you credit and link the original source code

    Dependencies: WorldEdit or equivalent such as FastAsyncWorldEdit, WorldGuard, MythicMobs
    Optional: Towny

    Please make sure you have these plugins installed and up to date

    Commands:
    /raid region [region] [tier] {Scheduled time in mins}
    - Initiates a raid on a WorldGuard region
    /raid town [town] [tier] {Scheduled time in mins} - Initiates a raid on a Towny town
    Ex: /raid region spawn 1 - Calls a tier 1 raid on a region named "spawn"
    Ex: /raid town Georgetown 2 5 - Calls a tier 2 raid on a town named "Georgetown" in 5 minutes
    /raid cancel - Cancels current raid
    /raidsperegion reload - Reloads the config.yml
    /raidsperregion source - View the source code
    /raidsperregion version - Shows the plugin version

    Permissions:
    raidsperregion.raid
    - Gives permission for all /raid commands
    raidsperregion.reload - Gives permission for /raidsperregion reload

    Known Bugs:
    None at the moment. Woo!

    Code (Text):

    # NOTES ON OPEN SOURCE:
    # This plugin is an open source project developed by ShermansWorld and KristOJa
    # This source code can be found here: https://github.com/ShermansWorld/RaidsPerRegion/
    # Feel free to change the code to fit your needs, we just ask that you credit and link the original source code

    # NOTES ON PLUGIN/CONFIG:
    config-version: 6
    # RaidsPerRegion is a server event plugin that allows you to conduct a raid on a predefined WorldGuard region
    # Players within the region have to kill a set amount of your custom MythicMobs mobs before the timer runs
    # A raid is initiated using /raid [region] [tier], it can be cancelled using /raid cancel
    # RaidsPerRegion is now Towny compatibile! Use /raid town [town] [tier], it can also be cancelled using /raid cancel
    # This plugin requires MythicMobs, WorldGuard and WorldEdit as dependencies. Please make sure these pluings are up to date
    # Make sure no other plugin is disabling mob spawning in the raid area, like Factions for example.
    # You do not need to enable mob spawning in towny or with a region flag, it will be temporaily enabled for the raid
    # This config can be reloaded ingame using /RaidsPerRegion reload

    # PERMISSION NODES:
    # raidsperregion.raid - Allows access to all /raid commands
    # raidsperregion.reload - Allows for /raidsperregion reload

    # HELP WITH DEPENDENCIES:
    # How to define a WorldGuard Region: https://worldguard.enginehub.org/en/latest/regions/quick-start/

    # How to create MythicMobs Mob: https://www.mythicmobs.net/manual/doku.php/start
    # Or look at exampleMobs.yml in your MythicMobs folder


    # ------  Title Messages  ---------
    # These are the messages to be displayed to all players within the region during a raid
    # Use "" for none

    # Available Placeholders: @TIER @REGION @TOWN @SENDER
    # Note: @REGION and @TOWN will not work at the same time.

    RaidAnnoucementTitle: "&4&lTier @TIER Raid Inbound"
    RaidAnnoucementSubtitle: "&6Prepare to fight!"

    RaidWinTitle: "&2&lRaid Won!"
    RaidWinSubtitle: "&6The raiders have fled"

    RaidLoseTitle: "&4&lRaid Lost!"
    RaidLoseSubtitle: "&6This can't be good..."

    RaidCancelledTitle: "&b&LRaid Cancelled"
    RaidCancelledSubtitle: "&6Raid Cancelled by @SENDER"

    # ------  Other Messages  ---------
    # These are the messages to be displayed to all players within the region during a raid
    # Use "" for none

    # Available Placeholders: @TIER @REGION @TOWN @BOSSNAME
    # Note: @REGION and @TOWN will not work at the same time.

    BossKilledMessage: "&4[Tier @TIER Raid] @BOSSNAME &6was slain by @PLAYER"

    # ------  Options  ---------
    # These are additional options
    # SpawnBossOnKillGoalReached: Spawns a mob (Mythic Mob) when the kills goal is reached [See Raid Tiers]
    # Disabling this will stop all bosses from spawning
    # Note: The boss must be killed for the raid to end if this is set to true
    # MobsSpawnOnlyInRegion: mob spawns are restricted to only within the region. Enable this if you are using RaidsPerRegion in closed areas
    # MobsStayOnRaidLoss: Any spawned mobs will remain if the raid is lost. Set this to false to clear the mobs

    SpawnBossOnKillGoalReached: true
    MobsSpawnOnlyInRegion: false
    MobsStayOnRaidLoss: true

    # ------  Mobs that Spawn in Raids  ---------
    # These are the mobs (Mythic Mobs) types that spawn in a raid.
    # You may edit this section to include as many mobs as you want

    # Chance: the chance of spawning in each cycle.
    # 0.60 for example would be 60%. The smallest chance can be 0.001 or 0.1%

    # Priority: is the priority of the mob spawning.
    # If two mobs spawn per the chance parameter the one with the higher priority is spawned.
    # This means that rare mobs (one with a low chance value) should have a higher priority!

    # If no mob is spawned using its chance it defaults to the first mob in the list.
    # This should be your most common one and should not make much of a difference

    RaidMobs:
      SkeletalMinion:
        Chance: 0.60
        Priority: 1
      StaticallyChargedSheep:
        Chance: 0.35
        Priority: 2
      SkeletalKnight:
        Chance: 0.15
        Priority: 3
      SkeletalKing:
        Chance: 0.05
        Priority: 4



    # ------  Raid Tiers  ---------
    # These are the settings for each tier of raid. Right now the plugin supports 3 tiers of raids. They must be named accordingly
    # You will probably need to play around with these settings (especially KillsGoal and Time) to see what works best for your mobs

    # KillsGoal: The amount of mobs the players need to kill to win the raid
    # Time: The time (in seconds) the players have to win the raid
    # MaxMobsPerPlayer: The maximum amount of raid mobs that can be alive at any given time
    # SpawnRateMultiplier: How fast the mobs spawn.
    # MobLevel: The level of the mobs the spawn (increasing damage and health)
    # Boss: The name of the boss (Mythic Mob) that will spawn. Set to NONE for no boss
    # The boss will spawn once the kills goal has been reached. If enabled, players must kill the boss to win the raid

    Tier1:
       KillsGoal: 100
       Time: 600
       MaxMobsPerPlayer: 10
       SpawnRateMultiplier: 1.0
       MobLevel: 1
       Boss: NONE
    Tier2:
       KillsGoal: 300
       Time: 900
       MaxMobsPerPlayer: 15
       SpawnRateMultiplier: 1.5
       MobLevel: 5
       Boss: AngrySludge
    Tier3:
       KillsGoal: 500
       Time: 1200
       MaxMobsPerPlayer: 20
       SpawnRateMultiplier: 2.0
       MobLevel: 10
       Boss: AngrySludge
     
    # ------  Raid Win/Loss Commands  ---------
    # This is for commands that you want to run upon a raid win/loss.
    # Ommit the "/" from the command. An example is given below
    # All commands are run through console.
    # Global will run the command once
    # PerPlayer will run the command for every player that got atleast 1 kill in the raid.

    # Available Placeholders:
    # Global - @REGION, @TOWN, @TIER
    # PerPlayer - @REGION, @TOWN, @TIER, @PLAYER
    # Note: @REGION and @TOWN will not work at the same time.

    UseWinLossCommands: true

    RaidWinCommands:
      Global:
        - "broadcast The tier @TIER raid on @REGION has been won!"
      PerPlayer:
        - "eco give @PLAYER 100"
        - "msg @PLAYER nice job!"
     
    RaidLoseCommands:
      Global:
        - "broadcast The tier @TIER raid on @REGION has been lost!"
      PerPlayer:
        - "eco take @PLAYER 50"
     

    Discord: https://discord.gg/anjsqqyfFj


    TODO:
    - Add waves option
    - Run commands on raid win/loss DONE

    - Add raid boss option DONE
    Lapras and ccorp2002 like this.

Recent Reviews

  1. stive
    stive
    1/5,
    Version: 2.1
    very crude plugin, mobs appear outside the region if there is free space under the selected region. The number of mobs does not match the settings. No reward setting.
    1. ShermansWorld
      Author's Response
      It's unfortunate you didn't like my plugin. I'd like to address some of the points you made.

      Mobs spawning outside regions - This was an intentional design decision as it makes small regions work better. I see how this could be an issue if you are making an arena of sorts. I'll add a config option for the next update.

      Number of mobs not matching settings - I'm not exactly sure what you mean by this. Changing the mob spawn rate multiplier options in the config changes spawnrates. If you are having trouble with your config you can join our discord server for support.

      No rewards - You can make your own rewards using the command feature in the config to add both rewards and punishments via global or per player commands.

      Notes:
      RaidsPerRegion is not an out-of-the-box type plugin. It needs to be configured to your server needs to maximize its potential. My updates will therefore focus on adding more generalized options and improving existing features
  2. qsxcfthnjil
    qsxcfthnjil
    4/5,
    Version: 1.3
    Great Plugin, however I could not get the Kill Counter to work. Im using RaidsPerReigon v1.3, all the required plugins, 1.16, libsdisguises, and protocolIb.
    1. ShermansWorld
      Author's Response
      Try RaidsPerRegion 2.0 if your server is running 1.18.2. If you need support you can reach me on the discord server linked above.
  3. DadSaucy69
    DadSaucy69
    5/5,
    Version: 1.3
    Really cool plugin, it would be cool if you could automatically set it up and have countdown messages in the chat.
    1. ShermansWorld
      Author's Response
      Countdowns is something that I've wanted to implement for a while. I'll look into adding them for the next update
  4. Luke135
    Luke135
    5/5,
    Version: 1.3
    Nice plugin. It would be nice if you add the option to trigger a raid in a residence.
  5. Kubson_19
    Kubson_19
    5/5,
    Version: 1.3
    Really good plugin, works like a MobArena
    Could you add more translation for some title messages an scoreboard?
  6. Yom
    Yom
    4/5,
    Version: 1.2
    Really good plugin. I like it. However I wonder whats the point of raids? Like why would anyone want to "win" a raid? Theres no prize or anything so I'm a little confused the purpose? I don't see why any town would want a raid to occur, and even if it did occur why would they want to beat it?
    1. ShermansWorld
      Author's Response
      The raids are meant as part of a PvE challenge for your server. How you use them is up to you. In the next update I plan on adding commands you can run upon a raid win/loss. For example "/eco give * 100" would give every player on the server $100. You can do this manually, of course, but I am going to make it integrated within the plugin.
  7. Raveun
    Raveun
    5/5,
    Version: 1.2
    Great plugin for Towny, I hope for new features in the next updates did you planed something ?
  8. Ryan2179
    Ryan2179
    5/5,
    Version: 1.2
    Awesome Addon!!! Thankyou very much. ps your discord link does not work I would like to get in contact with you :) my discord: rio#1097
    1. ShermansWorld
      Author's Response
      Thanks! I've fixed the discord link. Feel free to contact me there
  9. Eailotv_
    Eailotv_
    5/5,
    Version: 1.0
    It's a good plugin. I like this method very much, but can it support Towny plugin in the future?
    1. ShermansWorld
      Author's Response
      I'll see what I can do
  10. hadzardoes
    hadzardoes
    5/5,
    Version: 1.0
    This would be a good resource, keep updating this please also, consider to making a discord help server. also, maybe more region ??? who knows
    1. ShermansWorld
      Author's Response
      I do plan on updating it and adding new features! I've also made a discord, linked above. Feel free to ask me any questions you have, I'll post some examples there. I'm also not sure what you mean by more regions. If you mean running multiple raids at the same time that's something I can look into.