Merge pull request 'feature-34-anticheat' (#9) from feature-34 into develop
All checks were successful
/ build-docker (push) Successful in 6m4s
All checks were successful
/ build-docker (push) Successful in 6m4s
Reviewed-on: #9
This commit is contained in:
commit
cddab7bca4
@ -21,6 +21,9 @@ src/plugins/spark/tmp
|
|||||||
.crowdin
|
.crowdin
|
||||||
src/plugins/PlasmoVoice/voice_mutes.json
|
src/plugins/PlasmoVoice/voice_mutes.json
|
||||||
|
|
||||||
|
src/orebfuscator_cache
|
||||||
|
src/plugins/GrimAC/violations.sqlite
|
||||||
|
|
||||||
src/plugins/LuckPerms/libs
|
src/plugins/LuckPerms/libs
|
||||||
|
|
||||||
src/plugins/ImageFrame/data
|
src/plugins/ImageFrame/data
|
||||||
|
3
.gitignore
vendored
3
.gitignore
vendored
@ -21,6 +21,9 @@ src/plugins/spark/tmp
|
|||||||
.crowdin
|
.crowdin
|
||||||
src/plugins/PlasmoVoice/voice_mutes.json
|
src/plugins/PlasmoVoice/voice_mutes.json
|
||||||
|
|
||||||
|
src/orebfuscator_cache
|
||||||
|
src/plugins/GrimAC/violations.sqlite
|
||||||
|
|
||||||
src/plugins/LuckPerms/libs
|
src/plugins/LuckPerms/libs
|
||||||
|
|
||||||
src/plugins/ImageFrame/data
|
src/plugins/ImageFrame/data
|
||||||
|
13
Dockerfile
13
Dockerfile
@ -108,6 +108,12 @@ ENV LIBERTYBANS_DB_PASSWORD=0000
|
|||||||
|
|
||||||
ENV DISCORDSRV_BOT_TOKEN=dummy-token
|
ENV DISCORDSRV_BOT_TOKEN=dummy-token
|
||||||
|
|
||||||
|
ENV GRIM_DB_HOST=127.0.0.1
|
||||||
|
ENV GRIM_DB_PORT=3306
|
||||||
|
ENV GRIM_DB_NAME=luckperms
|
||||||
|
ENV GRIM_DB_USERNAME=luckperms
|
||||||
|
ENV GRIM_DB_PASSWORD=0000
|
||||||
|
|
||||||
WORKDIR ${WORKDIR_PATH}/config
|
WORKDIR ${WORKDIR_PATH}/config
|
||||||
|
|
||||||
# Minecraft
|
# Minecraft
|
||||||
@ -136,6 +142,13 @@ CMD \
|
|||||||
sed -i "s/_COREPROTECT_DB_USERNAME_/${COREPROTECT_DB_USERNAME}/g" plugins/CoreProtect/config.yml && \
|
sed -i "s/_COREPROTECT_DB_USERNAME_/${COREPROTECT_DB_USERNAME}/g" plugins/CoreProtect/config.yml && \
|
||||||
sed -i "s/_COREPROTECT_DB_PASSWORD_/${COREPROTECT_DB_PASSWORD}/g" plugins/CoreProtect/config.yml && \
|
sed -i "s/_COREPROTECT_DB_PASSWORD_/${COREPROTECT_DB_PASSWORD}/g" plugins/CoreProtect/config.yml && \
|
||||||
|
|
||||||
|
# Add grim database secrets
|
||||||
|
sed -i "s/_GRIM_DB_HOST_/${GRIM_DB_HOST}/g" plugins/GrimAC/config.yml && \
|
||||||
|
sed -i "s/_GRIM_DB_PORT_/${GRIM_DB_PORT}/g" plugins/GrimAC/config.yml && \
|
||||||
|
sed -i "s/_GRIM_DB_NAME_/${GRIM_DB_NAME}/g" plugins/GrimAC/config.yml && \
|
||||||
|
sed -i "s/_GRIM_DB_USERNAME_/${GRIM_DB_USERNAME}/g" plugins/GrimAC/config.yml && \
|
||||||
|
sed -i "s/_GRIM_DB_PASSWORD_/${GRIM_DB_PASSWORD}/g" plugins/GrimAC/config.yml && \
|
||||||
|
|
||||||
# Add libertybans database secrets
|
# Add libertybans database secrets
|
||||||
sed -i "s/_LIBERTYBANS_DB_HOST_/${LIBERTYBANS_DB_HOST}/g" plugins/LibertyBans/sql.yml && \
|
sed -i "s/_LIBERTYBANS_DB_HOST_/${LIBERTYBANS_DB_HOST}/g" plugins/LibertyBans/sql.yml && \
|
||||||
sed -i "s/_LIBERTYBANS_DB_PORT_/${LIBERTYBANS_DB_PORT}/g" plugins/LibertyBans/sql.yml && \
|
sed -i "s/_LIBERTYBANS_DB_PORT_/${LIBERTYBANS_DB_PORT}/g" plugins/LibertyBans/sql.yml && \
|
||||||
|
218
src/plugins/GrimAC/config.yml
Normal file
218
src/plugins/GrimAC/config.yml
Normal file
@ -0,0 +1,218 @@
|
|||||||
|
# GrimAC main configuration
|
||||||
|
# Source code: https://github.com/MWHunter/Grim
|
||||||
|
# Copyright 2025 DefineOutside and contributors, Licensed under GPLv3.
|
||||||
|
# Modified binaries, or plugins with copied grim code, must be private,
|
||||||
|
# or with full source code available to buyers at no additional cost.
|
||||||
|
|
||||||
|
alerts:
|
||||||
|
# In addition to broadcasting alerts to players, should they also be sent to the console?
|
||||||
|
print-to-console: true
|
||||||
|
# This controls whether/how alerts are shared between servers connected to your proxy.
|
||||||
|
# You must have 'bungee-plugin-message-channel' enabled in your Velocity's configuration if Velocity is in use.
|
||||||
|
proxy:
|
||||||
|
# Should alerts be sent to other servers connected to your proxy?
|
||||||
|
send: false
|
||||||
|
# Should the alerts received from other servers be announced to this server?
|
||||||
|
receive: false
|
||||||
|
|
||||||
|
verbose:
|
||||||
|
print-to-console: false
|
||||||
|
|
||||||
|
check-for-updates: true
|
||||||
|
|
||||||
|
client-brand:
|
||||||
|
# This means it won't broadcast their brand to operators if the brand matches the following regexes
|
||||||
|
ignored-clients:
|
||||||
|
- "^vanilla$"
|
||||||
|
# - "^fabric$"
|
||||||
|
# - "^lunarclient:v\\d+\\.\\d+\\.\\d+-\\d{4}$"
|
||||||
|
# - "^Feather Fabric$"
|
||||||
|
# - "^labymod$"
|
||||||
|
|
||||||
|
spectators:
|
||||||
|
# Hide all spectators with the grim.spectator permission regardless if they are actually actively spectating
|
||||||
|
hide-regardless: false
|
||||||
|
# Will make spectators hidden only in these worlds, keep blank to allow all worlds
|
||||||
|
allowed-worlds:
|
||||||
|
- ""
|
||||||
|
|
||||||
|
# How long should players have until we kick them for timing out? Default = 60 seconds
|
||||||
|
max-transaction-time: 60
|
||||||
|
|
||||||
|
# Should the duplicate movement packet be cancelled?
|
||||||
|
# Mojang has fixed this issue in 1.21. This was their attempt to fix the "bucket desync". https://bugs.mojang.com/browse/MC-12363
|
||||||
|
# This setting only applies to 1.17-1.20.5 clients on 1.8 servers.
|
||||||
|
cancel-duplicate-packet: true
|
||||||
|
|
||||||
|
# Whether or not to ignore the rotation in duplicate packets
|
||||||
|
ignore-duplicate-packet-rotation: false
|
||||||
|
|
||||||
|
Simulation:
|
||||||
|
# How much should we multiply total advantage by when the player is legit
|
||||||
|
# This is what the default config looks like (x axis = seconds, y axis = 1/1000 block): https://www.desmos.com/calculator/d4ufgxrxer
|
||||||
|
setback-decay-multiplier: 0.999
|
||||||
|
# How large of an offset from the player's movement should we create a violation for?
|
||||||
|
# Measured in blocks from the possible movement
|
||||||
|
# We account for Optifine by switching trig tables but dropping this to 0.001 will reduce FastMath
|
||||||
|
# flagging the anticheat if this compensation doesn't work...
|
||||||
|
threshold: 0.001
|
||||||
|
# How large of a violation in a tick before the player gets immediately setback?
|
||||||
|
# -1 to disable
|
||||||
|
immediate-setback-threshold: 0.1
|
||||||
|
# How large of an advantage over all ticks before we start to setback?
|
||||||
|
# -1 to disable
|
||||||
|
max-advantage: 1
|
||||||
|
# After 50 seconds with default config, the player will go from 4 blocks -> 1 block of advantage
|
||||||
|
# This is to stop the player from gathering too many violations and never being able to clear them all
|
||||||
|
# Default advantage ceiling (x axis = seconds, y axis = 1/1000 block): https://www.desmos.com/calculator/4lovswdarj
|
||||||
|
max-ceiling: 4
|
||||||
|
# Violation level threshold for setback
|
||||||
|
# 1 for old behavior
|
||||||
|
setback-violation-threshold: 1
|
||||||
|
|
||||||
|
# Checks to see if a player entered a block during a movement
|
||||||
|
Phase:
|
||||||
|
setbackvl: 1 # Glitching into blocks can allow wall climbing, plus this check is relatively stable
|
||||||
|
decay: 0.005
|
||||||
|
|
||||||
|
AirLiquidPlace:
|
||||||
|
cancelvl: 0
|
||||||
|
|
||||||
|
FabricatedPlace:
|
||||||
|
cancelvl: 5
|
||||||
|
|
||||||
|
FarPlace:
|
||||||
|
cancelvl: 5
|
||||||
|
|
||||||
|
PositionPlace:
|
||||||
|
cancelvl: 5
|
||||||
|
|
||||||
|
RotationPlace:
|
||||||
|
cancelvl: 5
|
||||||
|
|
||||||
|
# Prediction-based no slow check
|
||||||
|
# Grim accounts for buggy netcode here... hard to false even when spamming right click and offhand button
|
||||||
|
# Much more stable than other anticheats, but please report any falses... I have fixed a ton of netcode issues here.
|
||||||
|
NoSlow:
|
||||||
|
# How much of an offset is "cheating"
|
||||||
|
# By default this is lower than other offs
|
||||||
|
# Flags by 0.03-0.2 consistently with NoSlow on
|
||||||
|
threshold: 0.001
|
||||||
|
# Setback fast on the first item to remove any advantage NoSlow gives
|
||||||
|
setbackvl: 5
|
||||||
|
# Decay's when the player uses an item AND is slowed by it
|
||||||
|
decay: 0.05
|
||||||
|
|
||||||
|
Knockback:
|
||||||
|
# How much should we multiply total advantage by when the player is legit
|
||||||
|
setback-decay-multiplier: 0.999
|
||||||
|
# How large of an offset from the player's velocity should we create a violation for?
|
||||||
|
# Measured in blocks from the possible velocity
|
||||||
|
threshold: 0.001
|
||||||
|
# How large of a violation in a tick before the player gets immediately setback?
|
||||||
|
# -1 to disable
|
||||||
|
immediate-setback-threshold: 0.1
|
||||||
|
# How large of an advantage over all ticks before we start to setback?
|
||||||
|
# -1 to disable
|
||||||
|
max-advantage: 1
|
||||||
|
# This is to stop the player from gathering too many violations and never being able to clear them all
|
||||||
|
max-ceiling: 4
|
||||||
|
|
||||||
|
Explosion:
|
||||||
|
threshold: 0.001
|
||||||
|
setbackvl: 3
|
||||||
|
|
||||||
|
TimerA:
|
||||||
|
setbackvl: 10
|
||||||
|
# Milliseconds that the player can accumulate for later use when they fall behind
|
||||||
|
# Could potentially allow 1.8 fast use/fast heal/fast bow bypasses if set too high, 120 ms seems like a good balance
|
||||||
|
drift: 120
|
||||||
|
# Ping at which the check will start to limit timer balance, to prevent abuse.
|
||||||
|
# Can cause some setbacks for legitimate players but only if they are over this ping threshold.
|
||||||
|
# -1 to disable
|
||||||
|
ping-abuse-limit-threshold: 1000
|
||||||
|
|
||||||
|
NegativeTimer:
|
||||||
|
# Number of milliseconds lost while moving before we should start flagging
|
||||||
|
drift: 1200
|
||||||
|
|
||||||
|
# Same check method as TimerA, but for vehicles
|
||||||
|
TimerVehicle:
|
||||||
|
# Target 1.005 timer
|
||||||
|
setbackvl: 10
|
||||||
|
|
||||||
|
PacketOrderI:
|
||||||
|
# enable if players are getting flagged for using 1.7 animations mods
|
||||||
|
exempt-placing-while-digging: false
|
||||||
|
|
||||||
|
Reach:
|
||||||
|
# How much should we expand hitboxes by? 0.0005 should detect 3.0005+ reach
|
||||||
|
#
|
||||||
|
# There is 0.03 forced expansion with 1.9-1.18.1 (not 1.18.2), or some client/server combinations due to
|
||||||
|
# protocol changes and limitations. This check is most powerful with 1.7/1.8 clients on 1.8 servers.
|
||||||
|
threshold: 0.0005
|
||||||
|
# Should we cancel hits that we know are impossible?
|
||||||
|
# 3.00-3.03 hits may go through but still be flagged, due to packet order limitations
|
||||||
|
block-impossible-hits: true
|
||||||
|
# This will send an additional packet at the end of every tick to increase the likelihood of catching cheats
|
||||||
|
# This injects into server's connection list to send a final packet just before the server flushes
|
||||||
|
# Enabling this will increase bandwidth usage for all players
|
||||||
|
# This will not decrease overall server performance
|
||||||
|
# Enabling this will catch more cheaters.
|
||||||
|
# Leaving this disabled will still catch cheaters and will not cause false positives
|
||||||
|
# Unless you are a 1.8 PvP focused server, this additional packet is not recommended
|
||||||
|
enable-post-packet: false
|
||||||
|
|
||||||
|
exploit:
|
||||||
|
# You can gain high speeds when sprint jumping with an elytra, this prevents the exploit when set to false
|
||||||
|
# Mojang screwed up netcode by making elytra start client sided and elytra end server sided
|
||||||
|
# Elytras take 0.99 horizontal friction, so constantly adding 0.2 horizontal speeds results in very high speeds.
|
||||||
|
allow-sprint-jumping-when-using-elytra: true
|
||||||
|
# This option mitigates the player's placement on ghostblocks by resynchronizing the player when it happens
|
||||||
|
allow-building-on-ghostblocks: true
|
||||||
|
# This setting, influenced by the boolean above defines the distance to check for ghost blocks
|
||||||
|
# Its valid range is limited from 2 to 4
|
||||||
|
distance-to-check-if-ghostblocks: 2
|
||||||
|
|
||||||
|
# Enable logging plugins who have injected into netty on join to debug compatibility issues
|
||||||
|
debug-pipeline-on-join: false
|
||||||
|
|
||||||
|
# Enables experimental checks
|
||||||
|
experimental-checks: false
|
||||||
|
|
||||||
|
reset-item-usage-on-item-update: true
|
||||||
|
reset-item-usage-on-attack: true
|
||||||
|
reset-item-usage-on-slot-change: true
|
||||||
|
|
||||||
|
# Grim sometimes cancels illegal packets such as with timer, after X packets in a second cancelled, when should
|
||||||
|
# we simply kick the player? This is required as some packet limiters don't count packets cancelled by grim.
|
||||||
|
packet-spam-threshold: 100
|
||||||
|
# Enable this to print a stacktrace when a player is kicked due to packet-spam-threshold
|
||||||
|
debug-packet-cancel: false
|
||||||
|
|
||||||
|
# Grim is able to enforce that a player set out of flying state cannot have more than X milliseconds of ping
|
||||||
|
# This is due to Grim not currently checking flying players
|
||||||
|
# To disable, use -1
|
||||||
|
max-ping-out-of-flying: 1000
|
||||||
|
|
||||||
|
# Maximum ping when a firework boost is removed from the player.
|
||||||
|
# This prevents high latency players from being able to use 1 firework boost with an elytra forever.
|
||||||
|
max-ping-firework-boost: 1000
|
||||||
|
|
||||||
|
history:
|
||||||
|
enabled: true
|
||||||
|
# How many entries should be shown for each page with /grim history <player>
|
||||||
|
entries-per-page: 15
|
||||||
|
# What should the inserted server name be for the history command? This is useful if you use the same database for multiple servers
|
||||||
|
server-name: survival
|
||||||
|
database:
|
||||||
|
# Use SQLITE for local storage, use MYSQL if you have an external MySQL database. This is only updated on server restart
|
||||||
|
type: SQLITE
|
||||||
|
# MySQL connection details
|
||||||
|
host: _GRIM_DB_HOST_
|
||||||
|
port: _GRIM_DB_PORT_
|
||||||
|
database: _GRIM_DB_NAME_
|
||||||
|
username: _GRIM_DB_USERNAME_
|
||||||
|
password: '_GRIM_DB_PASSWORD_'
|
||||||
|
|
||||||
|
config-version: 9
|
12
src/plugins/GrimAC/discord.yml
Normal file
12
src/plugins/GrimAC/discord.yml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
enabled: false
|
||||||
|
webhook: ""
|
||||||
|
embed-title: "**Grim Alert**"
|
||||||
|
embed-color: "#00FFFF"
|
||||||
|
violation-content:
|
||||||
|
- "**Player**: %player%"
|
||||||
|
- "**Check**: %check%"
|
||||||
|
- "**Violations**: %violations%"
|
||||||
|
- "**Client Version**: %version%"
|
||||||
|
- "**Brand**: %brand%"
|
||||||
|
- "**Ping**: %ping%"
|
||||||
|
- "**TPS**: %tps%"
|
71
src/plugins/GrimAC/messages.yml
Normal file
71
src/plugins/GrimAC/messages.yml
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
# \u00BB is » (double >>), ANSI and UTF-8 interpret this differently... you may even see ? due to this
|
||||||
|
prefix: "&bGrim &8\u00BB"
|
||||||
|
|
||||||
|
alerts-enabled: "%prefix% &fAlerts enabled"
|
||||||
|
alerts-disabled: "%prefix% &fAlerts disabled"
|
||||||
|
verbose-enabled: "%prefix% &fVerbose enabled"
|
||||||
|
verbose-disabled: "%prefix% &fVerbose disabled"
|
||||||
|
brands-enabled: "%prefix% &fBrands enabled"
|
||||||
|
brands-disabled: "%prefix% &fBrands disabled"
|
||||||
|
client-brand-format: "%prefix% &f%player% joined using %brand%"
|
||||||
|
console-specify-target: "%prefix% &cYou must specify a target as the console!"
|
||||||
|
reloading: "%prefix% &7Reloading config..."
|
||||||
|
reloaded: "%prefix% &fConfig has been reloaded."
|
||||||
|
reload-failed: "%prefix% &cFailed to reload config."
|
||||||
|
player-not-found: "%prefix% &cPlayer is exempt or offline!"
|
||||||
|
player-not-this-server: "%prefix% &cPlayer is not on this server!"
|
||||||
|
spectate-return: "<click:run_command:/grim stopspectating><hover:show_text:\"/grim stopspectating\">\n%prefix% &fClick here to return to previous location\n</hover></click>"
|
||||||
|
cannot-spectate-return: "%prefix% &cYou can only do this after spectating a player"
|
||||||
|
cannot-run-on-self: "%prefix% &cYou cannot use this command on yourself!"
|
||||||
|
upload-log: "%prefix% &fUploaded debug to: %url%"
|
||||||
|
upload-log-start: "%prefix% &fUploading log... please wait"
|
||||||
|
upload-log-not-found: "%prefix% &cUnable to find that log"
|
||||||
|
upload-log-upload-failure: "%prefix% &cSomething went wrong while uploading this log, see console for more info"
|
||||||
|
disconnect:
|
||||||
|
timeout: "<lang:disconnect.timeout>"
|
||||||
|
closed: "<lang:disconnect.closed>"
|
||||||
|
run-as-player: "%prefix% &cThis command can only be used by players!"
|
||||||
|
run-as-player-or-console: "%prefix% &cThis command can only be used by players or the console!"
|
||||||
|
|
||||||
|
# Valid placeholders:
|
||||||
|
# %prefix%
|
||||||
|
# %player%
|
||||||
|
# %check_name%
|
||||||
|
# %description%
|
||||||
|
# %experimental%
|
||||||
|
# %vl% - violations
|
||||||
|
# %verbose% - extra information from the check such as offsets, not all checks will add information
|
||||||
|
alerts-format: "%prefix% &f%player% &bfailed &f%check_name%%experimental% &f(x&c%vl%&f) &7%verbose%"
|
||||||
|
alerts-format-proxy: "%prefix% &f[&cproxy&f] &f%player% &bfailed &f%check_name%%experimental% &f(x&c%vl%&f) &7%verbose%"
|
||||||
|
experimental-symbol: "*"
|
||||||
|
|
||||||
|
profile:
|
||||||
|
- "&7======================"
|
||||||
|
- "%prefix% &bProfile for &f%player%"
|
||||||
|
- "&bPing: &f%ping%"
|
||||||
|
- "&bVersion: &f%version%"
|
||||||
|
- "&bClient Brand: &f%brand%"
|
||||||
|
- "&bHorizontal Sensitivity: &f%h_sensitivity%%"
|
||||||
|
- "&bVertical Sensitivity: &f%v_sensitivity%%"
|
||||||
|
- "&bFastMath Enabled: &f%fast_math%"
|
||||||
|
- "&7======================"
|
||||||
|
help:
|
||||||
|
- "&7======================"
|
||||||
|
- "/grim alerts &f- &7Toggle alerts"
|
||||||
|
- "/grim brands &f- &7Toggle brands"
|
||||||
|
- "/grim profile <player> &f- &7View player info"
|
||||||
|
- "/grim help &f- &7View this help message"
|
||||||
|
- "/grim debug <player> &f- &7Developer Prediction output"
|
||||||
|
- "/grim perf &f- &7Developer ms/prediction"
|
||||||
|
- "/grim reload &f- &7Reloads the config"
|
||||||
|
- "/grim spectate <player> &f- &7Spectate a player"
|
||||||
|
- "/grim verbose &f- &7Shows every flag to you, without buffers"
|
||||||
|
- "/grim log [0-255] &f- &7Uploads a debug log for prediction flags"
|
||||||
|
- "/grim history <player> [page] &f- &7Shows previous alerts for the player"
|
||||||
|
- "&7======================"
|
||||||
|
|
||||||
|
grim-history-disabled: "%prefix% &cHistory subsystem is disabled!"
|
||||||
|
# Valid placeholders: %prefix% %player% %page% %maxPages%
|
||||||
|
grim-history-header: "%prefix% &bShowing logs for &f%player% (&f%page%&b/&f%maxPages%&f)"
|
||||||
|
# Valid placeholders: %prefix% %check% %vl% %verbose% %timeago% %server%
|
||||||
|
grim-history-entry: "%prefix% &8[&f%server%&8] &bFailed &f%check% (x&c%vl%&f) &7%verbose% (&b%timeago% ago&7)"
|
143
src/plugins/GrimAC/punishments.yml
Normal file
143
src/plugins/GrimAC/punishments.yml
Normal file
@ -0,0 +1,143 @@
|
|||||||
|
# # %check_name% - name of the check
|
||||||
|
# # %description% - description of the check
|
||||||
|
# # %vl% - violations
|
||||||
|
# # %verbose% - extra information
|
||||||
|
# # %player% - player name
|
||||||
|
# # [alert] - special command to alert
|
||||||
|
# # [webhook] - special command to alert to discord webhook
|
||||||
|
# # [proxy] - special command to alert to other servers connected to your proxy (BungeeCord/Velocity)
|
||||||
|
# Punishments:
|
||||||
|
# Simulation:
|
||||||
|
# # After how many seconds should a violation be removed?
|
||||||
|
# remove-violations-after: 300
|
||||||
|
# # This section will match all checks with the name,
|
||||||
|
# # To exclude a check that would otherwise be matched, put an exclamation mark in front of the name
|
||||||
|
# # For example, !BadPacketsN
|
||||||
|
# checks:
|
||||||
|
# - "Simulation"
|
||||||
|
# - "GroundSpoof"
|
||||||
|
# - "Timer"
|
||||||
|
# - "NoFall"
|
||||||
|
# # Threshold:Interval Command
|
||||||
|
# #
|
||||||
|
# # Example, to kick the player with the message "incorrect movement!" after 100 violations, with no interval
|
||||||
|
# # commands:
|
||||||
|
# # - "100:0 kick %player% incorrect movement!"
|
||||||
|
# # 0 means execute exactly once
|
||||||
|
# # - "100:50 say %player% is cheating"
|
||||||
|
# # Execute when the user hits flag 100, and after that, every 50th flag after 100
|
||||||
|
# #
|
||||||
|
# commands:
|
||||||
|
# - "100:40 [alert]"
|
||||||
|
# - "100:40 [log]"
|
||||||
|
# - "100:100 [webhook]"
|
||||||
|
# - "100:100 [proxy]"
|
||||||
|
# Knockback:
|
||||||
|
# remove-violations-after: 300
|
||||||
|
# checks:
|
||||||
|
# - "Knockback"
|
||||||
|
# - "Explosion"
|
||||||
|
# commands:
|
||||||
|
# - "5:5 [alert]"
|
||||||
|
# - "5:5 [log]"
|
||||||
|
# - "20:20 [webhook]"
|
||||||
|
# - "20:20 [proxy]"
|
||||||
|
# Post:
|
||||||
|
# remove-violations-after: 300
|
||||||
|
# checks:
|
||||||
|
# - "Post"
|
||||||
|
# commands:
|
||||||
|
# - "20:20 [alert]"
|
||||||
|
# - "20:20 [log]"
|
||||||
|
# - "40:40 [webhook]"
|
||||||
|
# - "40:40 [proxy]"
|
||||||
|
# BadPackets:
|
||||||
|
# remove-violations-after: 300
|
||||||
|
# checks:
|
||||||
|
# - "BadPackets"
|
||||||
|
# - "PacketOrder"
|
||||||
|
# - "Crash"
|
||||||
|
# commands:
|
||||||
|
# - "20:20 [alert]"
|
||||||
|
# - "20:20 [log]"
|
||||||
|
# - "40:40 [webhook]"
|
||||||
|
# - "40:40 [proxy]"
|
||||||
|
# Inventory:
|
||||||
|
# remove-violations-after: 300
|
||||||
|
# checks:
|
||||||
|
# - "Inventory"
|
||||||
|
# commands:
|
||||||
|
# - "10:10 [alert]"
|
||||||
|
# - "10:10 [log]"
|
||||||
|
# - "20:20 [webhook]"
|
||||||
|
# - "20:20 [proxy]"
|
||||||
|
# Reach:
|
||||||
|
# remove-violations-after: 300
|
||||||
|
# checks:
|
||||||
|
# - "Reach"
|
||||||
|
# commands:
|
||||||
|
# - "1:1 [alert]"
|
||||||
|
# - "1:1 [log]"
|
||||||
|
# - "1:1 [webhook]"
|
||||||
|
# - "1:1 [proxy]"
|
||||||
|
# Hitboxes:
|
||||||
|
# remove-violations-after: 300
|
||||||
|
# checks:
|
||||||
|
# - "Hitboxes"
|
||||||
|
# commands:
|
||||||
|
# - "5:3 [alert]"
|
||||||
|
# - "5:3 [log]"
|
||||||
|
# - "5:3 [webhook]"
|
||||||
|
# - "5:3 [proxy]"
|
||||||
|
# WallHit:
|
||||||
|
# remove-violations-after: 300
|
||||||
|
# checks:
|
||||||
|
# - "WallHit"
|
||||||
|
# commands:
|
||||||
|
# - "10:5 [alert]"
|
||||||
|
# - "10:5 [webhook]"
|
||||||
|
# - "10:5 [proxy]"
|
||||||
|
# - "10:5 [log]"
|
||||||
|
# EntityPierce:
|
||||||
|
# remove-violations-after: 300
|
||||||
|
# checks:
|
||||||
|
# - "EntityPierce"
|
||||||
|
# commands:
|
||||||
|
# - "15:10 [alert]"
|
||||||
|
# - "15:10 [webhook]"
|
||||||
|
# - "15:10 [proxy]"
|
||||||
|
# - "15:10 [log]"
|
||||||
|
# Misc:
|
||||||
|
# remove-violations-after: 300
|
||||||
|
# checks:
|
||||||
|
# - "Vehicle"
|
||||||
|
# - "NoSlow"
|
||||||
|
# - "Sprint"
|
||||||
|
# - "MultiActions"
|
||||||
|
# - "Place"
|
||||||
|
# - "Baritone"
|
||||||
|
# - "Break"
|
||||||
|
# - "TransactionOrder"
|
||||||
|
# - "Elytra"
|
||||||
|
# commands:
|
||||||
|
# - "10:5 [alert]"
|
||||||
|
# - "10:5 [log]"
|
||||||
|
# - "20:10 [webhook]"
|
||||||
|
# - "20:10 [proxy]"
|
||||||
|
# Combat:
|
||||||
|
# remove-violations-after: 300
|
||||||
|
# checks:
|
||||||
|
# - "Interact"
|
||||||
|
# - "Killaura"
|
||||||
|
# - "Aim"
|
||||||
|
# commands:
|
||||||
|
# - "20:40 [alert]"
|
||||||
|
# - "20:40 [log]"
|
||||||
|
# # As of 2.2.10, there are no AutoClicker checks and this is a placeholder. Grim will include AutoClicker checks in the future.
|
||||||
|
# Autoclicker:
|
||||||
|
# remove-violations-after: 300
|
||||||
|
# checks:
|
||||||
|
# - "Autoclicker"
|
||||||
|
# commands:
|
||||||
|
# - "20:40 [alert]"
|
||||||
|
# - "20:40 [log]"
|
BIN
src/plugins/LightningGrim-bukkit-2.3.72-db5a1be.jar
(Stored with Git LFS)
Normal file
BIN
src/plugins/LightningGrim-bukkit-2.3.72-db5a1be.jar
(Stored with Git LFS)
Normal file
Binary file not shown.
413
src/plugins/Orebfuscator/config.yml
Normal file
413
src/plugins/Orebfuscator/config.yml
Normal file
@ -0,0 +1,413 @@
|
|||||||
|
version: 4
|
||||||
|
general:
|
||||||
|
checkForUpdates: true
|
||||||
|
updateOnBlockDamage: true
|
||||||
|
bypassNotification: true
|
||||||
|
ignoreSpectator: false
|
||||||
|
updateRadius: 2
|
||||||
|
advanced:
|
||||||
|
verbose: false
|
||||||
|
obfuscation:
|
||||||
|
threads: -1
|
||||||
|
timeout: 10000
|
||||||
|
maxMillisecondsPerTick: 10
|
||||||
|
proximity:
|
||||||
|
threads: -1
|
||||||
|
defaultBucketSize: 50
|
||||||
|
threadCheckInterval: 50
|
||||||
|
playerCheckInterval: 5000
|
||||||
|
cache:
|
||||||
|
enabled: true
|
||||||
|
memoryCache:
|
||||||
|
maximumSize: 32768
|
||||||
|
expireAfterAccess: 60000
|
||||||
|
diskCache:
|
||||||
|
enabled: true
|
||||||
|
directory: orebfuscator_cache
|
||||||
|
maximumOpenFiles: 256
|
||||||
|
deleteFilesAfterAccess: 21600000
|
||||||
|
maximumTaskQueueSize: 32768
|
||||||
|
obfuscation:
|
||||||
|
obfuscation-overworld:
|
||||||
|
enabled: true
|
||||||
|
minY: -2032
|
||||||
|
maxY: 2031
|
||||||
|
worlds:
|
||||||
|
- world
|
||||||
|
layerObfuscation: false
|
||||||
|
hiddenBlocks:
|
||||||
|
- minecraft:emerald_ore
|
||||||
|
- minecraft:deepslate_emerald_ore
|
||||||
|
- minecraft:diamond_ore
|
||||||
|
- minecraft:deepslate_diamond_ore
|
||||||
|
- minecraft:gold_ore
|
||||||
|
- minecraft:deepslate_gold_ore
|
||||||
|
- minecraft:raw_gold_block
|
||||||
|
- minecraft:iron_ore
|
||||||
|
- minecraft:deepslate_iron_ore
|
||||||
|
- minecraft:raw_iron_block
|
||||||
|
- minecraft:coal_ore
|
||||||
|
- minecraft:deepslate_coal_ore
|
||||||
|
- minecraft:lapis_ore
|
||||||
|
- minecraft:deepslate_lapis_ore
|
||||||
|
- minecraft:redstone_ore
|
||||||
|
- minecraft:deepslate_redstone_ore
|
||||||
|
- minecraft:copper_ore
|
||||||
|
- minecraft:raw_copper_block
|
||||||
|
- minecraft:deepslate_copper_ore
|
||||||
|
- minecraft:stone
|
||||||
|
- minecraft:deepslate
|
||||||
|
- minecraft:chest
|
||||||
|
- minecraft:ender_chest
|
||||||
|
- minecraft:trapped_chest
|
||||||
|
- minecraft:shulker_box
|
||||||
|
- minecraft:white_shulker_box
|
||||||
|
- minecraft:orange_shulker_box
|
||||||
|
- minecraft:magenta_shulker_box
|
||||||
|
- minecraft:light_blue_shulker_box
|
||||||
|
- minecraft:yellow_shulker_box
|
||||||
|
- minecraft:lime_shulker_box
|
||||||
|
- minecraft:pink_shulker_box
|
||||||
|
- minecraft:gray_shulker_box
|
||||||
|
- minecraft:light_gray_shulker_box
|
||||||
|
- minecraft:cyan_shulker_box
|
||||||
|
- minecraft:purple_shulker_box
|
||||||
|
- minecraft:blue_shulker_box
|
||||||
|
- minecraft:brown_shulker_box
|
||||||
|
- minecraft:green_shulker_box
|
||||||
|
- minecraft:red_shulker_box
|
||||||
|
- minecraft:black_shulker_box
|
||||||
|
- minecraft:bedrock
|
||||||
|
randomBlocks:
|
||||||
|
section-global:
|
||||||
|
minY: -2032
|
||||||
|
maxY: 2031
|
||||||
|
blocks:
|
||||||
|
minecraft:cave_air: 5
|
||||||
|
minecraft:cobblestone: 1
|
||||||
|
minecraft:mossy_cobblestone: 1
|
||||||
|
minecraft:obsidian: 1
|
||||||
|
section-stone:
|
||||||
|
minY: -5
|
||||||
|
maxY: 2031
|
||||||
|
blocks:
|
||||||
|
minecraft:stone: 15
|
||||||
|
minecraft:diamond_ore: 10
|
||||||
|
minecraft:emerald_ore: 5
|
||||||
|
minecraft:gold_ore: 5
|
||||||
|
minecraft:iron_ore: 5
|
||||||
|
minecraft:copper_ore: 5
|
||||||
|
minecraft:coal_ore: 5
|
||||||
|
minecraft:lapis_ore: 5
|
||||||
|
minecraft:redstone_ore: 5
|
||||||
|
section-deepslate:
|
||||||
|
minY: -2032
|
||||||
|
maxY: 5
|
||||||
|
blocks:
|
||||||
|
minecraft:deepslate: 15
|
||||||
|
minecraft:deepslate_diamond_ore: 10
|
||||||
|
minecraft:deepslate_emerald_ore: 5
|
||||||
|
minecraft:deepslate_gold_ore: 5
|
||||||
|
minecraft:deepslate_iron_ore: 5
|
||||||
|
minecraft:deepslate_copper_ore: 5
|
||||||
|
minecraft:deepslate_coal_ore: 5
|
||||||
|
minecraft:deepslate_lapis_ore: 5
|
||||||
|
minecraft:deepslate_redstone_ore: 5
|
||||||
|
section-bedrock:
|
||||||
|
minY: -64
|
||||||
|
maxY: -60
|
||||||
|
blocks:
|
||||||
|
minecraft:bedrock: 20
|
||||||
|
obfuscation-nether:
|
||||||
|
enabled: true
|
||||||
|
minY: -2032
|
||||||
|
maxY: 2031
|
||||||
|
worlds:
|
||||||
|
- world_nether
|
||||||
|
layerObfuscation: false
|
||||||
|
hiddenBlocks:
|
||||||
|
- minecraft:netherrack
|
||||||
|
- minecraft:nether_quartz_ore
|
||||||
|
- minecraft:chest
|
||||||
|
- minecraft:ender_chest
|
||||||
|
- minecraft:trapped_chest
|
||||||
|
- minecraft:shulker_box
|
||||||
|
- minecraft:white_shulker_box
|
||||||
|
- minecraft:orange_shulker_box
|
||||||
|
- minecraft:magenta_shulker_box
|
||||||
|
- minecraft:light_blue_shulker_box
|
||||||
|
- minecraft:yellow_shulker_box
|
||||||
|
- minecraft:lime_shulker_box
|
||||||
|
- minecraft:pink_shulker_box
|
||||||
|
- minecraft:gray_shulker_box
|
||||||
|
- minecraft:light_gray_shulker_box
|
||||||
|
- minecraft:cyan_shulker_box
|
||||||
|
- minecraft:purple_shulker_box
|
||||||
|
- minecraft:blue_shulker_box
|
||||||
|
- minecraft:brown_shulker_box
|
||||||
|
- minecraft:green_shulker_box
|
||||||
|
- minecraft:red_shulker_box
|
||||||
|
- minecraft:black_shulker_box
|
||||||
|
- minecraft:ancient_debris
|
||||||
|
- minecraft:nether_gold_ore
|
||||||
|
- minecraft:basalt
|
||||||
|
- minecraft:soul_sand
|
||||||
|
- minecraft:soul_soil
|
||||||
|
- minecraft:bedrock
|
||||||
|
randomBlocks:
|
||||||
|
section-global:
|
||||||
|
minY: -2032
|
||||||
|
maxY: 2031
|
||||||
|
blocks:
|
||||||
|
minecraft:netherrack: 4
|
||||||
|
minecraft:nether_quartz_ore: 1
|
||||||
|
minecraft:nether_gold_ore: 1
|
||||||
|
minecraft:ancient_debris: 1
|
||||||
|
section-bedrock-top:
|
||||||
|
minY: 123
|
||||||
|
maxY: 127
|
||||||
|
blocks:
|
||||||
|
minecraft:bedrock: 20
|
||||||
|
section-bedrock-bottom:
|
||||||
|
minY: 0
|
||||||
|
maxY: 4
|
||||||
|
blocks:
|
||||||
|
minecraft:bedrock: 20
|
||||||
|
obfuscation-end:
|
||||||
|
enabled: true
|
||||||
|
minY: -2032
|
||||||
|
maxY: 2031
|
||||||
|
worlds:
|
||||||
|
- world_the_end
|
||||||
|
layerObfuscation: false
|
||||||
|
hiddenBlocks:
|
||||||
|
- minecraft:chest
|
||||||
|
- minecraft:ender_chest
|
||||||
|
- minecraft:trapped_chest
|
||||||
|
- minecraft:shulker_box
|
||||||
|
- minecraft:white_shulker_box
|
||||||
|
- minecraft:orange_shulker_box
|
||||||
|
- minecraft:magenta_shulker_box
|
||||||
|
- minecraft:light_blue_shulker_box
|
||||||
|
- minecraft:yellow_shulker_box
|
||||||
|
- minecraft:lime_shulker_box
|
||||||
|
- minecraft:pink_shulker_box
|
||||||
|
- minecraft:gray_shulker_box
|
||||||
|
- minecraft:light_gray_shulker_box
|
||||||
|
- minecraft:cyan_shulker_box
|
||||||
|
- minecraft:purple_shulker_box
|
||||||
|
- minecraft:blue_shulker_box
|
||||||
|
- minecraft:brown_shulker_box
|
||||||
|
- minecraft:green_shulker_box
|
||||||
|
- minecraft:red_shulker_box
|
||||||
|
- minecraft:black_shulker_box
|
||||||
|
randomBlocks:
|
||||||
|
section-global:
|
||||||
|
minY: -2032
|
||||||
|
maxY: 2031
|
||||||
|
blocks:
|
||||||
|
minecraft:end_stone: 1
|
||||||
|
minecraft:end_stone_bricks: 1
|
||||||
|
minecraft:bedrock: 1
|
||||||
|
minecraft:obsidian: 1
|
||||||
|
minecraft:purpur_block: 1
|
||||||
|
proximity:
|
||||||
|
proximity-overworld:
|
||||||
|
enabled: true
|
||||||
|
minY: -2032
|
||||||
|
maxY: 2031
|
||||||
|
worlds:
|
||||||
|
- world
|
||||||
|
distance: 24
|
||||||
|
frustumCulling:
|
||||||
|
enabled: true
|
||||||
|
minDistance: 3.0
|
||||||
|
fov: 80.0
|
||||||
|
rayCastCheck:
|
||||||
|
enabled: true
|
||||||
|
onlyCheckCenter: true
|
||||||
|
useBlockBelow: true
|
||||||
|
hiddenBlocks:
|
||||||
|
minecraft:mossy_cobblestone: {}
|
||||||
|
minecraft:diamond_ore: {}
|
||||||
|
minecraft:deepslate_diamond_ore: {}
|
||||||
|
minecraft:emerald_ore: {}
|
||||||
|
minecraft:deepslate_emerald_ore: {}
|
||||||
|
minecraft:chest: {}
|
||||||
|
minecraft:ender_chest: {}
|
||||||
|
minecraft:trapped_chest: {}
|
||||||
|
minecraft:anvil: {}
|
||||||
|
minecraft:crafter: {}
|
||||||
|
minecraft:crafting_table: {}
|
||||||
|
minecraft:dispenser: {}
|
||||||
|
minecraft:enchanting_table: {}
|
||||||
|
minecraft:furnace: {}
|
||||||
|
minecraft:blast_furnace: {}
|
||||||
|
minecraft:cartography_table: {}
|
||||||
|
minecraft:fletching_table: {}
|
||||||
|
minecraft:grindstone: {}
|
||||||
|
minecraft:composter: {}
|
||||||
|
minecraft:lectern: {}
|
||||||
|
minecraft:loom: {}
|
||||||
|
minecraft:smithing_table: {}
|
||||||
|
minecraft:smoker: {}
|
||||||
|
minecraft:stonecutter: {}
|
||||||
|
minecraft:hopper: {}
|
||||||
|
minecraft:spawner: {}
|
||||||
|
minecraft:shulker_box: {}
|
||||||
|
minecraft:white_shulker_box: {}
|
||||||
|
minecraft:orange_shulker_box: {}
|
||||||
|
minecraft:magenta_shulker_box: {}
|
||||||
|
minecraft:light_blue_shulker_box: {}
|
||||||
|
minecraft:yellow_shulker_box: {}
|
||||||
|
minecraft:lime_shulker_box: {}
|
||||||
|
minecraft:pink_shulker_box: {}
|
||||||
|
minecraft:gray_shulker_box: {}
|
||||||
|
minecraft:light_gray_shulker_box: {}
|
||||||
|
minecraft:cyan_shulker_box: {}
|
||||||
|
minecraft:purple_shulker_box: {}
|
||||||
|
minecraft:blue_shulker_box: {}
|
||||||
|
minecraft:brown_shulker_box: {}
|
||||||
|
minecraft:green_shulker_box: {}
|
||||||
|
minecraft:red_shulker_box: {}
|
||||||
|
minecraft:black_shulker_box: {}
|
||||||
|
minecraft:bee_nest: {}
|
||||||
|
minecraft:beehive: {}
|
||||||
|
randomBlocks:
|
||||||
|
section-stone:
|
||||||
|
minY: -5
|
||||||
|
maxY: 2031
|
||||||
|
blocks:
|
||||||
|
minecraft:stone: 1
|
||||||
|
section-deepslate:
|
||||||
|
minY: -2032
|
||||||
|
maxY: 5
|
||||||
|
blocks:
|
||||||
|
minecraft:deepslate: 1
|
||||||
|
proximity-nether:
|
||||||
|
enabled: true
|
||||||
|
minY: -2032
|
||||||
|
maxY: 2031
|
||||||
|
worlds:
|
||||||
|
- world_nether
|
||||||
|
distance: 24
|
||||||
|
frustumCulling:
|
||||||
|
enabled: true
|
||||||
|
minDistance: 3.0
|
||||||
|
fov: 80.0
|
||||||
|
rayCastCheck:
|
||||||
|
enabled: true
|
||||||
|
onlyCheckCenter: true
|
||||||
|
useBlockBelow: true
|
||||||
|
hiddenBlocks:
|
||||||
|
minecraft:chest: {}
|
||||||
|
minecraft:ender_chest: {}
|
||||||
|
minecraft:trapped_chest: {}
|
||||||
|
minecraft:anvil: {}
|
||||||
|
minecraft:crafter: {}
|
||||||
|
minecraft:crafting_table: {}
|
||||||
|
minecraft:dispenser: {}
|
||||||
|
minecraft:enchanting_table: {}
|
||||||
|
minecraft:furnace: {}
|
||||||
|
minecraft:blast_furnace: {}
|
||||||
|
minecraft:cartography_table: {}
|
||||||
|
minecraft:fletching_table: {}
|
||||||
|
minecraft:grindstone: {}
|
||||||
|
minecraft:composter: {}
|
||||||
|
minecraft:lectern: {}
|
||||||
|
minecraft:loom: {}
|
||||||
|
minecraft:smithing_table: {}
|
||||||
|
minecraft:smoker: {}
|
||||||
|
minecraft:stonecutter: {}
|
||||||
|
minecraft:hopper: {}
|
||||||
|
minecraft:spawner: {}
|
||||||
|
minecraft:shulker_box: {}
|
||||||
|
minecraft:white_shulker_box: {}
|
||||||
|
minecraft:orange_shulker_box: {}
|
||||||
|
minecraft:magenta_shulker_box: {}
|
||||||
|
minecraft:light_blue_shulker_box: {}
|
||||||
|
minecraft:yellow_shulker_box: {}
|
||||||
|
minecraft:lime_shulker_box: {}
|
||||||
|
minecraft:pink_shulker_box: {}
|
||||||
|
minecraft:gray_shulker_box: {}
|
||||||
|
minecraft:light_gray_shulker_box: {}
|
||||||
|
minecraft:cyan_shulker_box: {}
|
||||||
|
minecraft:purple_shulker_box: {}
|
||||||
|
minecraft:blue_shulker_box: {}
|
||||||
|
minecraft:brown_shulker_box: {}
|
||||||
|
minecraft:green_shulker_box: {}
|
||||||
|
minecraft:red_shulker_box: {}
|
||||||
|
minecraft:black_shulker_box: {}
|
||||||
|
minecraft:bee_nest: {}
|
||||||
|
minecraft:beehive: {}
|
||||||
|
minecraft:ancient_debris: {}
|
||||||
|
minecraft:nether_gold_ore: {}
|
||||||
|
minecraft:respawn_anchor: {}
|
||||||
|
randomBlocks:
|
||||||
|
section-global:
|
||||||
|
minY: -2032
|
||||||
|
maxY: 2031
|
||||||
|
blocks:
|
||||||
|
minecraft:netherrack: 1
|
||||||
|
proximity-end:
|
||||||
|
enabled: true
|
||||||
|
minY: -2032
|
||||||
|
maxY: 2031
|
||||||
|
worlds:
|
||||||
|
- world_the_end
|
||||||
|
distance: 24
|
||||||
|
frustumCulling:
|
||||||
|
enabled: true
|
||||||
|
minDistance: 3.0
|
||||||
|
fov: 80.0
|
||||||
|
rayCastCheck:
|
||||||
|
enabled: true
|
||||||
|
onlyCheckCenter: true
|
||||||
|
useBlockBelow: true
|
||||||
|
hiddenBlocks:
|
||||||
|
minecraft:chest: {}
|
||||||
|
minecraft:ender_chest: {}
|
||||||
|
minecraft:trapped_chest: {}
|
||||||
|
minecraft:anvil: {}
|
||||||
|
minecraft:crafter: {}
|
||||||
|
minecraft:crafting_table: {}
|
||||||
|
minecraft:dispenser: {}
|
||||||
|
minecraft:enchanting_table: {}
|
||||||
|
minecraft:furnace: {}
|
||||||
|
minecraft:blast_furnace: {}
|
||||||
|
minecraft:cartography_table: {}
|
||||||
|
minecraft:fletching_table: {}
|
||||||
|
minecraft:grindstone: {}
|
||||||
|
minecraft:composter: {}
|
||||||
|
minecraft:lectern: {}
|
||||||
|
minecraft:loom: {}
|
||||||
|
minecraft:smithing_table: {}
|
||||||
|
minecraft:smoker: {}
|
||||||
|
minecraft:stonecutter: {}
|
||||||
|
minecraft:hopper: {}
|
||||||
|
minecraft:spawner: {}
|
||||||
|
minecraft:shulker_box: {}
|
||||||
|
minecraft:white_shulker_box: {}
|
||||||
|
minecraft:orange_shulker_box: {}
|
||||||
|
minecraft:magenta_shulker_box: {}
|
||||||
|
minecraft:light_blue_shulker_box: {}
|
||||||
|
minecraft:yellow_shulker_box: {}
|
||||||
|
minecraft:lime_shulker_box: {}
|
||||||
|
minecraft:pink_shulker_box: {}
|
||||||
|
minecraft:gray_shulker_box: {}
|
||||||
|
minecraft:light_gray_shulker_box: {}
|
||||||
|
minecraft:cyan_shulker_box: {}
|
||||||
|
minecraft:purple_shulker_box: {}
|
||||||
|
minecraft:blue_shulker_box: {}
|
||||||
|
minecraft:brown_shulker_box: {}
|
||||||
|
minecraft:green_shulker_box: {}
|
||||||
|
minecraft:red_shulker_box: {}
|
||||||
|
minecraft:black_shulker_box: {}
|
||||||
|
minecraft:bee_nest: {}
|
||||||
|
minecraft:beehive: {}
|
||||||
|
randomBlocks:
|
||||||
|
section-global:
|
||||||
|
minY: -2032
|
||||||
|
maxY: 2031
|
||||||
|
blocks:
|
||||||
|
minecraft:end_stone: 1
|
BIN
src/plugins/ProtocolLib.jar
(Stored with Git LFS)
Normal file
BIN
src/plugins/ProtocolLib.jar
(Stored with Git LFS)
Normal file
Binary file not shown.
21
src/plugins/ProtocolLib/config.yml
Normal file
21
src/plugins/ProtocolLib/config.yml
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
global:
|
||||||
|
# Settings for the automatic version updater
|
||||||
|
auto updater:
|
||||||
|
notify: true
|
||||||
|
download: false
|
||||||
|
# Number of seconds to wait until a new update is downloaded
|
||||||
|
delay: 43200 # 12 hours
|
||||||
|
metrics: false
|
||||||
|
# Prints certain warnings to players with the protocol.info permission
|
||||||
|
chat warnings: true
|
||||||
|
# Automatically compile structure modifiers
|
||||||
|
background compiler: true
|
||||||
|
# Disable version checking for the given Minecraft version. Backup your world first!
|
||||||
|
ignore version check:
|
||||||
|
# Whether or not to enable the filter command
|
||||||
|
debug: false
|
||||||
|
# Whether or not to print a stack trace for every warning
|
||||||
|
detailed error: false
|
||||||
|
# The engine used by the filter command
|
||||||
|
script engine: JavaScript
|
||||||
|
suppressed reports:
|
1
src/plugins/ProtocolLib/lastupdate
Normal file
1
src/plugins/ProtocolLib/lastupdate
Normal file
@ -0,0 +1 @@
|
|||||||
|
1751878745
|
BIN
src/plugins/orebfuscator-plugin-5.5.4.jar
(Stored with Git LFS)
Normal file
BIN
src/plugins/orebfuscator-plugin-5.5.4.jar
(Stored with Git LFS)
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user