UltimateAdvancementAPI [1.15-1.21.4] icon

UltimateAdvancementAPI [1.15-1.21.4] -----

A powerful API to create custom advancements for your minecraft server.



[​IMG]

Wiki Issues Javadoc GitHub Discord Generator FAQ

[​IMG]

Bugs should be reported on Discord or opening an issue on GitHub.
BUG REPORTS IN THE REVIEWS WILL NOT BE CONSIDERED!

[​IMG]
Simple - Create advancements for your server with ease
Async - Every operation is packet based. This means no lag for the server!
Advancement Visibility - Easy visibility system to customize advancement visibilities
Advancements for teams - The player progression is synchronized between members of the same team
Offline Player Support - Extensive and complete API to modify offline players progressions
Toasts - Send custom toast notifications
Database system - Fast and reliable savings wherever you want (SQLite, MySQL, In-Memory)
Disable vanilla advancements - Completely disable vanilla advancements without touching the server jar


[​IMG]
This is a plugin for developers. If a plugin you use needs it, just download the correct version for you server and drop it into your plugins folder.


[​IMG]
Add the dependency with maven to your project and start coding.
Check out the wiki to learn how to use the API.

Code (HTML5):
<repositories>
    <repository>
        <id>fren_gor </id>
        <url>https://nexus.frengor.com/repository/public/ </url>
    </repository>
</repositories>

<dependency>
    <groupId>com.frengor </groupId>
    <artifactId>ultimateadvancementapi </artifactId>
    <version>2.4.3 </version>
    <scope>provided </scope>
</dependency>

There is also a shadeable version, see the related wiki page to know more about it.


[​IMG]
Fully customizable - Make your own advancements
Easy to use - Complete and well-documented API
Support teams of players - Let more players collaborate together thanks to native support for teams
Maven and shadeable version - API is distributed with maven and it can be shaded into your plugins
Great support - Ask your questions on our Discord server
Online generator - The API comes with UltimateAdvancementGenerator, the official tool that helps you designing your advancements graphically


[​IMG]
The official online tool to design your advancement graphically. The Java classes for your plugin are then generated by the tool automatically.
Try it now
UltimateAdvancementGenerator

Video tutorial


WARNING: The tool is still in BETA, please report bugs on GitHub.


[​IMG]
/ultimateadvancementapi <progression|grant|revoke> ...
Permission: ultimateadvancementapi.command

/ultimateadvancementapi grant <all|tab|one> ...
Permission: ultimateadvancementapi.grant

/ultimateadvancementapi grant all <player> [giveRewards]
Permission: ultimateadvancementapi.grant.all

/ultimateadvancementapi grant tab <advancementTab> [player] [giveRewards]
Permission: ultimateadvancementapi.grant.tab

/ultimateadvancementapi grant one <advancement> [player] [giveRewards]
Permission: ultimateadvancementapi.grant.one

/ultimateadvancementapi revoke <all|tab|one> ...
Permission: ultimateadvancementapi.revoke

/ultimateadvancementapi revoke all <player> [hideTab]
Permission: ultimateadvancementapi.revoke.all

/ultimateadvancementapi revoke tab <advancementTab> [player] [hideTab]
Permission: ultimateadvancementapi.revoke.tab

/ultimateadvancementapi revoke one <advancement> [player]
Permission: ultimateadvancementapi.revoke.one

/ultimateadvancementapi progression <get|set> ...
Permission: ultimateadvancementapi.progression

/ultimateadvancementapi progression get <advancement> [player]
Permission: ultimateadvancementapi.progression.get

/ultimateadvancementapi progression set <advancement> <progression> [player] [giveRewards]
Permission: ultimateadvancementapi.progression.set


[​IMG]
[​IMG] [​IMG]

[​IMG]
Code (Java):
// Creates an advancement called "Example" with the description:
// - "A random"
// - "description."
public class MainClass extends JavaPlugin implements Listener {

    private AdvancementTab advancementTab ;
    private UltimateAdvancementAPI api ;

    @Override
    public void onEnable ( ) {
        api = UltimateAdvancementAPI. getInstance ( this ) ;

        advancementTab = api. createAdvancementTab ( "your_tab_name" ) ;

        AdvancementDisplay rootDisplay = new AdvancementDisplay (Material. GRASS_BLOCK, "Example", AdvancementFrameType. TASK, true, true, 0, 0, "A random", "description." ) ;

        RootAdvancement root = new RootAdvancement (advancementTab, "root", rootDisplay, "textures/block/stone.png" ) ;

        advancementTab. registerAdvancements (root ) ;

        Bukkit. getPluginManager ( ). registerEvents ( this, this ) ;
    }

    @EventHandler
    public void onJoin (PlayerLoadingCompletedEvent e ) {
        // Called after a player has successfully been loaded by the API
        Player p = e. getPlayer ( ) ;
        // Here you can show tabs to players
        advancementTab. showTab (p ) ;
    }
}
Result:
[​IMG]

Metrics
Resource Information
Author:
----------
Total Downloads: 6,414
First Release: Aug 23, 2021
Last Update: Dec 13, 2024
Category: ---------------
All-Time Rating:
14 ratings
Find more info at github.com...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings