MessageChangerLite
MessageChangerLite
This plugin should be still working on newer builds, so please try before asking.
A simple plugin which allows you to change the server's default messages which will be displayed during login, logoff, server down, kick, server full and more to whatever you want.
If you would like assistance in person, you can find me in IRC as Zach443 here.
Features
- Change the server's default messages
- Display a message to the player when he changes worlds
- Implements Metrics so that I know it is worth doing this.
Based upon FrozenBrains MessageChanger.
Configuration
Will create a config.yml file on first run in the plugins/MessageChangerLite directory. Edit the messages as you like and restart or reload the server to make them active.
%pName is the playername
%world is the worldname
%msg is the default mesage
You can use colorcodes from here
The example config contains already 2 permission nodes for displaying custom messages based on permissions.
If the EVENT like SERVER_FULL doesn't exist, for example in permnode1 the plugin will fall back to the messages configured in the default section.
Permissions
Looking at the sample / default config:
- permnode1 is messagechanger.message.permnode1
- permnode2 is messagechanger.message.permnode2
Of course you can call permnode1 and permnode2 whatever you like.
NOTE: Permissions will be parsed based on the categoryOrder config node.
As soon as the plugin finds a permission it will try that category, if it doesn't find a message than it will fall back to the default!
Sample Config
# MessageChangerLite 2.0 by [Don Redhorse] # # Configuration File for MessageChangerLite. # # For detailed assistance please visit: http://dev.bukkit.org/server-mods/messagechangerlite/ #------- Default Configuration # Configuration Version configVer: '2.0' # Error Log Enabled # Enable logging to server console # Warning and Severe will still be logged. errorLogEnabled: true # Debug Log Enabled # Enable more logging.. could be messy! DebugLogEnabled: false # Check for Update # Will check if there is a new version of the plugin out. checkForUpdate: true # Auto Update Config # This will overwrite any changes outside the configuration parameters! autoUpdateConfig: false # Save Config # This will overwrite any changes outside the configuration parameters! # Only needed if you use ingame commands to change the configuration. saveConfig: false #-------- Plugin Configuration # You can use the following variables: # %pName = DisplayName of the Player # %world = World the player is in # %msg = default message # Order in which the categories are parsed categoryOrder: [permnode1, permnode2] message-category: default: KICK_FULL: '%msg' SERVER_STOP: 'Testing the server...' KICK_WHITELIST: '%msg' PLAYER_QUIT: '%msg' KICK_KICK_LEAVEMSG: '%msg' KICK_KICK_REASON: '%msg' PLAYER_JOIN: 'Hello &b%pName&f in world %world' CHANGED_WORLD: "Welcome traveler from %fromWorld in %world" KICK_BANNED: '%msg' permnode1: SERVER_STOP: 'Oh well...' permnode2: PLAYER_JOIN: 'Welcome the admin'
FAQ
- Q: Join and Leave messages are not working, the rest is.
A: You need to turn off Join / Leave messages in AdminCMD - Q: I see strange results with the permission nodes. Why?
A: I do parse the permission nodes in the categoryOrder, but I fall back to default if a permission node doesn't have a message.
So I don't check for more than ONE permission node!
ToDo
- Post any requests in the comments :)
Changelog
V2.10
- fixed an NPE if some of the default messages where missing
V 2.9
- added permissions check for messagechanger internally, sigh..
V 2.8
- fixed some issues with metrics
V 2.7
- fixed another bug introduced by bukkit
V 2.6
- fixed an issue which caused server crashes do to an bukkit issue
V 2.5
- added Metrics For More Info and Opt-Out
V 2.4
- ready for 1.1. R5
V 2.3
- added categoryOder config node which determines the order the message categories are processed.
You don't need to have the default category in, this will always be done last by default!
If you let your config autoupdate please remove the default category if you don't want it!
V 2.2
- added message displayed to player when he changes worlds
V 2.0
- added permission support for messages
- add log and config classes
- updateable config
- update check
v 1.2
Added %world variable
v 1.1
DisplayName is being used as Playername
v 1.0
Ininital Release
@spunkiie
did you try 2.7?
every major plugin already updated DonRedhorse, bukkit API for 1.2 won't have any more changes. I've always used MessageChanger, even before you took over the project, that's the only plugin I use not updated yet. Please do this.
use 2.7 it has a fix for people not having a config file
@spunkiie
well any log files or what doesn't work?
btw: I will update when the RB is out, not before... I just got burned by trying preemptive and coding to a NON RB R5...
DonRedhorse:
Doesn't work with 1.2. Could you please update ?
Also please note... there will be a feature freeze till the future of bukkit has become clearer.
I will only update bugs and make the plugin work with RB.
Also do to the fact that bukkit finds it funny to cram a lot of changes into the RB's just before they release them don't except any update to happen on the next day.
@spunkiie
which one? could you post the log via pastie.org please?
Still getting error with 2.6 and latest RB.
@JoneKone
wont work... as they work outside of bukkit or use the broadcast message.
You should ask them to make the text configurable.
So =D yes AN idea... However I believe that nobody likes it... Since it is has dependencies to an MOD and specifically to a MOD Loader (Forge)
Support for Forge Bukkit port =)
Actually I'm not sure what "channel" it uses to post messages for ppl. But it tells ppl what Mods you are missing... If I could intervene this and tell my players where to go to get the mods... Specifically to my www site...
@Holty96
hmm that shouldn't be... could you post your config and permissions via pastie.org or similar
also creating a ticket would be nice as it keeps this one nice..
Ahh I see what the problem is now with the permissions! They only work for the player if that player isnt op :/ Can you fix this please?
@JoneKone
well %msg should be ok... need to check that as it shouldn't touch the message at all..
@kevingb83
hmm... I have group support in..
perhaps try writing down a config? as an example how you expect it to be? btw: I'm german, there is nothing wrong with being french :-)
Hi.. Great plugin..
Just tried on my server and :( While it did work.. it didn't work as expected..
For example Banhammer Ban messages (kick) was replaced with normal message even tough Banhammer wants to send its own (reason why you where banned) As a Kick message.
I tried to resolve the problem by removing the actual line from config.yml
It was default config KICK_KICK_LEAVEMSG: '%msg' KICK_KICK_REASON: '%msg'
Removing lines from the config gave an message (error report)
So for some reason it crosses the path with other pluing messages.. BanHammer to begin the list =)
Sorry i'm french. You add the name & the world variable.. You will add the variable that lets you know which group we are? thank you.
@kevingb83
hmm you mean for the permission node you did configure?
You can add the group variable please ?
@Holty96
I really mean pastie.org or similar not the comment section :-(
put the specific node of message change lite in front of *
@dagundi
you should use github or the ticket tracker here... https://github.com/dredhorse/MessageChangerLite/issues/5
Idea: Make a command to reload the config ingame (or in the console)
Hey, here are my files!
------------------ MESSAGE CHANGER CONFIG ------------------
# MessageChangerLite 2.0 by [Don Redhorse]
#
# Configuration File for MessageChangerLite.
#
# For detailed assistance please visit: http://dev.bukkit.org/server-mods/messagechangerlite/
#------- Default Configuration
# Configuration Version
configVer: '2.0'
# Error Log Enabled
# Enable logging to server console
# Warning and Severe will still be logged.
errorLogEnabled: true
# Debug Log Enabled
# Enable more logging.. could be messy!
DebugLogEnabled: false
# Check for Update
# Will check if there is a new version of the plugin out.
checkForUpdate: true
# Auto Update Config
# This will overwrite any changes outside the configuration parameters!
autoUpdateConfig: false
# Save Config
# This will overwrite any changes outside the configuration parameters!
# Only needed if you use ingame commands to change the configuration.
saveConfig: false
#-------- Plugin Configuration
# You can use the following variables:
# %pName = DisplayName of the Player
# %world = World the player is in
# %msg = default message
message-category:
default:
KICK_FULL: '&cCraftasia is full unfortunately! Check back soon %pName'
SERVER_STOP: '&2Craftasia is shutting down! check back soon %pName'
KICK_WHITELIST: '&6Craftasia Survival &f:: &3Down for Maintenance &f:: &5www.craftasia.info'
PLAYER_QUIT: '%msg'
KICK_KICK_LEAVEMSG: ''
KICK_KICK_REASON: ''
PLAYER_JOIN: '&cWelcome &3%pName &cto &6Craftasia'
KICK_BANNED: ''
permnode1:
PLAYER_JOIN: '&5Welcome the admin'
------------------ PERMISSIONS ------------------
users:
sebastien_holt:
group:
- God
permissions:
- messagechanger.message.permnode1
federicodana:
group:
- emperor
permissions: null
johny_boi:
group:
- Emperor
permissions: null
tritovore:
group:
- king
permissions: null
blauchski:
group:
- king
permissions: null
fergatoudis:
group:
- Emperor
xmodztrikshot:
group:
- duke
Blondey118:
group:
- king
hunter1415:
group:
- King
hazer8:
group:
- Earl
Ep3o:
group:
- King
nytro_rofl:
group:
- duke
the_ramsay:
group:
- King
allayc:
group:
- Prince
Crushking33:
group:
- duke
spykid1212:
group:
- Prince
TiniestTinman:
group:
- Prince
duke:
group:
- zorodf544
p:
group:
- sebastien holt
_hamwich:
group:
- duke
_Hamwich_:
group:
- King
owner:
group:
- fergatoudis
Mike483898:
group:
- King
iorngod:
group:
- duke
pallyy:
group:
- Prince
zorodf544:
group:
- duke
AKMF:
group:
- duke
Dufflemax:
group:
- Earl
benner23:
group:
- Peasant
BananaBobzZ:
group:
- Prince
LlamaDuck3000:
group:
- Prince
Samcj2:
group:
- Prince
Wipout_Wipout:
group:
- King
ziggy239:
group:
- King
samisayles1:
group:
- Prince
JoeMacky:
group:
- duke
llama:
group:
- duke
curber:
group:
- duke
groups:
Peasant:
default: true
inheritance:
- null
permissions:
- essentials.kit.tools
- essentials.chat.shout
- modifyworld.*
- essentials.kit
- essentials.afk
- essentials.helpop
- essentials.spawn
- essentials.list
- essentials.mail
- essentials.mail.send
- essentials.me
- essentials.motd
- essentials.msg
- essentials.rules
- essentials.jails
- essentials.kick.notify
- essentials.ban.notify
- essentials.delhome
- essentials.home
- essentials.home.others
- essentials.sethome
- essentials.sethome.multiple
- essentials.tpaccept
- essentials.tpdeny
- essentials.help
- lwc.protect
- iConomy.holdings
- iConomy.payment
- lottery.buy
- mcmmo.skills.*
- mcmmo.chat.partychat
- mcmmo.commands.party
- mcmmo.ability.*
- helperbot.read
- essentials.back
- essentials.kit.essentials
prefix: ' &e[P]&2 '
Earl:
inheritance:
- peasant
permissions:
- essentials.kit.irontools
- essentials.compass
- essentials.clearinventory
- essentials.back
- essentials.tpa
- essentials.tpaall
- essentials.tpahere
- essentials.warp
- essentials.setwarp
- essentials.warp.list
- essentials.chat.color
- worldedit.navigation.*
- blockhat.hat
- essentials.joinfullserver
- essentials.kit.diamondtools
prefix: ' &e[Earl]&6 '
duke:
inheritance:
- peasant
permissions:
- essentials.helpop.recieve
- essentials.kick
- essentials.togglejail
- essentials.jail
- essentials.togglejail.offline
- essentials.tp
- essentials.tphere
- essentials.heal
- essentials.heal.cooldown.bypass
- essentials.ban
- essentials.ban.offline
- essentials.banip
- essentials.invsee
- essentials.mute
- essentials.tempban
- essentials.tempban.offline
- essentials.unban
- essentials.unbanip
- essentials.warp
- essentials.setwarp
- essentials.warp.list
- lwc.mod
prefix: ' &e[Duke]&d '
Prince:
inheritance:
- peasant
- duke
- earl
permissions:
- essentials.weather
- essentials.broadcast
- worldedit.*
- worldguard.*
- logblock.*
- lwc.admin
- helperbot.read
- essentials.setjail
- essentials.socialspy
- essentials.chat.spy
- essentials.joinfullserver
prefix: ' &e[Prince]&5 '
King:
inheritance: null
permissions:
- '*'
prefix: ' &e[King]&5 '
Emperor:
inheritance:
- null
permissions:
- '*'
- essentials.joinfullserver
prefix: ' &d[Emperor] &c'
suffix: ''
God:
inheritance:
- null
permissions:
- '*'
- messagechanger.message.permnode1
- essentials.joinfullserver
prefix: ' &4[God] &c'
suffix: ''