github CaffeineMC/lithium-fabric mc1.18.1-0.7.8
Lithium 0.7.8 for Minecraft 1.18.1

2 years ago

This release adds many new optimizations and fixes a few bugs. Besides the new general entity and allocation optimizations the special case of many entities being stored in a single ladder is optimized.

Additions

  • new: ai.task.memory_change_counting: cache task required memory state test result
  • new: alloc.blockstate: copy optimized BlockState withTable implementation from hydrogen
  • new: alloc.nbt: optimized CompoundTag HashMap and more alloc patches (#314) by Maity
  • new: chunk.entity_class_groups: entity collision optimizations also work on client side
  • new: collections.attributes: use fastutil hash set/map
  • new: collections.brain: use fastutil and flattened brain collections
  • new: collections.entity_by_type: use fastutil hashmap to store entity by type collections
  • new: collections.entity_ticking: clone entity list instead of iterating
  • new: entity.collisions.fluid: use chunk.block_counting to skip fluid drag calculations when there is no fluid nearby
  • new: entity.collisions.unpushable_cramming: optimize entity collisions inside ladders (#345) by 2No2Name
  • new: entity.fast_elytra_check: skip flight stop check when not flying
  • new: entity.fast_hand_swing: only calculate hand swing progress when hand is swinging
  • new: entity.fast_powder_snow_check: reorder blockstate checks after faster freezing check
  • new: entity.skip_equipment_change_check: skip comparing visible equipment to previously sent equipment when the equipment wasn't modified
  • new: profiler: remove indirection when accessing profiler

Changes

  • change: chunk.no_locking: set the LockHelper field in PalettedContainer to null (#348) by malte0811
  • change: entity.data_tracker.no_locks: use shared NullReadWriteLock
  • change: handle class analysis crash using fallback

Fixes

  • fix: block.hopper: hopper using old stacklist of inventories after replacing stacklist
  • fix: entity.collisions.movement: particles not passing through boats and shulkers
  • fix: entity.collisions.movement: remove different from vanilla isBoxEmpty checks
  • fix: entity.collisions: use correct 1e-7 margins for block collisions
  • fix: entity.fast_retrieval: use vanilla retrieval for huge volumes
  • fix: remove accidental dependency of block counting to pathfinding optimization

You should not download the api package below unless you are a developer trying to compile against Lithium's API

Don't miss a new lithium-fabric release

NewReleases is sending notifications on new releases.