Releases: ahm3tak1f616/Safepaths
Releases · ahm3tak1f616/Safepaths
Release list
v2.0.0 - The Paved Horizons Update
What's Changed in v2.0.0
⚡ Speed Roads & Self-Mapping
- Speed-Only Road Blocks: You can now map any block to itself (e.g.
stone_bricks -> stone_bricksorgravel -> gravel) in the config or GUI! Walking over these blocks grants the full movement speed bonus without trampling, replacing, or tracking decay on the block. - Gravel Road Preservation: By popular demand, gravel roads in the default config are now self-mapped (
minecraft:gravel -> minecraft:gravel). Your carefully placed gravel roads will grant speed boosts and will no longer be turned into dirt paths. - Conflict & Duplicate Resolution: Added deterministic conflict resolution (
putIfAbsent). If duplicate or conflicting rules are declared, the first rule takes priority cleanly without toggling or breaking in-game.
🎨 In-Game Visual Editor & GUI
- Visual Conversions Screen: Configure your path conversions directly in-game! Includes an interactive block palette, real-time search filter, item icons, and animated selection borders.
- Master Speed Controls: Easily toggle the speed boost ON/OFF and adjust the global speed multiplier directly inside the conversion screen.
- Config Screen Stability: Added null-safe tooltip checks to the NeoForge mod configuration menu (
IConfigScreenFactory), ensuring crash-free access from the in-game Mods menu.
⏳ Authentic Decay & Memory Persistence
- Smart Decay Restoration: Paths that decay now revert to their authentic original ground block (e.g. sand paths revert to sand, peat paths to peat) rather than always turning into plain dirt.
- Dimension
SavedDataPersistence: Trample progress and decay timers are now cleanly saved in dimension NBT data, persisting across server reboots and dimension transitions without memory leaks. - Unloaded Chunk Pruning: Distant and unloaded path tracking entries are automatically pruned after a multi-day grace period, ensuring zero chunk-loading lag.
🌐 Biome Mod Compatibility
- Vanilla-Block Worldgen Overhauls: Verified 100% out-of-the-box compatibility with Terralith and Geophilic without requiring any extra setup.
- Modded Surface Soil Defaults: Pre-configured out-of-the-box conversions for popular biome mods:
- Oh The Biomes We've Gone (BWG)
- Biomes O' Plenty (BOP)
- Regions Unexplored
🧪 Automated Testing & Code Quality
- Automated GameTest Suite: Verified with 7 passing in-engine GameTests covering pathing heuristics, farmland immunity, and persistent memory.
- Refined Architecture: Cleaned up code structure, eliminated redundant suppression warnings, and streamlined event execution.
📦 Download & Installation
- Minecraft Version:
1.21.1 - Mod Loader:
NeoForge 21.1.235+ - File:
safepaths-2.0.0.jar
Full Changelog: v1.2.0...v2.0.0
v1.2.0 - Smooth Speed Boost, Decay Refresh, Translations & Permissions
What's Changed in v1.2.0
⚡ Movement & Immersion
- Smooth Speed Transitions: Added a 15-tick grace period and broad bounding-box checks for the path speed boost, eliminating jarring camera/FOV jitter when transitioning over slabs, stairs, jumps, and 1-block road gaps.
- Dynamic Path Refresh: Walking on existing dirt paths now refreshes their decay timestamp, preventing active, frequented paths from decaying.
- Concurrent Modification Fix: Safely queued decay reverts during level ticks, preventing server crashes during mass path decay.
🌐 Internationalization
- Multi-Language Support: Added complete in-game and mod menu localizations for 9 languages:
- 🇺🇸 English (
en_us) - 🇩🇪 German (
de_de) - 🇪🇸 Spanish (
es_es) - 🇫🇷 French (
fr_fr) - 🇯🇵 Japanese (
ja_jp) - 🇧🇷 Portuguese (Brazil) (
pt_br) - 🇷🇺 Russian (
ru_ru) - 🇹🇷 Turkish (
tr_tr) - 🇨🇳 Chinese (Simplified) (
zh_cn)
- 🇺🇸 English (
📜 Licensing & Permissions
- Modpack Permissions: Modpacks are now explicitly permitted to include Safepaths freely without asking, provided proper credit and a link to the project repository are given. Standalone re-uploading and distribution of modified binaries remain restricted under All Rights Reserved.
🛠️ Code Quality & Tests
- Cleaned up IDE code inspections and suppressed false alarms across event subscribers and GameTests.
- Streamlined test suite helpers for automated verification.
Full Changelog: v1.1.0...v1.2.0
Safepaths v1.1.0
1.1.0 - 2026-07-17
Changed
- License switched from MIT to All Rights Reserved: modpacks and redistribution require prior permission (contact via GitHub)
- Optimization and version bump
Full Changelog: v1.0.2...v1.1.0
Safepaths v1.0.2
1.0.2 - 2026-07-14
Added
- GameTests for pathable tags, path memory, path formation, and farmland protection (
./gradlew runGameTestServer) - In-game config screen (Mods → Safepaths → Config) wired to lang keys
- Optional MineColonies dependency metadata in
neoforge.mods.toml - README datapack tag documentation
- Optimized mod logo (
icon.png, 128×128)
Improved
- Entity tick path logic is gated on an allow-list before block lookups (cheaper for unrelated mobs)
- Speed boost re-applies when
speedMultiplier/enableSpeedBoostchange mid-session - Cleanup interval scales with
constructionTime/decayTime(clamped 20–1000 ticks) - Unloaded path entries older than
2 × decayTimeare pruned so memory cannot grow forever - Last-step cache cleared on level unload and server stop
- Datapack tags:
#safepaths:path_creators,#safepaths:path_blocked,#safepaths:cannot_become_path(same defaults as before)
Fixed
- Path decay timers now refresh when entities walk on existing dirt paths
- Path/trample memory is saved per dimension (
SavedData), so decay and original-block restore survive restarts and stay isolated between worlds - Stale path memory is cleared on explosions, piston moves, and fluid block placement, and invalid entries are dropped when the block no longer matches
- Speed boost now uses
ADD_MULTIPLIED_TOTALwith default0.2so it matches Speed I (+20%) for all entities - NeoForge/Minecraft dependency ranges now come from Gradle properties
- README accurately describes decay restore, farmland protection, and the speed boost
- Path trample and decay now track dimension + position, so different worlds no longer share the same path data
- Paths only form from steps while on the ground (flying, falling, and mid-jump no longer count)
requiredPassesis limited to 1–1000 so invalid config values cannot break the mod
Full Changelog: v1.0.0...v1.0.2
Safepaths v1.0.1
- Refactored chunk loading logic: Optimized LevelTickEvent to prevent redundant checks.
- Performance improvement: Added isLoaded checks to ensure path creation only occurs in active chunks, reducing overhead.
- Compatibility: Refined event registration to adhere to NeoForge 1.21.1 standards.
- Cleaned up project environment and resolved build path issues.
- v1.0.1
Safepaths v1.0.0 - Initial Release
- Initial release
- v1.0.0