Updated a lot

This commit is contained in:
trouper
2023-08-28 07:16:10 -05:00
parent 68d737a08c
commit 3b2ebe4170
7 changed files with 312 additions and 302 deletions

View File

@@ -54,6 +54,10 @@ public final class Sentinel extends JavaPlugin {
log.info("]======----- Auth Success! -----======[");
// Init
getConfig().options().copyDefaults();
saveResource("nbt-config.yml", false);
saveResource("false-positives.yml", false);
saveResource("strict.yml", false);
saveResource("swears.yml", false);
saveDefaultConfig();

View File

@@ -7,7 +7,9 @@ package io.github.thetrouper.sentinel.data;
import io.github.thetrouper.sentinel.Sentinel;
import org.bukkit.configuration.ConfigurationSection;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
import java.io.File;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -16,7 +18,12 @@ import java.util.Map;
* Config loader
*/
public abstract class Config {
private static final FileConfiguration config = Sentinel.getInstance().getConfig();
private static final FileConfiguration mainConfig = Sentinel.getInstance().getConfig();
private static final FileConfiguration nbtConfig = YamlConfiguration.loadConfiguration(new File(Sentinel.getDF() + "nbt-config.yml"));
private static final FileConfiguration falsePositives = YamlConfiguration.loadConfiguration(new File(Sentinel.getDF() + "false-positives.yml"));
private static final FileConfiguration strictWords = YamlConfiguration.loadConfiguration(new File(Sentinel.getDF() + "strict.yml"));
private static final FileConfiguration swearWords = YamlConfiguration.loadConfiguration(new File(Sentinel.getDF() + "swears"));
public static List<String> getPunishCommands() {
return punishCommands;
@@ -27,7 +34,7 @@ public abstract class Config {
*/
public class Plugin {
public static String getPrefix() {
return config.getString("config.plugin.prefix");
return mainConfig.getString("config.plugin.prefix");
}
}
public static String webhook;
@@ -133,124 +140,124 @@ public abstract class Config {
public static void loadConfiguration() {
Sentinel.prefix = config.getString("config.plugin.prefix");
Sentinel.key = config.getString("config.plugin.key");
webhook = config.getString("config.plugin.webhook");
trustedPlayers = config.getStringList("config.plugin.trusted");
blockSpecific = config.getBoolean("config.plugin.block-specific");
preventNBT = config.getBoolean("config.plugin.prevent-nbt");
preventCmdBlockPlace = config.getBoolean("config.plugin.prevent-cmdblock-place");
preventCmdBlockUse = config.getBoolean("config.plugin.prevent-cmdblock-use");
preventCmdBlockChange = config.getBoolean("config.plugin.prevent-cmdblock-change");
preventCmdCartPlace = config.getBoolean("config.plugin.prevent-cmdcart-place");
preventCmdCartUse = config.getBoolean("config.plugin.prevent-cmdcart-use");
cmdBlockOpCheck = config.getBoolean("config.plugin.cmdblock-op-check");
dangerous = config.getStringList("config.plugin.dangerous");
logDangerous = config.getBoolean("config.plugin.log-dangerous");
logCmdBlocks = config.getBoolean("config.plugin.log-cmdblocks");
logNBT = config.getBoolean("config.plugin.log-nbt");
logSpecific = config.getBoolean("config.plugin.log-specific");
logged = config.getStringList("config.plugin.logged");
deop = config.getBoolean("config.plugin.deop");
nbtPunish = config.getBoolean("config.plugin.nbt-punish");
cmdBlockPunish = config.getBoolean("config.plugin.cmdblock-punish");
commandPunish = config.getBoolean("config.plugin.command-punish");
specificPunish = config.getBoolean("config.plugin.specific-punish");
punishCommands = config.getStringList("config.plugin.punish-commands");
reopCommand = config.getBoolean("config.plugin.reop-command");
Sentinel.prefix = mainConfig.getString("config.plugin.prefix");
Sentinel.key = mainConfig.getString("config.plugin.key");
webhook = mainConfig.getString("config.plugin.webhook");
trustedPlayers = mainConfig.getStringList("config.plugin.trusted");
blockSpecific = mainConfig.getBoolean("config.plugin.block-specific");
preventNBT = mainConfig.getBoolean("config.plugin.prevent-nbt");
preventCmdBlockPlace = mainConfig.getBoolean("config.plugin.prevent-cmdblock-place");
preventCmdBlockUse = mainConfig.getBoolean("config.plugin.prevent-cmdblock-use");
preventCmdBlockChange = mainConfig.getBoolean("config.plugin.prevent-cmdblock-change");
preventCmdCartPlace = mainConfig.getBoolean("config.plugin.prevent-cmdcart-place");
preventCmdCartUse = mainConfig.getBoolean("config.plugin.prevent-cmdcart-use");
cmdBlockOpCheck = mainConfig.getBoolean("config.plugin.cmdblock-op-check");
dangerous = mainConfig.getStringList("config.plugin.dangerous");
logDangerous = mainConfig.getBoolean("config.plugin.log-dangerous");
logCmdBlocks = mainConfig.getBoolean("config.plugin.log-cmdblocks");
logNBT = mainConfig.getBoolean("config.plugin.log-nbt");
logSpecific = mainConfig.getBoolean("config.plugin.log-specific");
logged = mainConfig.getStringList("config.plugin.logged");
deop = mainConfig.getBoolean("config.plugin.deop");
nbtPunish = mainConfig.getBoolean("config.plugin.nbt-punish");
cmdBlockPunish = mainConfig.getBoolean("config.plugin.cmdblock-punish");
commandPunish = mainConfig.getBoolean("config.plugin.command-punish");
specificPunish = mainConfig.getBoolean("config.plugin.specific-punish");
punishCommands = mainConfig.getStringList("config.plugin.punish-commands");
reopCommand = mainConfig.getBoolean("config.plugin.reop-command");
// NBT
allowName = config.getBoolean("config.nbt.allow-name");
allowLore = config.getBoolean("config.nbt.allow-lore");
allowAttributes = config.getBoolean("config.nbt.allow-attributes");
globalMaxEnchant = config.getInt("config.nbt.global-max-enchant");
allowName = nbtConfig.getBoolean("nbt.allow-name");
allowLore = nbtConfig.getBoolean("nbt.allow-lore");
allowAttributes = nbtConfig.getBoolean("nbt.allow-attributes");
globalMaxEnchant = nbtConfig.getInt("nbt.global-max-enchant");
// ALL
maxMending = config.getInt("config.nbt.max-mending");
maxUnbreaking = config.getInt("config.nbt.max-unbreaking");
maxVanishing = config.getInt("config.nbt.max-vanishing");
maxMending = nbtConfig.getInt("nbt.max-mending");
maxUnbreaking = nbtConfig.getInt("nbt.max-unbreaking");
maxVanishing = nbtConfig.getInt("nbt.max-vanishing");
// ARMOR
maxAquaAffinity = config.getInt("config.nbt.max-aqua-affinity");
maxBlastProtection = config.getInt("config.nbt.max-blast-protection");
maxCurseOfBinding = config.getInt("config.nbt.max-curse-of-binding");
maxDepthStrider = config.getInt("config.nbt.max-depth-strider");
maxFeatherFalling = config.getInt("config.nbt.max-feather-falling");
maxFireProtection = config.getInt("config.nbt.max-fire-protection");
maxFrostWalker = config.getInt("config.nbt.max-frost-walker");
maxProjectileProtection = config.getInt("config.nbt.max-projectile-protection");
maxProtection = config.getInt("config.nbt.max-protection");
maxRespiration = config.getInt("config.nbt.max-respiration");
maxSoulSpeed = config.getInt("config.nbt.max-soul-speed");
maxThorns = config.getInt("config.nbt.max-thorns");
maxSwiftSneak = config.getInt("config.nbt.max-swift-sneak");
maxAquaAffinity = nbtConfig.getInt("nbt.max-aqua-affinity");
maxBlastProtection = nbtConfig.getInt("nbt.max-blast-protection");
maxCurseOfBinding = nbtConfig.getInt("nbt.max-curse-of-binding");
maxDepthStrider = nbtConfig.getInt("nbt.max-depth-strider");
maxFeatherFalling = nbtConfig.getInt("nbt.max-feather-falling");
maxFireProtection = nbtConfig.getInt("nbt.max-fire-protection");
maxFrostWalker = nbtConfig.getInt("nbt.max-frost-walker");
maxProjectileProtection = nbtConfig.getInt("nbt.max-projectile-protection");
maxProtection = nbtConfig.getInt("nbt.max-protection");
maxRespiration = nbtConfig.getInt("nbt.max-respiration");
maxSoulSpeed = nbtConfig.getInt("nbt.max-soul-speed");
maxThorns = nbtConfig.getInt("nbt.max-thorns");
maxSwiftSneak = nbtConfig.getInt("nbt.max-swift-sneak");
// MELEE WEAPONS
maxBaneOfArthropods = config.getInt("config.nbt.max-bane-of-arthropods");
maxEfficiency = config.getInt("config.nbt.max-efficiency");
maxFireAspect = config.getInt("config.nbt.max-fire-aspect");
maxLooting = config.getInt("config.nbt.max-looting");
maxImpaling = config.getInt("config.nbt.max-impaling");
maxKnockback = config.getInt("config.nbt.max-knockback");
maxSharpness = config.getInt("config.nbt.max-sharpness");
maxSmite = config.getInt("config.nbt.max-smite");
maxSweepingEdge = config.getInt("config.nbt.max-sweeping-edge");
maxBaneOfArthropods = nbtConfig.getInt("nbt.max-bane-of-arthropods");
maxEfficiency = nbtConfig.getInt("nbt.max-efficiency");
maxFireAspect = nbtConfig.getInt("nbt.max-fire-aspect");
maxLooting = nbtConfig.getInt("nbt.max-looting");
maxImpaling = nbtConfig.getInt("nbt.max-impaling");
maxKnockback = nbtConfig.getInt("nbt.max-knockback");
maxSharpness = nbtConfig.getInt("nbt.max-sharpness");
maxSmite = nbtConfig.getInt("nbt.max-smite");
maxSweepingEdge = nbtConfig.getInt("nbt.max-sweeping-edge");
// RANGED WEAPONS
maxChanneling = config.getInt("config.nbt.max-channeling");
maxFlame = config.getInt("config.nbt.max-flame");
maxInfinity = config.getInt("config.nbt.max-infinity");
maxLoyalty = config.getInt("config.nbt.max-loyalty");
maxRiptide = config.getInt("config.nbt.max-riptide");
maxMultishot = config.getInt("config.nbt.max-multishot");
maxPiercing = config.getInt("config.nbt.max-piercing");
maxPower = config.getInt("config.nbt.max-power");
maxPunch = config.getInt("config.nbt.max-punch");
maxQuickCharge = config.getInt("config.nbt.max-quick-charge");
maxChanneling = nbtConfig.getInt("nbt.max-channeling");
maxFlame = nbtConfig.getInt("nbt.max-flame");
maxInfinity = nbtConfig.getInt("nbt.max-infinity");
maxLoyalty = nbtConfig.getInt("nbt.max-loyalty");
maxRiptide = nbtConfig.getInt("nbt.max-riptide");
maxMultishot = nbtConfig.getInt("nbt.max-multishot");
maxPiercing = nbtConfig.getInt("nbt.max-piercing");
maxPower = nbtConfig.getInt("nbt.max-power");
maxPunch = nbtConfig.getInt("nbt.max-punch");
maxQuickCharge = nbtConfig.getInt("nbt.max-quick-charge");
// TOOLS
maxEfficiency = config.getInt("config.nbt.max-efficiency");
maxFortune = config.getInt("config.nbt.max-fortune");
maxLuckOfTheSea = config.getInt("config.nbt.max-luck-of-the-sea");
maxLure = config.getInt("config.nbt.max-lure");
maxSilkTouch = config.getInt("config.nbt.max-silk-touch");
maxEfficiency = nbtConfig.getInt("nbt.max-efficiency");
maxFortune = nbtConfig.getInt("nbt.max-fortune");
maxLuckOfTheSea = nbtConfig.getInt("nbt.max-luck-of-the-sea");
maxLure = nbtConfig.getInt("nbt.max-lure");
maxSilkTouch = nbtConfig.getInt("nbt.max-silk-touch");
// Chat Filter Setup & AntiSpam
antiUnicode = config.getBoolean("config.chat.anti-unicode");
antiSpamEnabled = config.getBoolean("config.chat.anti-spam.enabled");
defaultGain = config.getInt("config.chat.anti-spam.default-gain");
lowGain = config.getInt("config.chat.anti-spam.low-gain");
mediumGain = config.getInt("config.chat.anti-spam.medium-gain");
highGain = config.getInt("config.chat.anti-spam.high-gain");
heatDecay = config.getInt("config.chat.anti-spam.heat-decay");
blockHeat = config.getInt("config.chat.anti-spam.block-heat");
punishHeat = config.getInt("config.chat.anti-spam.punish-heat");
clearChat = config.getBoolean("config.chat.anti-spam.clear-chat");
chatClearCommand = config.getString("config.chat.anti-spam.chat-clear-command");
spamPunishCommand = config.getString("config.chat.anti-spam.punish-command");
logSpam = config.getBoolean("config.chat.anti-spam.log-spam");
antiSwearEnabled = config.getBoolean("config.chat.anti-swear.enabled");
lowScore = config.getInt("config.chat.anti-swear.low-score");
mediumLowScore = config.getInt("config.chat.anti-swear.medium-low-score");
mediumScore = config.getInt("config.chat.anti-swear.medium-score");
mediumHighScore = config.getInt("config.chat.anti-swear.medium-high-score");
highScore = config.getInt("config.chat.anti-swear.high-score");
scoreDecay = config.getInt("config.chat.anti-swear.score-decay");
punishScore = config.getInt("config.chat.anti-swear.punish-score");
strictInstaPunish = config.getBoolean("config.chat.anti-swear.strict-insta-punish");
swearPunishCommand = config.getString("config.chat.anti-swear.punish-command");
strictPunishCommand = config.getString("config.chat.anti-swear.strict-command");
logSwear = config.getBoolean("config.chat.anti-swear.log-swear");
swearWhitelist = config.getStringList("config.chat.anti-swear.false-positives");
swearBlacklist = config.getStringList("config.chat.anti-swear.blacklisted");
slurs = config.getStringList("config.chat.anti-swear.strict");
antiUnicode = mainConfig.getBoolean("config.chat.anti-unicode");
antiSpamEnabled = mainConfig.getBoolean("config.chat.anti-spam.enabled");
defaultGain = mainConfig.getInt("config.chat.anti-spam.default-gain");
lowGain = mainConfig.getInt("config.chat.anti-spam.low-gain");
mediumGain = mainConfig.getInt("config.chat.anti-spam.medium-gain");
highGain = mainConfig.getInt("config.chat.anti-spam.high-gain");
heatDecay = mainConfig.getInt("config.chat.anti-spam.heat-decay");
blockHeat = mainConfig.getInt("config.chat.anti-spam.block-heat");
punishHeat = mainConfig.getInt("config.chat.anti-spam.punish-heat");
clearChat = mainConfig.getBoolean("config.chat.anti-spam.clear-chat");
chatClearCommand = mainConfig.getString("config.chat.anti-spam.chat-clear-command");
spamPunishCommand = mainConfig.getString("config.chat.anti-spam.punish-command");
logSpam = mainConfig.getBoolean("config.chat.anti-spam.log-spam");
antiSwearEnabled = mainConfig.getBoolean("config.chat.anti-swear.enabled");
lowScore = mainConfig.getInt("config.chat.anti-swear.low-score");
mediumLowScore = mainConfig.getInt("config.chat.anti-swear.medium-low-score");
mediumScore = mainConfig.getInt("config.chat.anti-swear.medium-score");
mediumHighScore = mainConfig.getInt("config.chat.anti-swear.medium-high-score");
highScore = mainConfig.getInt("config.chat.anti-swear.high-score");
scoreDecay = mainConfig.getInt("config.chat.anti-swear.score-decay");
punishScore = mainConfig.getInt("config.chat.anti-swear.punish-score");
strictInstaPunish = mainConfig.getBoolean("config.chat.anti-swear.strict-insta-punish");
swearPunishCommand = mainConfig.getString("config.chat.anti-swear.punish-command");
strictPunishCommand = mainConfig.getString("config.chat.anti-swear.strict-command");
logSwear = mainConfig.getBoolean("config.chat.anti-swear.log-swear");
swearWhitelist = falsePositives.getStringList("false-positives");
swearBlacklist = swearWords.getStringList("blacklisted");
slurs = strictWords.getStringList("strict");
leetPatterns = loadLeetPatterns();
logSwear = config.getBoolean("config.chat.anti-swear.log-swear");
logSwear = mainConfig.getBoolean("config.chat.anti-swear.log-swear");
}
private static Map<String, String> loadLeetPatterns() {
Map<String, String> dictionary = new HashMap<>();
ConfigurationSection section = config.getConfigurationSection("config.chat.anti-swear.leet-patterns");
ConfigurationSection section = mainConfig.getConfigurationSection("config.chat.anti-swear.leet-patterns");
if (section != null) {
for (String key : section.getKeys(false)) {

View File

@@ -59,64 +59,6 @@ config:
- "smite %player%"
- "ban %player% ]=- Sentinel -=[ You have been banned for attempting a dangerous action. If you believe this to be a mistake, please contact the server owner."
reop-command: false # Defaulted false | This enables the command allowing trusted players to op themselves if they get deoped.
nbt:
allow-name: true # Defaulted to true, weather or not to allow all item names durring creative inv event
allow-lore: true # Defaulted to true, weather or not to allow all item lore during creative inv event
allow-attributes: false # defaulted to false, weather or not to allow item attributes in a creative inv event
# Enchants
global-max-enchant: 5 # Defaulted to 5, if any enchantment is above this, it will get deleted. Set to 0 to disable all enchants from creative inv
# It is recommended to keep the ones defaulted to 1 at 1, as this will keep people who spam 32k onto every enchant will get caught
# All items
max-mending: 1 # Defaulted to 1
max-unbreaking: 3 # Defaulted to 3
max-vanishing: 1 # Defaulted to 1
# ARMOR
max-aqua-affinity: 1 # Defaulted to 1
max-blast-protection: 4 # Defaulted to 4
max-curse-of-binding: 1 # Defaulted to 1
max-depth-strider: 3 # Defaulted to 3
max-feather-falling: 4 # Defaulted to 4
max-fire-protection: 4 # Defaulted to 4
max-frost-walker: 2 # Defaulted to 2
max-projectile-protection: 4 # Defaulted to 4
max-protection: 4 # Defaulted to 4
max-respiration: 3 # Defaulted to 3
max-soul-speed: 3 # Defaulted to 3
max-thorns: 3 # Defaulted to 3
max-swift-sneak: 3 # Defaulted to 3
# MELEE WEAPONS
max-bane-of-arthropods: 5 # Defaulted to 5
max-efficiency: 5 # Defaulted to 5
max-fire-aspect: 2 # Defaulted to 2
max-looting: 3 # Defaulted to 3
max-impaling: 5 # Defaulted to 5
max-knockback: 2 # Defaulted to 2
max-sharpness: 5 # Defaulted to 5
max-smite: 5 # Defaulted to 5
max-sweeping-edge: 3 # Defaulted to 3
# RANGED WEAPONS
max-channeling: 1 # Defaulted to 1
max-flame: 1 # Defaulted to 1
max-infinity: 1 # Defaulted to 1
max-loyalty: 3 # Defaulted to 3
max-riptide: 3 # Defaulted to 3
max-multishot: 1 # Defaulted to 1
max-piercing: 4 # Defaulted to 4
max-power: 5 # Defaulted to 5
max-punch: 2 # Defaulted to 2
max-quick-charge: 3 # Defaulted to 3
# TOOLS
max-fortune: 3 # Defaulted to 3
max-luck-of-the-sea: 3 # Defaulted to 3
max-lure: 3 # Defaulted to 3
max-silk-touch: 1 # Defaulted to 1
# -------------------------------
# Chat Filter Setup & AntiSpam
# -------------------------------
@@ -149,149 +91,6 @@ config:
punish-command: "mute %player% 15m Do not attempt to bypass the Profanity Filter"
strict-command: "mute %player% 1h Discriminatory speech is not tolerated on this server!"
log-swear: true # Default true | Logs swear punishments to the webhook
false-positives: # Words that will falsly flag the anti-swear
- but then
- was scamming
- an alt
- can also
- analysis
- analytics
- arsenal
- assassin
- as saying
- assert
- assign
- assimil
- assist
- associat
- assum
- assur
- basement
- bass
- cass
- butter
- canvass
- cocktail
- cumber
- document
- evaluate
- exclusive
- expensive
- explain
- expression
- grape
- grass
- harass
- hotwater
- identit
- kassa
- kassi
- lass
- leafage
- libshitz
- magnacumlaude
- mass
- mocha
- pass
- phoebe
- phoenix
- push it
- sassy
- saturday
- scrap
- serfage
- sexist
- shoe
- stitch
- therapist
blacklisted: # Swears to check for
- anal
- anus
- arse
- ass
- ballsack
- balls
- bastard
- bitch
- btch
- biatch
- blowjob
- bollock
- bollok
- boner
- boob
- bugger
- butt
- choad
- clitoris
- cock
- coon
- crap
- cum
- cunt
- dick
- dildo
- douchebag
- dyke
- feck
- fellate
- fellatio
- felching
- fuck
- fudgepacker
- flange
- gtfo
- hoe
- horny
- incest
- jerk
- jizz
- labia
- masturb
- muff
- nazi
- nipple
- nips
- nude
- pedophile
- penis
- piss
- poop
- porn
- prick
- prostit
- pube
- pussie
- pussy
- queer
- rape
- rapist
- retard
- rimjob
- scrotum
- sex
- shit
- slut
- spunk
- stfu
- suckmy
- tits
- tittie
- titty
- turd
- twat
- vagina
- wank
- whore
strict: # Very bad words to insta-punish for
- nigg
- niger
- nlgg
- nlger
- njgg
- tranny
- fag
- beaner
leet-patterns: # Replacement patterns for "l33t" strings
'0': o
'1': i

View File

@@ -0,0 +1,55 @@
false-positives: # Words that will falsly flag the anti-swear
- but then
- was scamming
- an alt
- can also
- analysis
- analytics
- arsenal
- assassin
- as saying
- assert
- assign
- assimil
- assist
- associat
- assum
- assur
- basement
- bass
- cass
- butter
- canvass
- cocktail
- cumber
- document
- evaluate
- exclusive
- expensive
- explain
- expression
- grape
- grass
- harass
- hotwater
- identit
- kassa
- kassi
- lass
- leafage
- libshitz
- magnacumlaude
- mass
- mocha
- pass
- phoebe
- phoenix
- push it
- sassy
- saturday
- scrap
- serfage
- sexist
- shoe
- stitch
- therapist

View File

@@ -0,0 +1,57 @@
nbt:
allow-name: true # Defaulted to true, weather or not to allow all item names durring creative inv event
allow-lore: true # Defaulted to true, weather or not to allow all item lore during creative inv event
allow-attributes: false # defaulted to false, weather or not to allow item attributes in a creative inv event
# Enchants
global-max-enchant: 5 # Defaulted to 5, if any enchantment is above this, it will get deleted. Set to 0 to disable all enchants from creative inv
# It is recommended to keep the ones defaulted to 1 at 1, as this will keep people who spam 32k onto every enchant will get caught
# All items
max-mending: 1 # Defaulted to 1
max-unbreaking: 3 # Defaulted to 3
max-vanishing: 1 # Defaulted to 1
# ARMOR
max-aqua-affinity: 1 # Defaulted to 1
max-blast-protection: 4 # Defaulted to 4
max-curse-of-binding: 1 # Defaulted to 1
max-depth-strider: 3 # Defaulted to 3
max-feather-falling: 4 # Defaulted to 4
max-fire-protection: 4 # Defaulted to 4
max-frost-walker: 2 # Defaulted to 2
max-projectile-protection: 4 # Defaulted to 4
max-protection: 4 # Defaulted to 4
max-respiration: 3 # Defaulted to 3
max-soul-speed: 3 # Defaulted to 3
max-thorns: 3 # Defaulted to 3
max-swift-sneak: 3 # Defaulted to 3
# MELEE WEAPONS
max-bane-of-arthropods: 5 # Defaulted to 5
max-efficiency: 5 # Defaulted to 5
max-fire-aspect: 2 # Defaulted to 2
max-looting: 3 # Defaulted to 3
max-impaling: 5 # Defaulted to 5
max-knockback: 2 # Defaulted to 2
max-sharpness: 5 # Defaulted to 5
max-smite: 5 # Defaulted to 5
max-sweeping-edge: 3 # Defaulted to 3
# RANGED WEAPONS
max-channeling: 1 # Defaulted to 1
max-flame: 1 # Defaulted to 1
max-infinity: 1 # Defaulted to 1
max-loyalty: 3 # Defaulted to 3
max-riptide: 3 # Defaulted to 3
max-multishot: 1 # Defaulted to 1
max-piercing: 4 # Defaulted to 4
max-power: 5 # Defaulted to 5
max-punch: 2 # Defaulted to 2
max-quick-charge: 3 # Defaulted to 3
# TOOLS
max-fortune: 3 # Defaulted to 3
max-luck-of-the-sea: 3 # Defaulted to 3
max-lure: 3 # Defaulted to 3
max-silk-touch: 1 # Defaulted to 1

View File

@@ -0,0 +1,9 @@
strict: # Very bad words to insta-punish for
- nigg
- niger
- nlgg
- nlger
- njgg
- tranny
- fag
- beaner

View File

@@ -0,0 +1,79 @@
blacklisted: # Swears to check for
- anal
- anus
- arse
- ass
- ballsack
- balls
- bastard
- bitch
- btch
- biatch
- blowjob
- bollock
- bollok
- boner
- boob
- bugger
- butt
- choad
- clitoris
- cock
- coon
- crap
- cum
- cunt
- dick
- dildo
- douchebag
- dyke
- feck
- fellate
- fellatio
- felching
- fuck
- fudgepacker
- flange
- gtfo
- hoe
- horny
- incest
- jerk
- jizz
- labia
- masturb
- muff
- nazi
- nipple
- nips
- nude
- pedophile
- penis
- piss
- poop
- porn
- prick
- prostit
- pube
- pussie
- pussy
- queer
- rape
- rapist
- retard
- rimjob
- scrotum
- sex
- shit
- slut
- spunk
- stfu
- suckmy
- tits
- tittie
- titty
- turd
- twat
- vagina
- wank
- whore