Villainous Horde Manager is a tool for creating Continuous Horde events
The Shorthand Explanation
The code for this mod is based off of Cold Snap Horde and its horde system, where the server will try to keep a consistent number of enemies alive until enough have been killed to end the event. When I wrote the code for Cold Snap Horde's version though, it wasn't very... reusable. This api is my attempt at fixing that, capable of spawning vanilla (or modded) mobs and sending them towards the target player like the snowmen do during the horde event.
You can now make your own hordes via JSON magic See the github page for more information on how to do this. It and extending off of it is frankly the recommended path.
If you are a mod developer and you want more control over a custom horde Also see the github page. Each module has an example of how to instantiate hordes and get them to function correctly for a given platform (quilt being the same as fabric, for this case)
Interested? Here's some more!
If you're still reading this, you're probably a developer interested in looking into the code for this event. Which is very neat! I'll happily accept contributions that I see as helpful additions, and help out within reason to get you set up with hordes.
Extra details about horde requirements:
- Entities added to the horde must extend the PathfinderMob class.
- Bigger entities are harder to spawn due to the system attempting to avoid situations where mobs would suffocate. Try to keep larger mobs to a minimum/to low spawn weights.
- The api will scan the environment around a potential spawnpoint for any solid blocks. The size of the scan depends on the size of the mob, meaning larger mobs will be more expensive on server resources.
- The system tries to spawn mobs at a relatively close Y level to the player (preferring locations above the player over below).
- If the system can not find a nearby Y level, it'll settle for any Y level it can find.
Server Hosting
I've partnered with BisectHosting! If you need a quality server, click the picture below and use code "cartoonish" for 25% off your first month!
How to Install Villainous Horde Manager (Mod)
Villainous Horde Manager by MaritheVillain is verified for Fabric, Forge, Neoforge, Quilt across Minecraft versions 1.19, 1.19.1, 1.19.2, 1.19.4, 1.20.1, 1.20.4, 1.21, 1.21.1 (latest release: 1.0.1, file size: 75 KB). Follow the steps below to install it safely from ModCraft.tv:
- Click the Download button above and select your Minecraft version (1.19, 1.19.1, 1.19.2, 1.19.4, 1.20.1, 1.20.4, 1.21, 1.21.1) and platform (Fabric, Forge, Neoforge, Quilt).
- Make sure you have the compatible loader or environment installed for Fabric, Forge, Neoforge, Quilt.
- Move the downloaded Villainous Horde Manager file into your Minecraft
.minecraft/modsfolder and launch the game.
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 5mo ago | 1 | ||||
| 5mo ago | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 |
- Adds the minimumSpawnRange and maximumSpawnRange fields to the wave data
- If these fields are not present, they'll default to the original values of 21 and 35
- These numbers are recommended unless you're going for something specific, as they reduce the odds of pathfinding issues, as well as reduce the risk of low render/simulation distance causing problems.
- Adds the "auto" setting when starting json hordes through the command.
- Auto will pick the player with the most other players around them to be the anchor point of the horde
- If the highest player is tied with another for number of players around them when the command is run, it'll randomly pick between the top contenders.
- Adds the minimumSpawnRange and maximumSpawnRange fields to the wave data
- If these fields are not present, they'll default to the original values of 21 and 35
- These numbers are recommended unless you're going for something specific, as they reduce the odds of pathfinding issues, as well as reduce the risk of low render/simulation distance causing problems.
- Adds the "auto" setting when starting json hordes through the command.
- Auto will pick the player with the most other players around them to be the anchor point of the horde
- If the highest player is tied with another for number of players around them when the command is run, it'll randomly pick between the top contenders.
- Major breaking change to the structure of the format of the JSON, see the github for more details
- Adds in the concept of waves, allowing for, well, waves of enemies to appear instead of one set of enemies and done.
- Waves have most of the concepts the horde once had in them, such as how many enemies need to be killed, how many can be spawned at once, etc.
- As such, each wave in a single horde can play entirely differently!
- Adds in an optional boss phase for each wave
- If boss entities are included, when the life count is depleted in a wave, and alternate boss bar also defined in the config will be displayed, and the wave will only end when the determined boss entities are killed
- Depending on configuration, the normal horde can either continue to spawn, or not during the boss phase.
- Hordes are loaded from a subfolder in the config folder now, again see the github for details
- But, this means if you keep every horde in its own file, and one file breaks, every other horde should work fine.
- Major breaking change to the structure of the format of the JSON, see the github for more details
- Adds in the concept of waves, allowing for, well, waves of enemies to appear instead of one set of enemies and done.
- Waves have most of the concepts the horde once had in them, such as how many enemies need to be killed, how many can be spawned at once, etc.
- As such, each wave in a single horde can play entirely differently!
- Adds in an optional boss phase for each wave
- If boss entities are included, when the life count is depleted in a wave, and alternate boss bar also defined in the config will be displayed, and the wave will only end when the determined boss entities are killed
- Depending on configuration, the normal horde can either continue to spawn, or not during the boss phase.
- Hordes are loaded from a subfolder in the config folder now, again see the github for details
- But, this means if you keep every horde in its own file, and one file breaks, every other horde should work fine.
- Fixes issue making modded entities not work in JSON hordes.
- Fixes issue making modded entities not work in JSON hordes.
- direct 1.21.1 port
- Quilt support available when the QFAPI launches for 1.21.1
- direct 1.21.1 port
- Fix package name disparity
- Fix package name disparity
- 1.21 port
- 1.21 port
- Use Quilted Fabric API for quilt
- Fixes bug where modded entities would register as vanilla ones falsely
- Fixes bug where modded entities would register as vanilla ones falsely
- Adds nbt tag support to the json hordes

