Item Frame Cache
Item Frame Cache is a lightweight client-side Fabric mod designed for very large map walls, map floors, and other displays made from filled maps placed in item frames.
In vanilla Minecraft, item frames are entities. When you move beyond the server's entity tracking distance, those frames can disappear even though the surrounding terrain is still visible.
Item Frame Cache solves this by remembering filled-map item frames after they have been rendered once and keeping them visible when the server stops tracking those entities.
Starting with version 1.5.0, the mod also includes a persistent map data cache, allowing map pixel data received from multiplayer servers to be stored locally and reused when the server no longer provides it.
Features
- Keeps filled maps visible beyond the server's item frame tracking distance
- Designed for huge map walls and map floors with hundreds or thousands of maps
- Persistent map data cache for multiplayer servers
- Cached map data can survive disconnects and game restarts
- Server-provided map data always takes priority over cached data
- Item frame positions remain session-only to prevent stale or ghost maps
- Optimized RAM usage for very large map displays
- LRU + soft-reference memory management for cached map data
- Asynchronous disk reading and writing
- Automatic detection and removal of corrupted cache files
- Automatic cleanup of old cached map data
- Configurable render distance
- Optional frustum culling
- Fully client-side
- Compatible with vanilla servers
- No server installation required
- No Fabric API required
How It Works
When a filled map in an item frame is rendered normally by Minecraft, Item Frame Cache remembers the required render state.
If the server later stops sending that item frame because you move outside its tracking range, the cached render state can continue to be displayed by the client.
Map pixel data received from multiplayer servers is also stored locally. If Minecraft later needs that map data and the server is no longer providing it, Item Frame Cache can restore it from the local cache.
Vanilla data always has priority. When updated map information is received from the server, it replaces the locally cached data.
If a map is removed from an item frame while the client can detect the change, the cached frame is immediately invalidated.
Memory Optimization
Item Frame Cache is designed specifically with very large displays in mind.
Persistent map data uses a limited in-memory cache. By default, only a configurable number of map states are strongly retained in RAM, while additional cached maps can be released by Java when memory is needed and loaded again from disk when required.
Cached item frame render states are also stripped of unnecessary rendering information whenever possible, reducing memory usage when thousands of maps are retained.
Configuration
The mod creates:
config/itemframecache.properties
Default settings:
Properties
render_distance_blocks=512
frustum_culling=true
persistent_map_cache=true
map_cache_memory_entries=512
map_cache_max_age_days=180
log_cache_stats=false

