rowan-vr / CustomAdvancements

Custom Advancements is an easy to configure minecraft plugin where you can create your own advancements for your server. Your players can use the easy to use GUI to see the advancements and their progress and how to activate them!
https://www.spigotmc.org/resources/custom-advancements.91167/
GNU General Public License v2.0
34 stars 7 forks source link

Packet too big #183

Open EazyAce opened 7 months ago

EazyAce commented 7 months ago

Hello,

i just started to use your plugin.

But everytime i use higher number (> 1.000.000) the player gets kicked from the server with the following error message:

Connection Lost

Internal Exception: io.netty.handler.codec.EncoderException: java.lang.IllegalArgumentException: Packet too big (is 61888937, should be less than 8388608): net.minecraft.network.protocol.game.PacketPlayOutAdvancements@46cab84b

I set the config to minecraft-progress-type: "PERCENTAGE" and I tried smaller packets: progress-per-packet: 3 / 2 / 1 without success. The numbers in the error message can change, depending on the value used in the advancement.

Bild_2024-01-20_230251494

traveller5: type: blockstravelled value: amount: 1000000 rewards: message: type: message value: '&6&l1.000.000 Schritte!' command: type: consolecommand value: mi give FOOD GEBRATENESHUEHNCHEN 5 requirements: advancement: type: advancement value: bewegung.traveller4 display: name: Weltenbummler V item: COMPASS description: 'Das Ziel war der Weg! - %customadvancements_progress_bewegung.traveller5% von 1.000.000 Schritten!' gui_location: '1:0' guiLocation: auto unit: Zurückgelegte Strecke minecraft-gui-frame: "GOAL" minecraft-toast: true minecraft-chat-announce: true minecraft-progress-type: "PERCENTAGE"

Thank you :)

I have a bit of feedback to share. Similar to some others, I'm eager to see support for Mythic Mobs and a method to specify blocks with directions (e.g., Brown_mushroom_block[north=false, south=true, ...]), particularly because I utilize MMOCORE for custom ore blocks.

Additionally, introducing an advancement type tied to permissions could offer considerable flexibility. For instance:

MMOCORE Profession granting permission per level up could be leveraged to create advancements for different profession levels, such as reaching levels 25, 50, 75, and 100.

In the context of quest plugins, assigning specific permissions upon successful completion of quests opens up possibilities for creating advancements irrespective of the quest plugin in use.

Custom Crafting scenarios can also benefit from this approach. By assigning permissions in the background, advancements can be granted independently of the plugin used, provided that commands can be executed during crafting (as is the case with my usage of mmoitems).

Furthermore, having a Variable type akin to the impossible type would be highly beneficial. This would allow for the setup of various variable types serving different purposes and their subsequent counting:

Easter Eggs discovered Quests completed Mini Games won ... Each time a player triggers one of these variables, rewarding them with /ca grant exampletree variablename would enable tracking the count effectively. This system provides a comprehensive way to monitor and acknowledge player achievements.

Best Regards