GuestMode
- For a better Preview click here -
GuestMode is a Plugin inspired by the "Guest"-Permission of Minecraft Bedrock Edition and used by my own Server which denies Players from Building or Breaking Blocks by default.
Latest-Update-Video:
How to Install?
- Download the Plugin
- Drop the Plugin into your plugins Directory (on your desired Server)
- Use /plugman (re-)load GuestMode or restart/reload your Server
- (If not done already) Create a "Member" Group on your Permissions ... This Plugin requires to have some Permission system running otherwise your Players are unable to do Stuff!
- Add the guestmode.play-Permission to the "Member" Group (or whatever it's called on your Server)
- Run /unguest <Player> (e.g. /unguest D3thw0lf) to unguest Players or manually add them to your Members Group so they can play. Make sure you've edited the "commands to run"-section in your Config.
Done!
Config-Files (if you messed it up)
# Config file for GuestMode.
# This file was originally created by version 1.9.0 (SNAPSHOT)
#
#
# Heal Guests - Enables that Guests get healed while they're moving.
# This CAN be very stressfull for your Server on a high Playercount (if you have small Hardware for example) so this is default off.
#
# Gamemode on Join - The Gamemode a Guest gets on Login
# '' = disabled
# Valid Gamemodes: Survival, Creative, Adventure, Spectator
#
# CommandsToRun - Commands running on /unguest <Player>
# guestmode.unguest Permission required
# [] = disabled
#
# CommandsOnJoin - Commands running on Join for unguested Players
# (default this is empty just build a list like on CommandsToRun)
# [] = disabled
#
# RunCommandsAs - Choose if the Current Player or the Console should run the Commands
# Allowed Values: Player | Console
#
HealGuests: false
GamemodeOnJoin: 'Adventure'
CommandsToRun:
- 'lp user <Player> permission set group.member true'
- 'lp user <Player> permission unset group.default'
- 'gamemode survival <Player>'
CommandsOnJoin: []
RunCommandsAs: Console
#
# Particles
#
#
# BlockedActionParticles - The Particles shown if any blocked Action was performed.
# '' = disabled
#
# BlockedActionParticleAmount - The Amount of Particles to spawn.
# 0 = just one Particle
#
# BlockedWorlds - List of Worlds you want GuestMode to be active
# [] = enable in all
#
# List of valid Particles:
# [ BARRIER, BLOCK_CRACK, BLOCK_DUST, BUBBLE_COLUMN_UP, BUBBLE_POP, CAMPFIRE_COSY_SMOKE, CAMPFIRE_SIGNAL_SMOKE,
# CLOUD, COMPOSTER, CRIT, CRIT_MAGIC, CURRENT_DOWN, DAMAGE_INDICATOR, DOLPHIN, DRAGON_BREATH, DRIP_LAVA, DRIP_WATER,
# DRIPPING_HONEY, ENCHANTMENT_TABLE, END_ROD, EXPLOSION_HUGE, EXPLOSION_LARGE, EXPLOSION_NORMAL, FALLING_DUST, FALLING_HONEY,
# FALLING_LAVA, FALLING_NECTAR, FALLING_WATER, FIREWORKS_SPARK, FLAME, FLASH, HEART, ITEM_CRACK, LANDING_HONEY, LANDING_LAVA,
# LAVA, LEGACY_BLOCK_CRACK, LEGACY_BLOCK_DUST, LEGACY_FALLING_DUST, MOB_APPEARANCE, NAUTILUS, NOTE, PORTAL, REDSTONE, SLIME,
# SMOKE_LARGE, SMOKE_NORMAL, SNEEZE, SNOW_SHOVEL, SNOWBALL, SPELL, SPELL_INSTANT, SPELL_MOB, SPELL_MOB_AMBIENT, SPELL_WITCH,
# SPIT, SQUID_INK, SUSPENDED, SUSPENDED_DEPTH, SWEEP_ATTACK, TOTEM, TOWN_AURA, VILLAGER_ANGRY, VILLAGER_HAPPY, WATER_BUBBLE,
# WATER_DROP, WATER_SPLASH, WATER_WAKE ]
#
#
BlockedActionParticles: 'SMOKE_NORMAL'
BlockedActionParticleAmount: 0
BlockedWorlds:
- world
- world_nether
- world_the_end
#
# Block Command Usage - If enabled, Players without Permission are unable to use any Command (except the ones you're allowing)
#
# Allowed Commands - The List of Commands that a Guest is able to use (requires that BlockCommandUsage = true)
# [] = disabled
#
BlockCommandUsage: false
AllowedCommands:
- spawn
#
# Blocking Types
# Just disable what you don't need or want to be enabled.
#
# true = blocked
#
# BlockedMaterials - List all Materials (Item/Blocks) Guests should be unable to use.
# NOT case sensitive but I recommend it for better readability ;)))))
# Legacy Materials are also blocked if you list the not so legacy (srsly... don't list the legacy ones...) versions of them... ;)))))
#
BlockPlacement: true
BlockBreak: true
Interact: true
PhysicalInteract: true
BucketFilling: true
BucketEmptying: true
OpenInventories: true
BlockDamage: true
EntityDamage: true
TargetByEntitys: true
ItemPickup: true
DropItemsFromInventory: true
DragItemsFromInventory: true
Elytra: true
BlockedMaterials:
- FLINT_AND_STEEL
- FIREWORK_ROCKET
- SPLASH_POTION
- LINGERING_POTION
- ELYTRA
- LEVER
- DAYLIGHT_DETECTOR
- CROSSBOW
- BOW
- TRIDENT
- LEAD
- SHEARS
- FISHING_ROD
- SNOWBALL
- FIRE_CHARGE
- ENDER_PEARL
- ENDER_EYE
- END_CRYSTAL
- SWEET_BERRY_BUSH
- BELL
- TNT
- JUKEBOX
messages.yml
# Config file for GuestMode.
# This file was originally created by version 1.7.0 (SNAPSHOT)
#
# Default (en_us, de_de & es_es) Translation by D3thw0lf | https://twitch.tv/woweepaw
# <Translation> <YourNameHere> | <YourWebsite>
#
# Language Codes: https://minecraft.gamepedia.com/Language
#
##############################################################################################
#
# UnguestMessage - Message shown if someone allowed is using /unguest <Player>
# '' = disabled
#
# NoPermissionMessage - Message shown if someone not allowed is using /unguest <Player>
# '' = disabled
#
# MessageOnPlayerJoin - The Message shown to Guests when they're joining. Use \n for new Lines
# '' = disabled
#
# BlockedActionMessage - The Message shown if any blocked Action was performed.
# '' = disabled
#
#
# default - The Language used if the clients selected language is not added/supported (yet)
#
default: en_us
lang:
en_us:
UnguestMessage: '&a<Player> is no longer in GuestMode'
NoPermissionMessage: '&cYou don''t have permission to run that Command.'
MessageOnPlayerJoin: '&e&lYou''re in GuestMode.\n&9&lPlease contact an &c&lAdmin&9&l to get permissions.'
BlockedActionMessage: '&c&lGuests can''t do that. Please contact an Admin to get permissions.'
de_de:
UnguestMessage: '&a<Player> ist nicht länger im GuestMode'
NoPermissionMessage: '&cDu hast keine Berechtigung für diesen Befehl.'
MessageOnPlayerJoin: '&e&lDu befindest dich im Gastmodus.\n&9&lBitte kontaktiere einen &c&lAdmin&9&l um freigeschaltet zu werden.'
BlockedActionMessage: '&c&lGäste können dies nicht tun. Kontaktiere einen Admin um freigeschaltet zu werden.'
es_es:
UnguestMessage: '&a<Player> ya no está en modo invitado'
NoPermissionMessage: '&cNo tiene permiso para ejecutar ese comando.'
MessageOnPlayerJoin: '&e&lEstás en modo invitado.\n&9&lPóngase en contacto con un &c&lAdministrador&9&l para ser desbloqueado.'
BlockedActionMessage: '&c&lLos invitados no pueden hacer eso. Póngase en contacto con un administrador para obtener permisos.'
So... why GuestMode?
Ideas for future Updates
- *Done since 1.2.0*
Configurable Particles on blocked Action - *Done since 1.2.0*
Configurable Message on blocked Action - *Done since 1.3.0*
Per World Usage - *Done since 1.4.0*
Gamemode for Guests (on join) - *Done since 1.5.0*
Blocking Command usage (with exceptions in Config) | Suggested by DeadX - *Done since 1.6.0*
Enable Players to Unguest others (requires Permissions) - *Done since 1.7.0*
Multilanguage Messages - *Done since 1.8.0*
Block more Items | Partly Suggested by RabidHuman - *Done since 1.9.0*
Run Commands on Join | Suggested by RabidHuman - *Done since 1.9.0*
Move the blocked Materials part from Code to Config so everyone is able to add new materials (items/blocks) on their own. :) - *Done since 1.9.0*
Run Commands from Config as-Option (e.g. Console, Player etc.) - Guests can't leave regions | Suggested by DeadX
- Eating more Cookies... Drinking some Ko-fi
Just wanted to say I am using this on my server MinecraftersWorld 1.16.3 and it works perfectly!
Thank you so much for sharing this awesome plugin, we have disabled the whitelist by groups and have already had a few new faces pop in and say hello without us fearing the trolls!
Great way to get to know some new people and see if they might become a regular!
Thanks again.
In reply to VEDUZ:
You're welcome. Just let me know if anything wonky happens and/or if something is missing. :)
In reply to VEDUZ:
Since bukkit currently takes some time to approve: There's a newer version on Spigot rn which fixes some bugs. Just wanted to let you know in case you missed it. :)
Just for your Information: Plugin should work fine in 1.16.x! Let me know if you encounter any issues. :)
In reply to WoweePaw:
just threw it in my server, works wonderfully so far! thank you ;3~
In reply to polarassassin:
You're welcome. :)
In reply to polarassassin:
Since bukkit currently takes some time to approve: There's a newer version on Spigot rn which fixes some bugs. Just wanted to let you know in case you missed it. :)