Disable achievements

Discussion in 'Spigot Help' started by ajeje, Jun 21, 2017.

  1. Hi guys.

    Since i updated my server to 1.12 every achievement are in the chatbox, i've tried using:

    announce-player-achievements=false
    Announce-Achievements=false

    in server.properties but nothing, still happening.

    I don't know if its something of bungeecord or spigot, i'm using the latest version of spigot and bungee.

    Any idea?

    Thanks!.
     
  2. md_5

    Administrator Developer

    • Useful Useful x 2
    • Like Like x 1
    • Agree Agree x 1
  3. Thanks md_5, i will try that!

    its rare, because in 1.11.2 and before the achievements cannot be seen in chat and i didn't touch nothing

    EDIT: Tried, but still happening

    [​IMG]
     
    • Like Like x 1
    • Informative Informative x 1
  4. Im having this problem too. Disabled advancements every way I can think of and they still wont go away.
     
    • Agree Agree x 1
  5. Same here, probably shouldn't of made a forum post myself. Should of commented on this instead.
     
  6. Still having the issue and looking for a fix
     
    • Agree Agree x 1
  7. Someone needs to make a simple plugin that disables advancements completely
     
    • Agree Agree x 1
  8. That would possibly be the best solution.
     
  9. Good day everyone! So I ran into the same issue today while working on a server for someone, and I decided to look into this. @ajeje @md_5 @Dryyskull @XxDawnsusxX

    I discovered this:

    In the "net.minecraft.server.AdvancementDataPlayer" class, a method is called which checks for the announcements:
    Code (Text):
    if (advancement.c() != null && advancement.c().i() && this.player.world.getGameRules().getBoolean("announceAdvancements")) {
        this.d.getPlayerList().sendMessage(new ChatMessage("chat.type.advancement." + advancement.c().e().a(), new Object[] { this.player.getScoreboardDisplayName(), advancement.j()}));
    }
    All of that works fine, but when we dig further into the code, we notice that the only time the gamerule "announceAdvancements" is called, is in the "net.minecraft.server.DedicatedServer" class.
    Code (Text):
    if (this.propertyManager.a("announce-player-achievements")) {
        this.worlds.get(0).getGameRules().set("announceAdvancements", this.propertyManager.getBoolean("announce-player-achievements", true) ? "true" : "false"); // CraftBukkit
        this.propertyManager.b("announce-player-achievements");
        this.propertyManager.savePropertiesFile();
    }
    Here you see that it is still checking for the old "announce-player-achievements" configuration in the 'server.properties' file. You can't manually add that option to the 'server.properties' anymore, as it will just remove what you just put there.

    Even if you were able to add those settings, this#worlds#get(0) happens. Those rules will only apply for the first world loaded, which happens to be the default world 'world'.

    Using the gamerule command should still work however, for those who are still having trouble disabling the announcements, simply use this plugin. (It will disable the announcements whenever a world is loaded)
     
    #9 FadiDev, Jul 12, 2017
    Last edited: Jul 12, 2017
    • Like x 6
    • Useful x 2
    • Agree x 1
    • Winner x 1
    • Friendly x 1
  10. You beautiful man, thanks so much!
     
    • Like Like x 1
  11. Hello dear friends, I found a solution without a plugin on version 1.12.2!
    edit in file spigot.yml lines:
    Code (Text):
    advancements:
      disable-saving: true
      disabled:
      - minecraft:story/disabled
    stats:
      disable-saving: true
      forced-stats: {}
    [​IMG][​IMG][​IMG]
     
  12. drives_a_ford

    Moderator

    Wow, truly a marvelous find. If only md_5's (literally first answer to this thread) hadn't already covered that...
     
  13. sorry i from russia, i read this topic dont use transtale google)) i have basic english words
     
    • Like Like x 1
  14. If anyone else is still looking for this,
    the solution is very easy. Just go in your server.properties and set announce-player-achievements to false
     
  15. it does not exist in 1.12 (y)
     
  16. Grave Digging :mad:
     
    • Funny Funny x 1
  17. No, its the first result on Google. No point making multiple posts to find the same thing.

    For those wondering still its;
    Code (Text):
    /gamerule announceAdvancements false
     
    • Like Like x 1
  18. This man started a thread in Spigot Help asking to disable achievements, I think md_5 has covered enough to solve his problem.. Otherwise, go back to the thread and see what he says, not try to find your own way of disabling achievements. I was wondering where the 16 replies came within one day.
     
  19. /gamerule annouceadvancements false
     
  20. Any way to fix this in 1.8.9? Because i have this exact problem but with 1.8.9