frengor / UltimateAdvancementAPI

A powerful API to create custom advancements for your Minecraft server.
https://modrinth.com/plugin/ultimateadvancementapi
GNU General Public License v3.0
83 stars 7 forks source link

Interacting with Bukkit/Vanilla Advancements #71

Open ghermm opened 3 months ago

ghermm commented 3 months ago

If possible, I think the ability to interact with Bukkit advancements would be a game changer. (This would include any advancement registered on the server from the server itself, datapacks, etc.)

EscanorTargaryen commented 3 months ago

Exactly what would you like to do with vanilla advancement? Please explain better and give examples.

ghermm commented 3 months ago

Things like editing the background, the advancements themselves, advancements, and stuff like that. I also think a way to automatically place advancements would be nice rather than having to manually place each advancement. A system like this already exists in the server and is used for the other tabs.

EscanorTargaryen commented 3 months ago

I am very sorry, but the ability to edit vanilla advancements may never be implemented in UltimateAdvancementAPI. The API was created for the purpose of facilitating the creation of advancements by exploiting game events, linking with other plugins or other logic given by the code.

Also, I don't think it is really feasible to do what you are asking for, since the spigot API allows you to read vanilla advancements, but not to mofify them. The only solution probably remains to use datapacks/resourcepacks.

Regarding the creation of an advancement builder without manually entering coordinates, I think this is an interesting feature that could be added, perhaps by simply specifying that you want to place the next advancement forward/above/backward.

Greenfoot5 commented 3 months ago

I'm happy to share my layout code (once I fix displays) but it doesn't handle multi-parents (I haven't had a need for it yet). It's also a very different method of making advancements compared to the web builder.