Server owners have a configurable amount of points and actions that can be executed when a player reaches X infractions; this is intended to be automated by your anti-cheat plugin. If a player were to reach, let’s say 3 infractions, there is no excuse for them to claim they have been falsely banned when they were caught breaking rules on 3 separate occasions. These 3 points can considerably decay over time if desired.
Kyra logs every action it takes into a file for server owners to monitor in JSON. MySQL is also an option, which allows for punishment across servers if using Bungee (Feature coming soon!).
Code:
{
"logs": [
"2019-12-03 10:46:05 | CONSOLE has punished MarkElf for combat. Infractions: 1",
"2019-12-03 10:46:15 | CONSOLE has punished MarkElf for combat. Infractions: 2",
"2019-12-03 10:46:18 | CONSOLE has punished MarkElf for combat. Infractions: 3"
]
}
- /Kyra
- /Infraction add (player) (category/alias)
- /Infraction check (player) (category)
- /Infraction remove (player) (category)
- /Infraction removeall (player) (category)
- /Infraction save
- /Infraction set (player) (category) (amount)
- Aliases: Inf, Infractions
- Kyra.admin
- Kyra.infraction.add
- Kyra.infraction.set
- Kyra.infraction.remove
- Kyra.infraction.check
- Kyra.infraction.save
- Kyra.recieve
Code:
# _ __ _____ __ _ _ _
# | |/ / / ____| / _(_) | | (_)
# | ' /_ _ _ __ __ _ | | ___ _ __ | |_ _ __ _ _ _ _ __ __ _| |_ _ ___ _ __
# | <| | | | '__/ _` | | | / _ \| '_ \| _| |/ _` | | | | '__/ _` | __| |/ _ \| '_ \
# | . \ |_| | | | (_| | | |___| (_) | | | | | | | (_| | |_| | | | (_| | |_| | (_) | | | |
# |_|\_\__, |_| \__,_| \_____\___/|_| |_|_| |_|\__, |\__,_|_| \__,_|\__|_|\___/|_| |_|
# __/ | __/ |
# |___/ |___/
#
#Kyra was released by MarkElf in collaboration with Zide.
Options:
save-task-interval: 300 #time in seconds that data is saved.
mysql: false
host: 'localhost'
database: 'server'
user: 'root'
pass: 'password'
port: 3306
Expire:
active: true
cooldown: 3600
categories:
- 'spam'
- 'combat'
- 'movement'
Messages:
bc_msg: "&2&lKyra &a>> &2%player% &ahas been punished for &2%reason%&a." #Broadcast message requires permission node! (kyra.receive)
punished_msg: '&2&lKyra &a>> &2%player% &ahas been punished for &2%reason%&a. Infractions: %infractions%'
forgive_msg: "&2&lKyra &a>>&b &2%player% &ahas been forgiven for &2%reason%&a. Infractions: %infractions%"
set_msg: "&2&lKyra &a>> &2%player% &avl for &2%reason%&a has been set to: %infractions%"
no_type: "&2&lError &a>>&a There is no type for &2%reason%&a."
no_player: '&2&lError &a>> &2%player%&a does not exist'
no_perm: '&2&lKyra &a>> You do not have access to that command.'
check_points: '&2&lKyra &a>> &2%player% &ais at &2%infractions%&a for &2%reason%&a.'
data_saved: '&2&lKyra &a>> &aAll data and logs saved successfully.'
Log:
addition: "%time% | %sender% has punished %player% for %reason%. Infractions: %infractions%"
removal: '%time% | %sender% has forgiven %player% for %reason%. Infractions: %infractions%'
set: '%time% | %sender% has set the infractions of %player% for %reason% %infractions%'
Categories:
spam:
identifiers:
- ad
- ads
- advertising
- caps
- spambot
addition:
1:
- 'tellraw %player% {"text":"You have been warned for spam."}'
2:
- 'mute %player% 1 hour'
3:
- 'mute %player% 6 hours'
4:
- 'mute %player% 24 hours'
5:
- 'mute %player% 48 hours'
6:
- 'mute %player% 72 hours'
removal:
0:
- 'unmute %player%'
1:
- 'unmute %player%'
2:
- 'unmute %player%'
3:
- 'unmute %player%'
4:
- 'unmute %player%'
5:
- 'unmute %player%'
combat:
identifiers:
- aimbot
- angle
- attackfrequency
- aimbot
- aimassist
- antiknockback
- autoclicker
- aura
- clickaura
- clickpattern
- criticals
- cps
- crits
- direction
- fastbow
- improbable
- instantbow
- inventoryhit
- killaura
- legitaura
- noswing
- pitchpattern
- reach
- regen
- tpaura
addition:
1: []
2:
- 'kick %player% Using combat cheats'
3:
- 'ban %player% Combat cheats'
removal:
0:
- 'unban %player%'
2:
- 'unban %player%'
movement:
identifiers:
- airjump
- blink
- boatfly
- bhop
- bunnyhop
- elytrafly
- extraelytra
- fastfall
- fastladder
- fly
- flyingfrequency
- glide
- hclip
- jesus
- longjump
- lowhop
- morepackets
- nofall
- noslow
- omnisprint
- packetsneak
- passable
- phase
- selfhit
- speed
- spider
- step
- vclip
- yclip
addition:
1: []
2:
- 'kick %player% Using movement cheats'
3:
- 'ban %player% Movement cheats'
removal:
0:
- 'unban %player%'
2:
- 'unban %player%'
world:
identifiers:
- bedfucker
- cheststeal
- chestesp
- civbreak
- derp
- fastplace
- fastbreak
- fasteat
- freecam
- ghosthand
- headless
- inventorymove
- keepalive
- noweb
- nuker
- packetsneak
- playeresp
- scaffold
- tower
addition:
1: []
2:
- 'kick %player% Using world cheats'
3:
- 'ban %player% world cheats'
removal:
0:
- 'unban %player%'
2:
- 'unban %player%'
banavoid:
identifiers:
- alt
- alts
addition:
1:
- 'banip %player% &cYou have been banned for ban avoiding.'
removal:
0:
- 'unban %player%'