Mobpression - Compressing mobs into a smaller problem

This is a discussion topic for the Ore project, Mobpression. View the full project on Ore for downloads and more information.


Mobpression

Inspired by MergedMob for Spigot
Commissioned by MaxIsHot @ ArsenalNetwork

What is it?

Have you ever wanted to have a way of easily managing your mobs into one small area automatically? Or perhaps optimise the amount of entities on your server? Well now you can!

Mobpression makes the life of any server owner easy by compressing all of your like-mobs together. Compressed mobs can stack on top of each-other to create a larger compression and you can kill a compressed mob to decrement the amount of mobs left!

How do I use it?

  1. Drop the plugin jar file into your /mods or /plugins folder.
  2. Launch your server and that’s it!

What’s to come in the future?

Currently, the plugin is in a working state, but there are improvements that I plan to make in the future.

  • Allow you to blacklist the compression of certain mobs using a list in the config. (Done!)
  • Add a configurable layout for the name of the compressed mob shown. (Done!)
  • Optimise the way that compressed mobs compress with eachother.
  • Add a management system which will allow you to remove/spawn compressed mobs in the world.

Configuration

compression-maximum {
    amount=10
    # Having this enabled will only allow mobs to compress to a certain point
    enabled=false
}
compression-minimum {
    amount=2
    # Having this enabled will only compress mobs when there are a certain amount of like-mobs present
    enabled=false
}
general {
    # Turning this on will reverse the blacklist and only allow the mobs you specify to compress
    blacklist-into-whitelist=false
    # Adding a mob into this list will prevent it from being compressed
    compression-blacklist=[
        "minecraft:ender_dragon",
        "minecraft:wither"
    ]
    # Use this to choose what the name above the head will look like
    display-name="&6&l[&d{compression}x&6&l] &f{name}"
}

You can reload the configuration with /sponge plugins reload

Support

If you ever need support with regards to our plugin(s), please don’t hesitate to contact us directly on our community Discord server. You can find it here: https://discord.gg/tKKeTdc

A new version has been released for Mobpression, it is available for download here.


Compressing mobs into a smaller problem.

A new version has been released for Mobpression, it is available for download here.


This version marks the official release of Mobpression for 1.12.2.

A new version has been released for Mobpression, it is available for download here.


Changelog for Version 1.0.1:
  • Invalid entities will be removed automatically to prevent a cache clog-up.
  • Updated the README.md on GitHub.

A new version has been released for Mobpression, it is available for download here.


Changelog for Version 1.0.2-SNAPSHOT:

  • Added a configuration which allows you to blacklist mobs (by their ID) in the configuration (mobpression.conf)
  • You can reload the configuration by running /sponge plugins reload
  • Changed the version in Ore to match that of the JAR file from the download.

Configuration:

general {
    # Adding a mob into this list will prevent it from being compressed
    compression-blacklist=[
        "minecraft:ender_dragon",
        "minecraft:wither"
    ]
}

I realised that there was an issue where mobs could break after a restart if the chunks weren’t loaded and errors would be present (a lot of them). In this update, mobs will no longer break, but the cache will no longer be cleared at a certain interval. This will not cause any issues directly, but the database file may grow in size as time goes on depending on the size of your server.

A new version has been released for Mobpression, it is available for download here.


Lots of new changes and fixes!

Firstly, sorry for the delay in releasing an update! I was having trouble using my verification key for uploading new fixes and we are now greeted with PGP-signing-less updates, which will make things a lot easier from now on.

What was fixed?

  • The configuration file could not be generated, resulting in the plugin not working.
    https://github.com/TheFlash787/Mobpression/issues/7

  • The database file could not be generated, also resulting in the plugin not working.
    https://github.com/TheFlash787/Mobpression/issues/4

  • The plugin would try and ‘remove’ the player entity when it was part of the collision process, resulting in lots of spamming errors. This has also been fixed.

  • I rewrote a lot of the compression mechanics to make them more reliable and safe to use. There was surprisingly a lot more issues with the previous versions than I originally thought!

What’s new?

Alrighty, we’ve added lots of new configuration options to extend the use and customisability of this plugin.

  • You can now specify a compression-minimum amount. Having this enabled with a value specified will only compress mobs once there are X amount of the like-mobs touching at the one time.

  • You can also specify a compression-maximum amount. Having this enabled with a value specified will only allow mobs to compress to a certain point (e.g. only have 5x or less mobs, no higher).

  • Whilst there is the compression-blacklist option, you can now flip this into a whitelist by enabling blacklist-into-whitelist

  • You can now specify a custom display name for the text shown above the mobs using the display-name option. By default this is &6&l[&d{compression}x&6&l] &f{name}, with {compression} and {name} being placeholders.

What’s next?

I plan on introducing per-entity configuration options down the line to allow you to specifically target an entity with the configuration options. For example, you could set the cow’s maximum compression to 3x, but the chicken to 10x.

Following a recent PR, there may be the option to turn the system to BOSS MODE! This would basically be where if you killed a 5x entity, it would drop 5x the amount of drops in the one death. We may expand this to also simulate 5x the amount of health, and also for normal mobs, simulating 5x the amount of passive drops (i.e. eggs for chickens).

Thank you!

1 Like

Anyway to disable the message when a stacked mob is killed? Its global and gets annoying with lots of players