Tags
Creators
Details
Licensed LGPL-3.0-or-later
Published 3 years ago
Updated 3 weeks ago
All versions
3.0.0-beta-1
Beta
UltimateAdvancementAPI 3.0.0-beta-110 months ago 329
Compatibility
Minecraft: Java Edition
1.21.x
1.20.x
1.19.x
1.18.x
1.17.x
1.16.x
1.15.x
Platforms
Bukkit
Paper
Spigot
Changes
- Updated Java version to 17
- Advancement displays overhaul to allow, for example, multi-language or the usage of placeholders in displays:
- Advancement displays are now abstract classes and use
BaseComponents by default - Now there are three kinds of displays:
- Immutable (
AbstractImmutableAdvancementDisplay), which always returns the same values from the same methods (i.e., display properties never change) - Per-player (
AbstractPerTeamAdvancementDisplay), which provides customized values for each player - Per-team (
AbstractPerTeamAdvancementDisplay), which provides customized values for each team
- Immutable (
- Advancement constructors now accept an
AbstractAdvancementDisplayinstead ofAdvancementDisplay - The
AdvancementDisplayclass is now an immutable display and can be constructed exclusively using the builder
- Advancement displays are now abstract classes and use
- Announcement messages now employ a system similar to advancement visibilities. For more information, see
IAnnouncementMessage - Announcement messages are now customizable per-player
- Tab icon, background and title are now customizable (even per-player and per-team) and independent from the root advancement
- On advancement grant, toasts are now shown to every online team member by default. Use
AdvancementTab.setShowToastToTeamto send toasts only to the player who completed the advancement - On advancement grant, announcement messages can be shown only to team members by using
AdvancementTab.setSendAnnouncementMessageOnlyToTeam. By default, announcement messages are sent to every online player - Renamed
UltimateAdvancementAPI.updatePlayertoupdateAdvancementsToTeam - Removed deprecated methods
- Added more team management methods in
UltimateAdvancementAPIclass:createNewTeamWithOneLoadingRequestloadAndAddLoadingRequestaddLoadingRequestremoveLoadingRequestsetTeamPermanentisTeamPermanentgetPermanentTeams
- Renamed
UltimateAdvancementAPI.loadOfflinePlayertoloadAndAddLoadingRequest - Renamed
UltimateAdvancementAPI.unloadOfflinePlayertoremoveLoadingRequest - Removed
CacheFreeingOption,ObjectResultandResultclasses - Reworked
MultiTasksAdvancementandTaskAdvancement - Make advancement constructors more coherent
- Added
AdvancementGrantedEvent - Fixed
AdvancementTab.showtabsometimes being ignored - Refactored the advancement granting procedure
- Reserved a prefix for namespaces and keys for internal use. For more information, see
AdvancementKey.RESERVED_NAMESPACE_PREFIXandAdvancementKey.RESERVED_KEY_PREFIX - Replace callbacks in
UltimateAdvancementAPIclass withCompletableFutures
Internal changes:
- Massively improved the
DatabaseManager - Use MockBukkit for tests
- Added more tests
For more details, refer to the Javadoc or contact us on Discord. The Wiki will be updated with the 3.0.0 official release.
Supplementary resources
| File | Type | Size | |
|---|---|---|---|
| UltimateAdvancementAPI-Plugin-3.0.0-beta-1-Mojang-Mapped.jar | Unknown | 962.48 KiB |
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:Tqg6E9V7:rqsV0jyi"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:Tqg6E9V7:rqsV0jyi"
}

