Lithium

Lithium

Mod

No-compromises game logic/server optimization mod

Client or server Optimization

13.35M downloads
11.4k followers
Follow Save
Host your Minecraft server on BisectHosting - get 25% off your first month with code MODRINTH.
Filter loader...
Filter versions...
Filter channels...

Lithium 0.13.1 fixes one bug and a compatibility issue with carpet mod.

Fixes

  • fix: incompatability with fabric-carpet's scarpet explosion event. (#565) (Thanks to wendavid552)
  • fix: disable broken mixin.world.game_events.dispatch optimization by default

Lithium 0.13.0 is the first release for 1.21.1. It fixes an issue and adds two new optimizations for goats and frogs.

Additions

  • new: LongJumpTask random weighted choice optimization
  • new: nonvanilla FrogAttackablesSensor optimization (enable with mixin.minimal_nonvanilla=true in the lithium.properties file. The frog target selection will deviate slightly from vanilla behavior.)

Fixes and Changes

  • fix: Hoppers not transferring to ChiseledBookshelfBlockEntity when multiple books are in a stack
  • change: replace hashmap in brain collection optimization
  • change: enable explosion exposure optimizations by default

Lithium 0.13.0 fixes an issue and adds two new optimizations for goats and frogs.

Additions

  • new: LongJumpTask random weighted choice optimization
  • new: nonvanilla FrogAttackablesSensor optimization (enable with mixin.minimal_nonvanilla=true in the lithium.properties file. The frog target selection will deviate slightly from vanilla behavior.)

Fixes and Changes

  • fix: Hoppers not transferring to ChiseledBookshelfBlockEntity when multiple books are in a stack
  • change: replace hashmap in brain collection optimization
  • change: enable explosion exposure optimizations by default

Lithium 0.12.5 is a bugfix release, fixing a critical hopper minecart issue affecting comparators.

What's Changed

  • fix: Item stack resurrection causing incorrect internal state of LithiumStackList

Lithium 0.12.7 fixes a few issues like sculk sensors not working after a chunk reload, too few chickens spawning from thrown eggs, fluids flowing towards the wrong hole and hopper minecarts making inventories have incorrect signal strengths. In case you find any bugs, please report them at the issue tracker. You can check https://github.com/CaffeineMC/lithium-fabric/blob/mc1.21-0.12.7/lithium-mixin-config.md for a description of each optimization and how to disable it.

