STYGION Optimize 0.3.0 (NeoForge 1.21.1)
Curse Maven Snippet
What's new
0.3.0
- Light: after every batch of light changes vanilla copies the light map of every loaded section of the world so other
threads read a stable snapshot (~12 MB a copy at 500 000 sections, many copies a second while ships fly into new
chunks; on one big server this was half of all memory allocation and drove full GC pauses). The map is now split by
8x8 chunk columns and a copy shares every part that did not change: ~0.05 MB and ~0.03 ms instead of ~12 MB and
~11 ms per copy at that size, the same light values (
lightSectionsCopyOnWrite). - Advancements: every changed inventory slot no longer tests every "inventory changed" criterion of the player
(each recipe of each mod has one). The criteria are indexed by the item they look for; only those that can match
the changed item are tested, with vanilla's own test and in vanilla's order (
inventoryTriggerIndex). - Movement: the scan for fire and lava after every move is skipped when it cannot change anything (the entity was not
burning) (
fireCheckSkip). - ParCool x Sable: its reflective method lookups on every ParCool action tick are remembered per class instead of
throwing an exception for each superclass every time (
parcoolSableMethodCache, only with ParCool x Sable). - New, off by default: a player whose own chunk is not loaded yet (fast ship into new terrain, teleport) no longer makes
the whole server wait for it; that player's own server tick pauses until the chunk is there, as vanilla does for
spectators (
playersDontWaitForChunks). - New, off by default: sparser AI for mobs far from every player. They choose new goals and run their brains less
often the farther they are; movement, running goals, navigation and despawning stay every tick. Mobs with a target,
hurt, named, leashed, tamed, riding or ridden, on a Sable ship, raiders and bosses are never throttled
(
[mobs] farMobAi, distances and list in the config). - Diagnostics:
logSyncChunkLoadsOverMslogs when the main thread waits for a chunk, with the chunk and who asked. - Log noise:
[fixes] quietLoggersdrops the INFO and DEBUG lines of the listed loggers (warnings and errors still come through); by defaulttacz_aero_compat, whose 1.8.0 writes a line for every gun shot (~2 200 a day on one server). - The config line in the log lists the new switches.
All Relations
- All Relations
- Embedded Library
- Optional Dependency
- Required Dependency
- Tool
- Incompatible
- Include
This mod has no related projects

