diff --git a/src/main/java/com/gmail/nossr50/config/hocon/antiexploit/AntiExploit.java b/src/main/java/com/gmail/nossr50/config/hocon/antiexploit/AntiExploit.java new file mode 100644 index 000000000..9ea19c2a9 --- /dev/null +++ b/src/main/java/com/gmail/nossr50/config/hocon/antiexploit/AntiExploit.java @@ -0,0 +1,32 @@ +package com.gmail.nossr50.config.hocon.antiexploit; + +import ninja.leaping.configurate.objectmapping.Setting; +import ninja.leaping.configurate.objectmapping.serialize.ConfigSerializable; + +@ConfigSerializable +public class AntiExploit { + private static final boolean ENDERMEN_ENDERMITE_DEFAULT = true; + private static final boolean PISTONS_MARK_BLOCKS_DEFAULT = true; + public static final boolean SPAWNED_MOBS_DEFAULT = true; + + /* + * CONFIG NODES + */ + + @Setting(value = "Endermen-Endermite-Fix", + comment = "Removes XP from Endermen that target endermite, this is a common exploit in The End because of how rapidly they can spawn." + + "\nIt is recommended that you leave this on as it allows players to easily gain massive amounts of combat XP" + + "\nDefault value: "+ENDERMEN_ENDERMITE_DEFAULT) + private boolean endermenEndermiteFix = ENDERMEN_ENDERMITE_DEFAULT; + + @Setting(value = "Pistons-Mark-Blocks-As-Unnatural", + comment = "Unnatural blocks give no XP." + + "This helps prevent complex automated stone farms that enable auto clickers to gain XP passively.") + private boolean pistonsMarkBlocksUnnatural = PISTONS_MARK_BLOCKS_DEFAULT; + + @Setting(value = "Spawned-Mobs-Give-No-XP", + comment = "Spawned mobs will not give players combat XP." + + "\nThis includes mobs spawned from a nether portal, mob spawner, or eggs." + + "\nThis will not include mobs spawned from commands, typically.") + private boolean spawnedMobsGiveNoXP = SPAWNED_MOBS_DEFAULT; +}