locale | ||
textures | ||
.gitignore | ||
.luacheckrc | ||
init.lua | ||
LICENSE | ||
mod.conf | ||
readme.md | ||
screenshot.png |
filter mod
This mod adds a simple chat filter. There is no default word list,
and adding words to the filter list is done through the /filter
chat command. You need the server
priv to use the chat command.
The /filter
chat command can add
, remove
or list
words. The
words are stored in mod_storage
, which means that this mod requires
0.4.16 or above to function.
If a player speaks a word that is listed in the filter list, they are
muted for 1 minute. After that, their shout
privilege is restored.
If they leave, their shout
privilege is still restored, but only after
the time expires, not before.
API
Callbacks
- filter.register_on_violation(func(name, message, violations))
- Violations is the value of the player's violation counter - which is incremented on a violation, and halved every 10 minutes.
- Return true if you've handled the violation. No more callbacks will be executation, and the default behaviour (warning/mute/kick) on violation will be skipped.
Methods
- filter.import_file(path)
- Input bad words from a file (
path
) where each line is a new word.
- Input bad words from a file (
- filter.check_message(name, message)
- Checks message for violation. Returns true if okay, false if bad. If it returns false, you should cancel the sending of the message and call filter.on_violation()
- filter.on_violation(name, message)
- Increments violation count, runs callbacks, and punishes the players.
- filter.mute(name, duration)
- filter.show_warning_formspec(name)