NEW | GreetingsManager - Community & Engagement (1.21.x) icon

NEW | GreetingsManager - Community & Engagement (1.21.x) -----

A plugin that rewards users for welcoming & welcoming back players to the server. Community feature!



config.yml


Code (YAML):

# This is the default configuration file for the plugin
# You can change the values to your liking but make sure to keep the format the same
# If you mess up the format, the plugin will not work properly.
#
#           ----> Things to note: <----
# - The rewardCooldown is in milliseconds. 1000 milliseconds = 1 second
# - The timeWindow is in milliseconds. 1000 milliseconds = 1 second
# - The commands are run as the console, so you can use %player% to reference the player that welcomed someone
# - The commands are run in the order they are listed
# - The commands are run synchronously, so if one command takes a long time to run, the next command will not run until the first one is done
# - This plugin is NOT case sensitive, so 'welcome' and 'Welcome' are the same
# - This plugin is not optimized to handle huge servers with hundreds of joins and leaves in short sucession. This system will brick your server
#   if this is run on a server with massive amounts of joins and leaves as the plugin reads/writes to disk a lot for handling data.
#
##################################################
welcomekeywords
: # The keyword that triggers the welcome reward. Do not add more than 10 keywords or you'll see peroformance drop. Here be dragons (or something)
  - welcome
  - wb
  - hello
  - greetings
  - welcome back

allowOnlyKeyword
: false # If true, players can simply type any welcome keyword without the player name to welcome them back
rewardCooldown
: 30000 # 30 seconds in milliseconds (1000 milliseconds = 1 second)
timeWindow
: 30000 # 30 seconds in milliseconds (1000 milliseconds = 1 second)
commandReturningWelcome
: # The command(s) that will be run when a player welcomes someone that has already joined the server before
  - 'give %player% iron_ingot 1'
  - 'give %player% apple 5'
FirstJoinWelcomeRewards
:
 - "cmi toast %player% -t:challenge -icon:Diamond /greet executed!"
  - "give %player% minecraft:cookie 3"
WelcomeChainExtraRewards
:
 - "xp add %player% 100 points"
  - "give %player% minecraft:diamond 1"
WelcomeChainNewPlayerRewards
:
 - "eco give %player% 150"
  - "give %player% iron_ingot 5"


# Welcome Chain Configuration
welcomeChainDuration
: 30   # Duration of welcome chain in seconds (default: 30 seconds)
welcomeChainExtender
: 10   # Time to extend when a new player joins during active chain (in seconds)
welcomeChainAmountNeeded
: 1   # Number of greets needed to complete the chain

# Default greet messages to use if the player hasn't set a custom one
defaultGreetMessages
:
 - "Hello there, %new_player%! Hope you enjoy your stay!"
  - "Welcome to Xironite %new_player%!"
  - "Welcome to the server!"
  - "Welcome %new_player%!"
  - "Hello %new_player%! :D Check out our guides at /spawn!"
  - "Ohhh, hello %new_player%. Hope you're having a great day!"
  - "Greetings %new_player%!"
  - "Welcome to the server, %new_player%!"
  - "Welcome %new_player%! Lmk if you need help :3"

# Players can input ANY message into mygreet if they got permission to do so. Only give these perms to players
# that you trust to input nonsense or otherwise inappropriate messages. They may use %player% or <player> within their
# custom message to reference the player that joined. This is not case sensitive. They can also use colorcodes such as
# &a, &b, &c, etc. to color their message. This is not case sensitive and is dependent on the server's color code system
# via the server's chat format.
'
messages.yml


Code (YAML):

# Greetings Manager Messages Configuration
# Uses MiniMessage format for rich text formatting
# See: https://docs.adventure.kyori.net/minimessage/format.html

general
:
  no_permission
: "<red>You don't have permission to use this command."
  player_only
: "<red>This command can only be used by players."
  invalid_player
: "<red>Player not found: <gray>%player%</gray>"
  reload_success
: "<green>Configuration reloaded successfully!"
  prefix
: "<dark_gray>[<gold>Greetings<dark_gray>]</dark_gray> "

command
:
  unknown
: "<red>Unknown command: <gray>%command%</gray>"
  cooldown
: "<red>Please wait before using this command again."
  success
: "<green>Command executed successfully!"

welcomeMemoryWiped
: "<green>All GRM-cooldowns have been wiped from memory."

welcome
:
  received
: "<green>You successfully welcomed back a player!\n\n<yellow>Your total welcomes has increased by 1 point!</yellow>"
  already_welcomed
: "<yellow>You've already welcomed that player recently."
  prompt
: "<yellow>Welcome <aqua>%player%</aqua> to the server using one of these welcome words: <green>%keywords%"
  prompt_disabled
: "<gray>You have join prompts disabled. Enable them with <yellow>/grm prompt</yellow>"
  toggle_enabled
: "<green>Join prompts have been enabled. You will receive notifications to greet new players."
  toggle_disabled
: "<green>Join prompts have been disabled. You will no longer receive notifications to greet new players."

greet
:
  no_active_chain
