- Fixed a bug with `reduce-sync-loads` where really high-velocity entities weren't detecting collisions correctly, such as enderpearls from pearl cannons.
- Fixed a bug with `reduce-sync-loads` where really high-velocity entities weren't detecting collisions correctly, such as enderpearls from pearl cannons.
- Fixed a bug with `reduce-sync-loads` where really high-velocity entities weren't detecting collisions correctly, such as enderpearls from pearl cannons.
- Fixed a bug with `reduce-sync-loads` where really high-velocity entities weren't detecting collisions correctly, such as enderpearls from pearl cannons.
- Added `chunk-tick-distance-affects-random-ticks` option to control whether chunk-tick-distance affects random ticks.
- chunk-tick-distance will still affect mobspawning regardless of this setting.
- enabling this setting will bring back old behavior, stopping random ticks in chunks too far away from players - even chunks simulated by enderpearl or portal loading.
### Fixed
- Fixed chunk-tick-distance stopping pearl/portal loaded chunks from random ticking (breaking vanilla behavior by default).
This old behavior is now hidden behind a config option.
- Added `chunk-tick-distance-affects-random-ticks` option to control whether chunk-tick-distance affects random ticks.
- chunk-tick-distance will still affect mobspawning regardless of this setting.
- enabling this setting will bring back old behavior, stopping random ticks in chunks too far away from players - even chunks simulated by enderpearl or portal loading.
### Fixed
- Fixed chunk-tick-distance stopping pearl/portal loaded chunks from random ticking (breaking vanilla behavior by default).
This old behavior is now hidden behind a config option.
### Added
- Added default configurable values for dynamic settings.
### Fixed
- Fixed not being able to only specify a single dynamic setting in the config.
### Changed
- Chunks in vanilla can now tick if they're loaded by a ticket that allows simulation, not just when players are nearby.
- Chunk-tick-distance now checks the distance to the nearest simulating ticket instead of the nearest player.
- Since spawning and block-ticking chunks are now separate, ticking chunk cache now caches both of them.
### Added
- Added default configurable values for dynamic settings.
### Fixed
- Fixed not being able to only specify a single dynamic setting in the config.
### Changed
- Chunks in vanilla can now tick if they're loaded by a ticket that allows simulation, not just when players are nearby.
- Chunk-tick-distance now checks the distance to the nearest simulating ticket instead of the nearest player.
- Since spawning and block-ticking chunks are now separate, ticking chunk cache now caches both of them.
- You can now use a dynamic setting multiple times in the config.
For example: simulation distance from 10 to 5 → view distance from 12 to 8 → simulation distance from 5 to 2 → view distance from 8 to 4, etc.
### Fixed
- Fixed dynamic performance trying to change simulation distance below 5 on singleplayer. The client doesn't accept this and would put it back to 12 (default).
- Fixed villagers being unable to swim up in a 1x1 with lobotomization enabled.
- You can now use a dynamic setting multiple times in the config.
For example: simulation distance from 10 to 5 → view distance from 12 to 8 → simulation distance from 5 to 2 → view distance from 8 to 4, etc.
### Fixed
- Fixed dynamic performance trying to change simulation distance below 5 on singleplayer. The client doesn't accept this and would put it back to 12 (default).
- Fixed villagers being unable to swim up in a 1x1 with lobotomization enabled.
- New optimization for command block executions by caching parsed commands (disabled by default).
- New `enabled` field for dynamic settings which allows you to disable certain settings from being automatically changed.
You can no longer remove the setting entirely as the config suggested doing before as this was broken.
### Fixed
- Fix dynamic settings not loading properly when the config file contained errors.
This would cause things like the mobcap percentage to remain uninitialized at -1, stopping mobspawning.
- New optimization for command block executions by caching parsed commands (disabled by default).
- New `enabled` field for dynamic settings which allows you to disable certain settings from being automatically changed.
You can no longer remove the setting entirely as the config suggested doing before as this was broken.
### Fixed
- Fix dynamic settings not loading properly when the config file contained errors.
This would cause things like the mobcap percentage to remain uninitialized at -1, stopping mobspawning.
- New optimization for command block executions by caching parsed commands (disabled by default).
- New `enabled` field for dynamic settings which allows you to disable certain settings from being automatically changed.
You can no longer remove the setting entirely as the config suggested doing before as this was broken.
### Fixed
- Fix dynamic settings not loading properly when the config file contained errors.
This would cause things like the mobcap percentage to remain uninitialized at -1, stopping mobspawning.
- New optimization for command block executions by caching parsed commands (disabled by default).
- New `enabled` field for dynamic settings which allows you to disable certain settings from being automatically changed.
You can no longer remove the setting entirely as the config suggested doing before as this was broken.
### Fixed
- Fix dynamic settings not loading properly when the config file contained errors.
This would cause things like the mobcap percentage to remain uninitialized at -1, stopping mobspawning.
- Fixed compatibility with 1.20.6 NeoForge loader changes.
- Fixed a bug with activation range immunization that unnecessarily broke redstone contraptions.
- Fixed compatibility with 1.20.6 NeoForge loader changes.
- Fixed a bug with activation range immunization that unnecessarily broke redstone contraptions.
- `mobcap-modifier` was replaced with `additional-capacity` in the mobspawning configuration.
- Uses a constant value instead of a modifier as it isn't affected by changes in mobcap percentage.
- Very low mobcap percentages could otherwise cause spawners and such to basically never spawn with some configurations.
- `mobcap-modifier` was replaced with `additional-capacity` in the mobspawning configuration.
- Uses a constant value instead of a modifier as it isn't affected by changes in mobcap percentage.
- Very low mobcap percentages could otherwise cause spawners and such to basically never spawn with some configurations.
- `mobcap-modifier` was replaced with `additional-capacity` in the mobspawning configuration.
- Uses a constant value instead of a modifier as it isn't affected by changes in mobcap percentage.
- Very low mobcap percentages could otherwise cause spawners and such to basically never spawn with some configurations.
- `mobcap-modifier` was replaced with `additional-capacity` in the mobspawning configuration.
- Uses a constant value instead of a modifier as it isn't affected by changes in mobcap percentage.
- Very low mobcap percentages could otherwise cause spawners and such to basically never spawn with some configurations.
- Entirely rewritten the mod's [configuration](<https://github.com/Wesley1808/ServerCore/tree/1.20.4/docs/config/DEFAULT.md>) in YAML. Config files are now stored under `config/servercore`.
- Expanded upon activation range by making activation types fully configurable.
- Improved the `/statistics entities` command to show how many mobs are affected by activation range.
- Added a much requested mobspawning configuration:
- Has the ability to modify the spawnrate and mobcaps of each individual spawngroup.
- Provides optional functionality to force mobcaps to apply to zombie reinforcements, spawners and nether portal randomticks.
### Fixes
- Fixed several issues with activation range.
- Fixed an incompatibility with night-config-fixes (will need dependency override for now).
- Improved compatibility with some chunk loader mods regarding random ticking.
- Fixed the mod icon resource.
- Fixes an incompatibility (startup crash) with VMP's `exp_use_optimized_chunk_ticking_iteration`
- Adds support for forge registries `excluded_entity_types`
- Fixes an incompatibility (startup crash) with VMP's `exp_use_optimized_chunk_ticking_iteration`
- Adds support for forge registries `excluded_entity_types`
## Updated to 1.20.2
- Added a whitelist entity tag for villager lobotomization: `exclude_lobotomization`.
- Added a toggle for cancelling duplicate fluid random ticks: `optimizations.cancel_duplicate_fluid_ticks`.
- Fixed dependency relocation on forge.
## Updated to 1.20.2
- Added a whitelist entity tag for villager lobotomization: `exclude_lobotomization`.
- Added a toggle for cancelling duplicate fluid random ticks: `optimizations.cancel_duplicate_fluid_ticks`.
- Fixed dependency relocation on forge.
## Updated to 1.20.1
- Fabric API modules are no longer bundled in the mod jar.
- Added `activation_range.excluded_entity_types`, a config option to exclude specific entity types from activation range.
- Replaced the `tick_inactive` setting in activation range with `tick_interval`
`tick_interval` specifies the interval between 'active' ticks whilst the entity is inactive.\
Negative values will disable these active ticks similar to `tick_inactive = false` used to do.
## Updated to 1.20.1
- Added `activation_range.excluded_entity_types`, a config option to exclude specific entity types from activation range.
- Replaced the `tick_inactive` setting in activation range with `tick_interval`
`tick_interval` specifies the interval between 'active' ticks whilst the entity is inactive.\
Negative values will disable these active ticks similar to `tick_inactive = false` used to do.
## Updated to 1.20
- Some config improvements, like being less likely to override user changes to the config file.
- Fixes dynamic settings loading with default values rather than the configured values.
## Updated to 1.20
- Some config improvements, like being less likely to override user changes to the config file.
- Fixes dynamic settings loading with default values rather than the configured values.
## Update: 1.19.4 - Changes
* Added minor optimizations to raycasting.
* Fixes a mod incompatibility with Immersive Portals.
* Fixes dynamic setting config not applying properly on startup.
## Update: 1.19.3 - Changes
* Added an optional workaround for certain long lagspikes / freezes on the client when passing chunkborders (not required on client).
* Fixes an issue with MixinExtras on older fabric loader versions.
* Modified 2 config values to be more configurable:
- auto_save_interval -> autosave_interval (now takes the amount of ticks instead of minutes)
- fast_xp_merging -> xp_merge_chance (for same behavior as the fast_xp_merging setting, set it to 8)
## Fixes
- Fixes an issue with activation range causing some modded entities to not behave correctly, such as Arcanus solar strikes.
- Fixes / improves activation range immunity checks for bees.
- Fixes an error when using /statistics block-entities with lithium's sleeping block entities.
## Dynamic
- Added a new config option that lets you modify the order and which dynamic settings will be changed.
- Added another config option to control by how much each dynamic setting should increase / decrease at once.
## Fixes
- Improved error handling for the config.
- Fixes a mod conflict with MCMT.
- Fixes a mod conflict with newer versions of Very Many Players.
Changes
-
- ServerCore can now use spark's more accurate tick duration metrics if installed.
- Added a new config table `[optimizations]` that lets you disable certain optimizations that don't have "full" vanilla parity.
Fixes
-
- Fixed thread-safety issues with mobspawning (incompatibility with DimThread)
- Fixed incompatibility with Impersonate.
- Fixed incompatibility with Cyclonite.
- Fixed some bugs with Entity Activation Range.
- /mobcaps now works properly when VMP is installed.
- Added /statistics command for identifying and locating large amounts of (block-) entities.
- Large update to command formatting. Please delete the [commands] section in the config.
- Fixes incompatibility / crash with lithium 0.7.10
Changes:
- Re-added /sc as alias for /servercore.
- Fixed incompatibility with mods that include custom mobspawning.
- Fixed incompatibility with mods constructing entities without worlds.
- Improved villager lobotomization
Version 1.2.7 - The Bugfix Update
- Fixes ocelot/cat despawning outside of activation range.
- Fixes dynamic settings not always being synchronized.
- Fixes spawnRadius gamerule not working for respawning players.
- Fixes a lot of bugs caused by the `disable_spawn_chunks` option, including broken datapacks and forceloaded chunks.
- And more...
Mod compatibilities resolved:
- carpet-fixes
- essentials commands (/rtp)
- better nether map
- paradise lost / the aether reborn
Changed:
- Added a few extra lagspike optimizations.
- Added configurable update rates for the dynamic system.
- /sc status -> /servercore status
Changes:
- Removed per player spawns (use other / standalone mods for this feature, as my implementation broke too much)
- Fixed inconsistencies with vanilla with fast_xp_merging enabled.
- Better mod compatibility