promotional bannermobile promotional banner

Lucis

A lightweight server-side light engine that speeds up any light related tasks drastically up to ~8-12x faster!
Back to Files

[Fabric 1.21.1] Lucis v1.0.2

File namelucis-fabric-1.21.1-1.0.2.jar
Uploaded
Jul 15, 2026
Downloads
34
Size
153.1 KB
Mod Loaders
Fabric
File ID
8437855
Type
R
Release
Supported game versions
  • 1.21.1

Curse Maven Snippet

Fabric

modImplementation "curse.maven:lucis-1604252:8437855"

Learn more about Curse Maven

What's new

[1.0.2] - 2026-07-15

This update should technically fix most if not all obscure lighting issues related to client syncing and smooth overall server-side calculations. To mention, now Lucis uses much more optimized data structures and bitmasks making calculations significantly faster.

Added

  • Added runtime region batching for block changes, including deduplication by block position and promotion of large update batches to full regional relights.
  • Added bulk runtime write handling to suppress per-block updates and enqueue regional full relights for large block-edit operations.
  • Added packed RuntimeLightChangeBuffer and RuntimeRegionBatch paths for lower-allocation runtime relighting.

Changed

  • Reworked runtime update scheduling to group work by runtime region, preserve pending batches, coalesce full relights, and requeue skipped batches more safely.
  • Reworked runtime material change handling to skip no-op changes and run sky/block relighting only when affected light properties actually changed.
  • Reworked light material caching to use packed integer values with dynamic opacity handling and explicit glass, foliage, skylight, and runtime-relevant flags.
  • Optimized region extraction by reading chunk sections directly and reusing scratch buffers during population.
  • Optimized block and skylight propagation queues with power-of-two ring/bucket buffers and bitmask-based highest-level lookup.
  • Optimized nibble packing with row-base unrolling and a dedicated section byte-packing helper.
  • Optimized publishing to skip clean chunks in multi-chunk regions and handle single-chunk regions more directly.
  • Changed async worldgen relighting to extract chunk data before worker execution and track pending worldgen tasks.

Fixed

  • Fixed race conditions around async relighting by working from prepared/extracted light data and publishing against the expected chunk instance.
  • Fixed rare cases where chunk light could be lost during runtime publishing.
  • Fixed stale/glowing skylight below newly placed roofs, including deep sections and large roof slices outside the previous shallow repair band.
  • Fixed skylight behavior for partial opacity, leaves, and transparent glass material changes.
  • Fixed dirty-section publication when skylight-relevant material changes do not change the numeric light level.
  • Fixed block-light runtime updates so opacity-only changes near existing block light can trigger recomputation.
  • Fixed runtime queue behavior when a region is already scheduled or submit limits are hit.

Removed

  • Removed the obsolete benchmark settle timer.
  • Removed the temporary RegionChunkSnapshot path after replacing it with the lower-overhead extraction/runtime flow.
  • Removed the old object-based RuntimeLightChange record in favor of packed runtime change buffers.

This mod has no additional files