You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Apr 14, 2020. It is now read-only.
Is your feature request related to a problem? Please describe.
I play on a multi-world server where this plugin is used. The world consists of both Skyblock and SMP worlds. To improve performance from the massive number of entities on SMP, the mods turned on mob stacking for Villagers on all worlds, which means that trading has become challenging if not impossible.
Describe the solution you'd like
The custom entity configuration can be enhanced to provide additional checks before stacking, beyond simply tagging and setting custom maximum stack sizing. The key enhancement would be adding support for stack-worlds and no-stack-worlds, so that, for example, villagers stack on SMP, but don't stack on Skyblock, where other mods already define entity limits.
Describe alternatives you've considered
Two other considerations were made from the client side to prevent mob stacking for villagers. Nametagging did not work, since nametag behavior prior to 1.14 (the server runs 1.12 for Skyblock) was inconsistent for villagers. The other option was to stagger villagers outside of the area for mob stacking, but that solution has space implications that make the solution less desirable either in situations where a villager spawner is collecting villagers for sorting, or when building a trading hall.
Additional context
I've already created a fork of the code that introduces a new class, ConfigHelper, which performs the custom entity check behind the scenes for configurations that appeared to make sense. In testing the no-stack-worlds configuration, the change didn't appear to have any significant impact on server TPS. Other configuration options that were made customizable were:
wait-to-stack.wait-time
wait-to-stack.spawn-reasons
no-ai.enabled
no-ai.use-whitelist
no-ai.type-whitelist
tag.always-visible
tag.format
tag.remove-at
stack-max
dont-stack-until
I can provide a link to the forked code, or create a branch and issue a pull request if you want to review it.
The text was updated successfully, but these errors were encountered:
Is your feature request related to a problem? Please describe.
I play on a multi-world server where this plugin is used. The world consists of both Skyblock and SMP worlds. To improve performance from the massive number of entities on SMP, the mods turned on mob stacking for Villagers on all worlds, which means that trading has become challenging if not impossible.
Describe the solution you'd like
The custom entity configuration can be enhanced to provide additional checks before stacking, beyond simply tagging and setting custom maximum stack sizing. The key enhancement would be adding support for stack-worlds and no-stack-worlds, so that, for example, villagers stack on SMP, but don't stack on Skyblock, where other mods already define entity limits.
Describe alternatives you've considered
Two other considerations were made from the client side to prevent mob stacking for villagers. Nametagging did not work, since nametag behavior prior to 1.14 (the server runs 1.12 for Skyblock) was inconsistent for villagers. The other option was to stagger villagers outside of the area for mob stacking, but that solution has space implications that make the solution less desirable either in situations where a villager spawner is collecting villagers for sorting, or when building a trading hall.
Additional context
I've already created a fork of the code that introduces a new class, ConfigHelper, which performs the custom entity check behind the scenes for configurations that appeared to make sense. In testing the no-stack-worlds configuration, the change didn't appear to have any significant impact on server TPS. Other configuration options that were made customizable were:
wait-to-stack.wait-time
wait-to-stack.spawn-reasons
no-ai.enabled
no-ai.use-whitelist
no-ai.type-whitelist
tag.always-visible
tag.format
tag.remove-at
stack-max
dont-stack-until
I can provide a link to the forked code, or create a branch and issue a pull request if you want to review it.
The text was updated successfully, but these errors were encountered: