All versions
1.7.2
Release
Quests Cobb 1.7.2yesterday 11
Compatibility
Minecraft: Java Edition
1.21.1
Platform
Fabric
Supported environments
Client and server
Changes
1.7.2
Added
- Configurable Economy Reward Command:
- Added the
economyRewardCommandsetting inconfig/quests/quests.json, with support for{player}and{amount}placeholders. - Defaults to
balance {player} add {amount}and validates command availability before delivering rewards.
- Added the
- Automated Regression Checks:
- Added 48 checks covering custom reward IDs, daily counters, evolution tracking, reward validation, persistence, JSON loading, and Pokédex progress.
- Integrated the regression suite into the Gradle
checkandtesttasks.
- Clean Source Distribution:
- Added the
releaseSourcestask to package the mod sources, documentation, and build files without caches, worlds, logs, or third-party projects.
- Added the
Changed
- Grouped "Claim All" Requests:
- Replaced individual reward requests with a single request for the selected category.
- Added a delivery summary and a single progress update after processing the rewards.
- Persistent Reward Delivery Tracking:
- Reward claims are now recorded before items or external commands are delivered.
- Interrupted or partially completed deliveries require administrator verification before another attempt, preventing automatic replay of previous effects.
- Build and Dependency Configuration:
- Declared Cobblemon
>=1.7.3 <1.8.0, Fabric Language Kotlin, and Java 21 as required dependencies. - Removed Windows-specific certificate settings from the shared Gradle configuration.
- Enabled consistent archive ordering and timestamps, and included the license in the JAR.
- Declared Cobblemon
- Bumped mod version to 1.7.2.
Fixed
- Custom Quest Reward Claiming:
- Fixed rewards being rejected when category or quest IDs contain underscores, such as
ma_categorieandcapture_5. - Added exact reward ID matching and rejection of ambiguous definitions.
- Fixed rewards being rejected when category or quest IDs contain underscores, such as
- Accurate Pokédex Progress:
- Pokémon that have only been encountered no longer count as obtained species.
- The quest menu and server reward checks now share the same
CAUGHTfiltering while preserving historical Quests captures.
- Reward Duplication and Delivery Failures:
- All reward items, quantities, and commands are validated before delivery, including additional rewards attached to built-in quests.
- Fixed invalid later items allowing earlier items to be repeatedly collected.
- Economy and reward command failures are now checked, logged, and reported instead of being silently ignored.
- Reward item quantities are split into valid inventory stacks.
- Daily Progress After Midnight:
- Daily baselines are initialized before activity counters change, preventing actions completed before opening the menu from being lost.
- Covers captures, evolutions, trades, level-ups, battles, shiny rolls, and RCT victories.
- Special Poké Ball Tracking:
- Capture counters now support every recognized Poké Ball instead of only Poké Balls, Great Balls, Ultra Balls, and Master Balls.
- Daily Evolution Quests:
- Multiple evolution quests now track their progress independently, including eligible Pokémon UUIDs and migration of existing progress.
- Final evolution checks use the Pokémon's actual form and reject completion when evolution data is unavailable.
- Reliable Progress and Configuration Saves:
- Failed progress saves now produce diagnostics and retry after 10 seconds.
- Added synchronized temporary writes, atomic replacement, backup recovery, and protection against overwriting unreadable progress data.
- Administrative save failures are now reported, and configuration writes preserve backups.
- Playtime progress is marked for saving every 600 server ticks.
- Quest Menu and Client Session State:
- Progress updates now refresh the existing quest screen, preserving scroll position and the milestone panel.
- Disconnecting clears cached categories, progress, and notification history to prevent state from carrying over between servers.
- Fixed a successful shoulder reward claim also displaying an unknown reward message.
- Battle and Poké Ball Cache Cleanup:
- RCT faint tracking is cleared after victories and fleeing, expires after one hour, and is purged when the server stops.
- Poké Ball impact records are cleaned periodically and removed on capture, disconnect, and shutdown, even when fewer than 101 records exist.
- JSON Configuration and Documentation:
- Invalid custom and daily quest entries are isolated before sorting so valid entries can still load.
- Configuration diagnostics now identify the affected files and invalid entries.
- Corrected documentation to reference
config/quests/quests.json;/q reloadnow displays the configuration directory and file names. - Saving settings through the administration screen now preserves the configured economy command.
- Mod Icon: Corrected the resource path to
assets/quests/icon.pngso the icon is included at the location declared in the mod manifest.
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:AE9CEHCV:YY5InzRB"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:AE9CEHCV:YY5InzRB"
}

