PyvesB / advanced-achievements

:fireworks: Popular plugin that adds unique and challenging achievements to Minecraft servers.
https://www.spigotmc.org/resources/83466
GNU General Public License v3.0
200 stars 211 forks source link

Players recieving disabled achievements upon join. #1059

Closed Scyrizu closed 2 years ago

Scyrizu commented 3 years ago

:information_source: Basic information

:beetle: Description

I had deleted out all of the achievements and categories from the plugin, and added in a singular custom achievement. (I'll be adding more later), but when a new player joined they were given a TON of achievements, all of which i have commented out and their categories removed.

:page_facing_up: Server logs

:wrench: Configuration

PyvesB commented 3 years ago

Hello @Scyrizu ! 👋🏻

all of which i have commented out and their categories removed

See https://github.com/PyvesB/advanced-achievements/pull/979#pullrequestreview-611052956, it will hopefully shed some light on your problem.

PyvesB commented 2 years ago

Assuming the linked issue helped, feel free to say if that's not the case.

Scyrizu commented 2 years ago

So sorry, i've been slammed. Started gradcshool and was pressed to get things functional for a closed beta & in the chaos forgot about my posts here.

here's a better explanation of what's going on: For this example my config looks like:

Breaks:

snow|snow_block|ice:

#32:
  #Goal: Break 32 ice and/or snow.
  #Message: You have broken 32 ice and snow, Woo!
  #Name: break_32_ice_any
  #DisplayName: Praying for Summer

players have the following permissions: "achievement. FALSE" "achievement.kills_1_player TRUE" "achievement.list TRUE" "achievement.count. true"

Idk WHY players were getting a hoard of achievements upon joining but it seems to have fixed itself -- was having issues with several plugins due to the Mythic plugins (which are currently disabled as such... I want to add them back later on crosses fingers) so that could have been the problem and hopefully it doesn't come back.

The reason for the above information is, while what you listed will help to disable those achievements, I do want to limit who can get what achievements based on permissions and those are currently set to disable them all except that custom one. Additionally how are commented out achievements even functioning?

PyvesB commented 2 years ago

Additionally how are commented out achievements even functioning?

This will probably help: https://github.com/PyvesB/advanced-achievements/pull/979#pullrequestreview-611052956

Scyrizu commented 2 years ago

Yes sir, I've read that and understand that i need to disable the achievements differently.

I'm however, asking why the permission isn't stopping them from getting the achievements. I want to lock some achievements behind permissions and that isn't working. I gave them the above permissions and they still got achievements that they didn't have access too, the "praying for summer achievement" for example.

PyvesB commented 2 years ago

I gave them the above permissions and they still got achievements that they didn't have access too, the "praying for summer achievement" for example.

In the example you shared, I see no permission node corresponding to the specific "praying for summer" achievement. Setting achievement.* to false does not lead to a well-defined result in the Bukkit API documentation: "behavior can vary between permissions management plugins". If you permissions plugin is not behaving the way you want with regards to negation of dynamically defined parent permissions (for example I believe this is the case with Ultra Permissions), you would need to negate the child node explicitly, achievement.break_32_ice_any.