What's changed

  • fix: fluid flow using incorrect direction in bfs
    • Affected all fluid flowing (#526)
  • fix: Item stack resurrection causing incorrect internal state of LithiumStackList
    • Affected comparators after hopper minecarts performed a failed item extraction attempt from the inventory (#524)
  • fix: empty space search incorrectly returning space as fully occupied when completely empty
    • Affected thrown eggs, entity pose calculations and entity positioning inside nether portals (#525)
  • fix: chunk reload causing game event dispatchers to not be registered
    • Affected all types of game event listeners (e.g. sculk sensors and catalysts, wardens, allays) (#522)

Lithium 0.12.5 is the first release for 1.21. It includes several new optimizations. For now, some new optimizations are disabled by default, because mod compatibility issues still need to be resolved. Check https://github.com/CaffeineMC/lithium-fabric/blob/mc1.21-0.12.5/lithium-mixin-config.md for a description of each optimization and how to disable them if any issues arise.

Additions

  • new: optimized explosion entity exposure (thanks to RacoonDog)
  • new: general raycast optimization
  • new: empty space search optimization for entity positioning when using nether portal
  • new: disable useless nearest item sensor in goats
  • new: skip sprinting particle creation logic used by all mobs on server side
  • new: fluid flow (nearest hole search) optimization
  • new: skip ticking mob equipment when there aren't any tickable enchantments (only soul speed)
  • new: avoid creating and dispatching game events (vibrations) to sections without any listeners
  • new: skip accessing chunks when trying to dispatch game events

Changes

  • change: vanilla's supporting block used for additional entity movement fast- path
  • change: track mob equipment using the item stack listening system to optimize checking whether updates must be sent
  • change: enable block entity supporting block caching by default

Bugfixes

  • fix: wolf armor not updating visually
  • fix: use correct entity box for world border collision check
  • fix: neighbor path node types initialized to OPEN, allowing mobs to pathfind directly next to dangerous blocks

Lithium 0.12.4 is a bugfix release, fixing a critical pathfinding issue.

What's Changed

  • fix: wolf armor not updating visually
  • fix: use correct entity box for world border collision check
  • fix: neighbor path node types initialized to OPEN, allowing mobs to pathfind directly next to dangerous blocks

Lithium 0.12.3 is the first release for 1.20.6. The new minimal_nonvanilla package is introduced, which is meant for optimizations which technically are different from vanilla in an observable way, but do not affect any gameplay or any contraptions. If any negative effect on your contraptions or gameplay is noticeable, please report this to our issue tracker, as this would be considered to be a bug. Check https://github.com/CaffeineMC/lithium-fabric/blob/mc1.20.6-0.12.3/lithium-mixin-config.md for a detailed description of what each package does, and how to disable certain optimizations if needed.

What's Changed

  • Replace axis.choose() with switch in VoxelShapeAlignedCuboid
  • Move mixin.experimental.chunk_tickets package to minimal_nonvanilla.world.expiring_chunk_tickets
  • Move mixin.world.chunk_tickets package to mixin.collections.chunk_tickets

Lithium 0.12.2 is the first release for 1.20.5.

What's Changed

  • Mod compatibility improvements contributed by embeddedt, ishland and Steveplays28
  • Added missing lithium$ prefixes to mixin methods
  • Slight improvements and 1.20.5 adaptation for existing optimizations

Full Changelog: https://github.com/CaffeineMC/lithium-fabric/compare/mc1.20.4-0.12.1...mc1.20.5-0.12.2

Lithium 0.12.1 is the first release for 1.20.4.

You can check out all configuration options at description of all optimizations here.

Full Changelog: https://github.com/CaffeineMC/lithium-fabric/compare/mc1.20.2-0.12.0...mc1.20.4-0.12.1

Additions

  • Very experimental item entity optimizations (disabled by default for now)
  • Caching of block class analysis, reducing startup times

Lithium 0.12.1 is the first release for 1.20.3.

You can check out all configuration options at description of all optimizations here.

Full Changelog: https://github.com/CaffeineMC/lithium-fabric/compare/mc1.20.2-0.12.0...mc1.20.3-0.12.1

Additions

  • Very experimental item entity optimizations (disabled by default for now)
  • Caching of block class analysis, reducing startup times

Lithium 0.12.0 is the first release for 1.20.2 and includes a new package for experimental optimizations which are disabled by default.

You can check out all configuration options at description of all optimizations here.

Full Changelog: https://github.com/CaffeineMC/lithium-fabric/compare/mc1.20.1-0.11.2...mc1.20.2-0.12.0

Additions

  • new: several optimizations in the experimental package
  • new: (experimental) entity optimizations based on block caching
  • new: (experimental) iterate entities by chunk for spawning conditions
  • new: small ice spreading check optimization
  • new: Only purge expiring ChunkTickets

Lithium 0.11.2 for Minecraft 1.20.1 is the same as the previous release, just for 1.20.1 instead of 1.20.

You can check out all configuration options here.

Lithium 0.11.2 is the first release for 1.20 and includes a few mod compatibility improvements and a slight improvement to the nether portal search optimization. You can check out all configuration options at description of all optimizations here.

Additions

  • new: ai.poi.fast_portals: optimized preloading chunks (by Crec0 and 2No2Name)

Fixes

  • fix: Use main worker executor for block_tracking instead of common ForkJoinPool (by embeddedt)
  • fix: Update listener range on addition of AI goals

Changes

  • change: Remove mixin.item (Minecraft 1.20 Incompatibility)

Lithium 0.11.1 fixes a few mod compatibility issues and includes some new performance improvements. You can check out all configuartion options at description of all optimizations here.

Additions

  • new: collections.fluid_submersion: Use faster collection and avoid FluidTag equality tests

Fixes

  • fix: several mod compatibility issues

Changes

  • change: avoid Stream API in fire/lava check in Entity movement code
  • change: split alloc.enum_values package to allow disabling single mixins

Lithium 0.11.1 fixes a few mod compatibility issues and includes some new performance improvements. You can check out all configuartion options at description of all optimizations here.

Additions

  • new: collections.fluid_submersion: Use faster collection and avoid FluidTag equality tests

Fixes

  • fix: several mod compatibility issues

Changes

  • change: avoid Stream API in fire/lava check in Entity movement code
  • change: split alloc.enum_values package to allow disabling single mixins

Lithium 0.11.1 fixes a few mod compatibility issues and includes some new performance improvements. You can check out all configuartion options at description of all optimizations here.

Additions

  • new: collections.fluid_submersion: Use faster collection and avoid FluidTag equality tests

Fixes

  • fix: several mod compatibility issues

Changes

  • change: avoid Stream API in fire/lava check in Entity movement code
  • change: split alloc.enum_values package to allow disabling single mixins

Project members

jellysquid3

Owner

2No2Name

Maintainer

Details

Licensed LGPL-3.0-only
Published 4 years ago
Updated 16 days ago