Repository navigation
Configuration
Returned back to yml files, to store comments inside files
config: v4
# Behavior: "strict" - Force requires client-side mod or "vanilla" allow also non-mod clients
behavior: strict
# Integrity Mode: "signed" or "dev" - allow unsigned mods (if you are building own client/server fork)
integrity-mode: signed
# Whitelist mode: true = only allowed mods (inside whitelisted.yml), false = allowed by default
whitelist: false
# Allow Bedrock players
allow-bedrock-players: false
# Player Database: Store and track player mod history (requires playerdb to be enabled)
playerdb-enabled: false
# Mod List Toggles: Enable/disable each mod list without losing configuration
mods-required-enabled: true
mods-blacklisted-enabled: true
mods-whitelisted-enabled: true
# Kick Messages - customize as needed (use {mod} for mod name)
messages:
kick: "You are using a blacklisted mod: {mod}. Please remove it to join this server."
no-handshake: "To connect to this server please download 'Hand-shaker' mod."
missing-whitelist: "You are missing required mods: {mod}. Please install them to join this server."
invalid-signature: "Invalid client signature. Please use the official HandShaker client mod."
ban: "You have been banned for using a blacklisted mod: {mod}."
bedrock: "Bedrock players are not allowed on this server."
# custom messages for actions can be added here
test_action: "Hi, {player}! You are using {mod}! Thanks for using it!"actions:
#System actions (Uses hardcoded functions, not recomended to copy these)
kick:
commands:
- "kick {player} {messages.kick}"
ban:
commands:
- "ban {player} {messages.ban}"
log: true
log:
missing: "{player} tried to join but missing required mod/mods: {mod}"
blacklisted: "{player} tried to join with blacklisted mod/mods: {mod}"
#Examples of custom actions
test_action:
commands:
- "msg {player} {messages.test_action}"
- "give {player} minecraft:diamond 1"
- "say Say Hello to {player}, who is using {mod}!"
watchdog:
commands:
- "ac increase_alert_level {player} 1000"required:
hand-shaker: noneignored:
- fabric-api
- fabric-loaderblacklisted:
xray: ban
forge: kick
sus_mod: watchdogwhitelisted:
sodium: noneIntegrity:
-
Signed- Accepts only-signed handshaker copies, preventing using modified handshaker mod. -
Dev- Accepts non-signed copy's, Only for personal use or self signed copies (Could be potentially dangerous)
Behavior:
-
Strict- Kick clients with blacklisted mods + Kick non Hand-shaker mod clients. -
Vanilla- Kick clients with blacklisted mods but ignoring non Hand-shaker mod clients (Could be dangerous if clients spoofs clients)
allow_bedrock_players: (5.2.0+)
-
true- Allows GeyserMC/Floodgate players to join -
false- (Default)
Default Mode:
-
allowed- Unlisted mods are permitted (permissive) -
blacklisted- Unlisted mods will cause kick (restrictive)
Per-mod configuration
"mod_example": {
"mode": "BLACKLISTED",
"action": "Ban"
mode:
-
required- Mod must be present to join the server -
allowed- Mod is permitted but not required -
blacklisted- Mod will cause kick if detected
action:
kickban
Example of default hand-shaker.json for servers:
{
"config": "v3",
"Integrity": "Signed",
"Behavior": "Strict",
"allow_bedrock_players": false,
"Invalid signature kick message": "Invalid client signature. Please use the official client.",
"Kick Message": "You are using a blacklisted mod: {mod}. Please remove it to join this server.",
"Missing mod message": "To connect to this server please download \u0027Hand-shaker\u0027 mod.",
"Missing required mod message": "You are missing required mods: {mod}. Please install them to join this server.",
"Default Mode": "allowed",
"Ignored Mods": [
"fabric-api"
],
"Mods": {
"hand-shaker": {
"mode": "REQUIRED",
"action": "kick"
},
"xraymod": {
"mode": "BLACKLISTED",
"action": "kick"
},
"testmod": {
"mode": "BLACKLISTED",
"action": "kick"
},
"forge": {
"mode": "BLACKLISTED",
"action": "kick"
}
}
}Example of default config.yml for Paper server:
config: v2 #DO NOT CHANGE!!!
Kick Message: "You are using a blacklisted mod: {mod}. Please remove it to join this server."
Missing required mod message: "You are missing required mods: {mod}. Please install them to join this server."
Missing mod message: "To connect to this server please download 'Hand-shaker' mod."
Invalid signature kick message: "Invalid client signature. Please use the official client."
Behavior: Strict
#"Strict" - Kick clients with blacklisted mods + Kick non Hand-shaker mod clients
#"Vanilla" - Kick clients with blacklisted mods but ignoring non Hand-shaker mod clients (Could be dangerous if clients spoofs clients)
Integrity: Signed
#"Signed" - Accepts only-signed handshaker copies, preventing using modified handshaker mod
#"Dev" - Accepts non-signed copys, Only for personal use or self signed copies (Could be potentially dangerous)
#Per-mod configuration system:
#"required" - Mod must be present to join the server
#"allowed" - Mod is permitted but not required
#"blacklisted" - Mod will cause kick if detected
#Mods not in the list will be treated based on Default Mode setting
Default Mode: allowed
#"allowed" - Unlisted mods are permitted (permissive)
#"blacklisted" - Unlisted mods will cause kick (restrictive)
Mods:
hand-shaker: required
xraymod: blacklisted
testmod: blacklisted
forge: blacklistedExample of default hand-shaker.json for Fabric server:
{
"config": "v2",
"integrity": "SIGNED",
"behavior": "STRICT",
"invalid_signature_kick_message": "Invalid client signature. Please use the official client.",
"kick_message": "You are using a blacklisted mod: {mod}. Please remove it to join this server.",
"missing_mod_message": "To connect to this server please download 'Hand-shaker' mod.",
"missing_whitelist_mod_message": "You are missing required mods: {mod}. Please install them to join this server.",
"default_mode": "ALLOWED",
"mods": {
"hand-shaker": "REQUIRED",
"xraymod": "BLACKLISTED",
"testmod": "BLACKLISTED",
"forge": "BLACKLISTED"
}
}Example of default config.yml for Paper server:
Behavior: Strict
#"Strict" - Kick clients with blacklisted mods + Kick non Hand-shaker mod clients
#"Vanilla" - Kick clients with blacklisted mods but ignoring non Hand-shaker mod clients (Could be dangerous if clients spoofs clients)
Integrity: Signed
#"Signed" - Accepts only-signed handshaker copies, preventing using modified handshaker mod
#"Dev" - Accepts non-signed copy's, Only for personal use or self signed copies (Could be potentially dangerous)
Operation Mode: blacklist
#"blacklist" - Blocks join requests with blacklisted mods
#"whitelist" - Accepts ONLY allowed mods, any non-whitelisted mod will cause kick. Set only after running /handshake whitelist_update to whitelist all mods from current client instance, otherwise you newer could join unless manually setting Operation Mode: blacklist
Kick Message: "You are using a blacklisted mod: {mod}. Please remove it to join this server."
Missing mod message: "To connect to this server please download 'Hand-shaker' mod."
whitelisted Mods:
- handshaker
Blacklisted Mods:
- xraymod
- testmod
- forgeExample of default hand-shaker.json for Fabric server:
{ "integrity": "SIGNED",
"operation_mode: "BLACKLIST",
"behavior": "STRICT",
"kick_message": "You are using a blacklisted mod: {mod}. Please remove it to join this server.",
"missing_mod_message": "To connect to this server please download \u0027Hand-shaker\u0027 mod.",
"blacklisted_mods": [],
"whitelisted_mods": []
}-
{mod}inKick Messagewill be replaced with the actual mod(s) found.
Example of default config.yml for Paper server:
Behavior: Strict
#"Strict" - Kick clients with blacklisted mods + Kick non Hand-shaker mod clients
#"Vanilla" - Kick clients with blacklisted mods but ignoring non Hand-shaker mod clients (Could be dangerous if clients spoofs clients)
Kick Message: "You are using a blacklisted mod: {mod}. Please remove it to join this server."
Missing mod message: "To connect to this server please download 'Hand-shaker' mod."
Blacklisted Mods:
- xraymod
- testmod
- forgeExample of default hand-shaker.json for Fabric server:
{ "behavior": "STRICT",
"kick_message": "You are using a blacklisted mod: {mod}. Please remove it to join this server.",
"missing_mod_message": "To connect to this server please download \u0027Hand-shaker\u0027 mod.",
"blacklisted_mods": []
}Example of default config.yml for Paper server:
kick mode: Fabric
#"All" - Kick clients with blacklisted mods + Kick non Hand-shaker mod clients
#"Fabric" - Kick clients with blacklisted mods but ignoring non Hand-shaker mod clients (Could be dangerous if clients spoofs clients)
Kick Message: "You are using a blacklisted mod: {mod}. Please remove it to join this server."
Missing mod message: "To connect to this server please download 'Hand-shaker' mod."
Blacklisted Mods:
- xraymod
- testmod
- forgeExample of default hand-shaker.json for Fabric server:
{ "kick mode": "Fabric",
"kick_message": "You are using a blacklisted mod: {mod}. Please remove it to join this server.",
"missing_mod_message": "To connect to this server please download \u0027Hand-shaker\u0027 mod.",
"blacklisted_mods": []
}