: "<red>There is no active welcome chain right now."
  already_greeted
: "<yellow>You've already participated in the current welcome chain."
  success
: "\n\n<green>Thank you for greeting the new players!\n\n"
  current_greeting
: "<yellow>Your current custom greeting is: <green>%message%"
  no_custom_greeting
: "<yellow>You don't have a custom greeting set. Use <green>/grm mygreet <message></green> to set one."
  greeting_set
: "\n\n<green>Your custom greeting has been set to:\n\n<gray>%message% \n\n"
  greeting_reset
: "<green>Your custom greeting has been reset to the default."
  message_too_long
: "\n\n<red>Your greeting message is too long! Maximum length is 100 characters.\n\n"

welcomechain
:
  started
: "<yellow>A welcome chain has started! <green>%count%</green> new players have joined."
  joined
: "<yellow>New player <green>%player%</green> has joined the welcome chain!"
  greet_added
: "<green>+1</green> Welcome added to the chain! (<yellow>%current%/%needed%</yellow>)"
  complete
: "<green>Welcome chain completed! Handing out some extra rewards to participating players!</green>"
  expired
: "<red><b>███ Welcomechain failed... ███</b> </red>\n\n<red><b>Oh oh...</b> <gray>not enough players participated in the <yellow>welcomechain</yellow>. \nSadly, there will be <u><i>no extra rewards</i></u> this time. \n\nThank you to everyone that participated!</gray></red>"
  progress
: "Active Welcomechain ▶ %current%/%needed% | /greet"
  time_remaining
: "<yellow>Time remaining: <green>%time%s</green>"
  bossbar
:
    single
: "<gold>Welcomechain for <light_purple>%newPlayer%</light_purple> ◆ <yellow>[%greetsCurrent%/%greetsNeeded%]</yellow> | <gray>(%timeRemaining%s)</gray>"
    multiple
: "<gold>Welcomechain for <light_purple>%newPlayer%</light_purple> <green>+%playersInChain%</green> ◆ <yellow>[%greetsCurrent%/%greetsNeeded%]</yellow> | <gray>(%timeRemaining%s)</gray>"

sendChatPromptColored
: "\n\n\n<yellow>███ <gray><gold><b><i>Welcomechain activated!</i></b></gold></gray> ███ </yellow>\n\n<dark_gray><gray>A player joined for the first time!</gray>\n\n<yellow><click:run_command:'/greet'><hover:show_text:'Click to participate in welcome chain!'>Click here</hover></click></yellow> <gray>to greet them. You can participate in\nthe welcomechain and</gray> <i><u><light_purple>get some rewards</light_purple></u></i> <gray>as a bonus!</gray>\n\n<yellow>███ Toggle this message with /grm toggle ███</yellow>"

leaderboard
:
  title
: "\n\n<gold><bold>Top Welcomers</bold></gold>"
  entry
: "<yellow>%position%. <white>%player% <gray>- <green>%count% welcomes</green>"
  no_entries
: "<gray>No data available yet."

data
:
  reset_success
: "<green>Data for <yellow>%player%</yellow> has been reset."
  prune_started
: "<yellow>Found <green>%count%</green> player data files to prune."
  prune_confirm
: "<yellow>Type <red>/grm confirmprune %count%</red> to delete these files."
  prune_completed
: "<green>Successfully pruned <yellow>%count%</yellow> player data files."
  prune_expired
: "<red>Prune confirmation has expired. Please run the prunedata command again."
  prune_none
: "<yellow>No player data files found to prune."
  prune_mismatch
: "<red>Confirmation number doesn't match the number of selected files (%count%). Pruning canceled."

debug
:
  chain_active
: "<gold>Active welcomechain: <green>Yes</green>"
  chain_inactive
: "<red>No active welcomechain</red>"
  players_in_chain
: "<gold>Loaded playerdata: <yellow>%players%</yellow>"
  time_remaining
: "<gold>Time remaining: <yellow>%time% seconds</yellow>"
  greet_progress
: "<gold>Greet progress: <yellow>%current%/%needed%</yellow>"
  new_player_count
: "<gold>New players in chain: <yellow>%count%</yellow>"

# Bossbar configuration
# Colors must be instanciated with <color> tags and ended with </color> tags. All default colors are valid.
# Valid placeholders are: %newPlayer%, %playersInChain%, %timeRemaining%, %greetsCurrent%, %greetsNeeded%
# Do not use any other placeholder or the plugin will break. You have been warned.

# GENERAL INFORMATION : REFERR TO INDIVIDUAL DEFAULT MESSAGES PER SECTION FOR VALID PLACEHOLDERS
# ###########
# Placeholders available:
#
# %player% - Player name
# %count% - Number count
# %current% - Current greet count
# %needed% - Needed greet count
# %time% - Time remaining
# %command% - Command name
# %message% - Message content
# %keywords% - Welcome keywords
# %position% - Position in leaderboard
# %players% - List of players
 
Resource Information
Author:
----------
Total Downloads: 112
First Release: Mar 20, 2025
Last Update: May 20, 2025
Category: ---------------
All-Time Rating:
1 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings