
Invasive optimizations for other mods, aiming to reduce server-side (tick) lag.
The invasive nature of these changes makes them more likely to crash or otherwise break.
Please report such issues to the issue tracker and I will try to respond to them in a timely manner.
Each change can also be individually toggled through the config and should solve any issues temporarily while you wait for a fix.
Optimizations included in this mod fall under one of the following categories:
Current optimizations:
accessories.roundabout_collection (1): Avoid iterating Map entrySet by directly accessing underlying keySet. (PR)botanypots.hopper_insertions (1): Hopper Botany Pot exponential insertion backoff and emptiness tracking (PR)create.fail_fast_clipboard_migration (1): Fails fast when attempting clipboard migration in ItemStack.<init>, reducing impact to this extremely common operation. (PR)pastel.nuke_item_predicate_mixin (4): Nukes Pastel's ItemPredicateMixin as it is unnecessary and expensivepipez.constant_fullness_checks (2): Turns connection/inventory fullness into O(1) operationspipez.early_exits (2): Reduces unnecessary work done by exiting targeted functions early if the right conditions are metpipez.extract_looped_work (2): Move some work out of loops to avoid duplicated workpipez.nbt_comparisons (2): Drastically improves performance of NBT comparisons by minimizing serialization/deserialization operationspipez.stream_abuse (2): Reduces abuse of Streams in hot paths to reduce allocation rate (PR)xycraft_machines.unnecessary_resorting (3): Extractors resort their recipes every so often but is usually not necessaryxycraft_machines.redstone_checks (3): Extractors check for redstone signals every tick rather than only when their neighbours update