Peterwolf's Groundworks Conveyor Belt 0.1.1+26.3
Curse Maven Snippet
What's new
[0.1.1+26.3] - 2026-10-28
Performance & Optimization
- Massive Chute Discharge Search Optimization: Added an immediate horizontal AABB bounding box pre-filter in
findReceiverUnderChuteandfindLoadedUnderChute. Eliminated up to 200 redundant vertical raycast checks per conveyor belt on every server tick, removing an \(O(N^2)\) server tick bottleneck when many belts operate simultaneously. - Cached Collision Geometry: Added lazy caching of
collisionPartsinConveyorBeltEntity. Eliminated per-tick and per-collision trigonometry and continuousnew AABBobject allocations. - Removed Redundant Client Tick Recalculation: Removed
updateBoundingBox()from clienttick(), updating bounding boxes only upon placement, completion, height adjustment, or network sync. - Fast Air Skip in Hopper Ingestion: Added immediate
state.isAir()checks iningestHopperTerrainon both conveyor belts and truck dump hoppers, avoiding reflection and cell storage lookups when no blocks are overhead. - Zero-Allocation Custom Geometry Rendering: Rewrote
ConveyorBeltStreamRendererto emit vertices directly with precomputed normals, eliminating millions ofVector3fandfaceNormalheap allocations per second and solving GC pause stuttering during rendering. - Cached Network Deserialization: Cached deserialized parcel lists and composition data on the client, eliminating thousands of
String.splitregex parsing calls per second inextractRenderState. - Fast Parcel Serialization: Replaced slow
String.formatcalls with fast numeric rounding inBeltParcel.serializeList. - Loaded Conveyors List Registration: Replaced
CopyOnWriteArrayList.contains()per-tick server checks with a boolean registration flag.
This mod has no additional files

