File Details
Locks Reforged 1.4.8 (Forge 1.20.1)
- R
- Mar 29, 2026
- 645.96 KB
- 233
- 1.20.1
- Forge
File Name
locks_reforged-1.4.8.jar
Supported Versions
- 1.20.1
Curse Maven Snippet
1.4.8
Security
- Lock pin combinations are no longer sent to clients over the network. The server now only transmits the pin count; pin validation remains fully server-authoritative. Previously, the full combo was readable from packets, trivially bypassing the lock picking minigame.
- Network version predicates now enforce strict version matching. Clients and servers with mismatched mod versions are cleanly rejected instead of silently connecting with incompatible packet formats.
- Server-to-client pin attempt packets are now range-validated, rejecting out-of-bounds pin indices.
Bug Fixes
- Fixed locks failing to render on multiplayer clients when the server's
Max Lockable Volumeconfig exceeded the default value. Client-side packet handling no longer re-runs volume/intersection validation that only the server should perform. - Fixed potential client crash (
NullPointerException) when lock packets arrive during dimension transitions or disconnect, before the client level is initialized. - Fixed potential server crash (
NullPointerException) when removing a lockable whose bounding box spans a chunk that has already been unloaded. Unloaded chunks are now skipped gracefully. - Fixed lock-close sound playing to nearby players even when lock placement fails server-side validation (e.g. overlapping an existing lock). Sound now plays only after successful placement.
- Fixed the key crafting recipe consuming all key blanks in the grid but producing only one key. The recipe now accepts exactly one blank per craft.
- Fixed worldgen lock placement only registering in the first chunk when a double chest spans a chunk boundary. All intersecting proto-chunks now receive the lockable.
- Fixed potential
ArrayIndexOutOfBoundsExceptionwhen loading lockables with corrupted or out-of-range transform data from NBT. Invalid indices now fall back to the default transform. - Fixed lock picking GUI springs not animating when pins move (regression from 1.4.2 rendering migration).
Textures
- Changed the Netherite Lock Pick texture.
- Fixed the unlocked Netherite Lock texture.
- Darkened the Netherite lock mechanism texture.
Cleanup
- Removed dead code: unused
LocksCapabilities.registerCaps(),LocksConfig.canGen(),WrittenBookItemimport, and commented-out code blocks acrossLock,Cuboid6i,LockPickingContainer, andLocksClientUtil.
Guaranteed Lock Generation
- All generated chests with loot tables now receive a lock. Chests that previously fell below the lowest loot value threshold (or failed the 85% generation chance roll) now get a wooden lock instead of no lock at all.
- The
Generation Chanceconfig setting is no longer used — all generated chests are locked unconditionally. The setting is kept in the config file for backwards compatibility.

