Tags
Creators
Details
Licensed GPL-3.0-only
Published 8 months ago
All versions
1.1.0
Beta
Journey Mod 1.1.08 months ago 20
Compatibility
Minecraft: Java Edition
1.21.1
Platform
NeoForge
Supported environments
Client and server
Changes
📋 Changelog
Version 1.1.0
Release Date: October 30, 2025
Major Features
- 🎯 Dynamic Unlock Thresholds: Unlock requirements now adapt to each item!
- Stack size 1 items (tools, armor, etc.): Require only 1 item
- Raw materials (ores, wood, etc.): Require full stack size (64 for most, 16 for ender pearls)
- Crafted items (Depth 1): Require 50% of stack size (32 for most items)
- Crafted items (Depth 2): Require 25% of stack size (16 for most items)
- Complex items (Depth 3+): Require only 1 item
- 🔍 Recipe Depth Analysis: Automatically calculates crafting complexity
- Depth 0: Raw materials with no recipe
- Depth 1: Items crafted from raw materials
- Depth 2+: Items requiring multiple crafting steps
- Handles cyclic recipes and multiple recipe paths
Implementation Details
- Added
RecipeDepthCalculatorclass for analyzing recipe complexity - Caches recipe depths for performance
- Detects and breaks recipe cycles
- Finds minimum depth when multiple recipes exist
- Dynamic threshold calculation per item
UI Changes
- Updated deposit tab to show "Dynamic per item" threshold
- Improved unlock messages to show required count
- Better progress messages showing current/needed amounts
Examples
- Diamond Pickaxe (stack 1): 1 required ✨
- Iron Ore (raw, stack 64): 64 required
- Iron Ingot (depth 1, stack 64): 32 required
- Iron Block (depth 2, stack 64): 16 required
- Redstone Comparator (depth 3+, stack 64): 1 required ✨
Version 1.0.1
Release Date: October 30, 2025
Bug Fixes
- 🐛 Fixed GUI Rendering Issues:
- Added proper slot outlines for all inventory slots (now visible with dark borders)
- Fixed text overlap - moved "Journey Mode" title above tabs
- Fixed deposit tab instruction text positioning
- Added proper borders and backgrounds for Journey tab item slots
- 🔄 Fixed Data Synchronization:
- Unlocked item count now properly updates on client
- Added
SyncJourneyDataPacketfor server-to-client data sync - Data syncs when menu opens and after each deposit
- Journey tab now correctly shows unlocked items count
Technical Changes
- Added
SyncJourneyDataPacketfor client-server data sync - Added
updateFromSync()method toJourneyDataAttachment - Enhanced
renderBg()to draw slot backgrounds with borders - Improved screen layout and text positioning
- Updated network packet registration
Version 1.0.0 (Initial Release)
Release Date: October 30, 2025
Features
- ✨ Core Journey Mode System: Track item collection and unlock infinite access after depositing 30 items
- 🎨 Dual-Tab GUI:
- Deposit tab with single slot for item deposits
- Journey tab displaying all unlocked items in a scrollable grid
- 🔄 Client-Server Networking: Synced item unlocking and retrieval system
- 💾 Data Persistence: Player data attachment with Codec serialization for save/load
- ⌨️ Keybind: Press
Jto open Journey Mode menu - 📊 Progress Tracking: Visual feedback showing collection progress and unlock status
- 🎁 Infinite Item Retrieval: Click items in Journey tab to retrieve them (1x or 64x with Shift)
Technical Implementation
- NeoForge 1.21.1 compatibility (NeoForge 21.1.72)
- Custom
AttachmentTypefor player data storage - Custom
MenuTypeand screen for GUI - Network packet system for client-server communication
- Event system for player data cloning and menu opening
Known Limitations
- Unlock threshold is hardcoded to 30 items (no config file yet)
- Player data clone on death/respawn needs improvement
- GUI uses placeholder rendering (no custom texture file)
- No item filtering or search in Journey tab
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:OMRJLjO7:p2ByTbm9"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:OMRJLjO7:p2ByTbm9"
}

