Developers should be able to intercept and alter any incoming and outgoing messages or commands.
- Read and alter outgoing messages
- Read and alter incoming messages
Justification and use-case:
Intercepting messages gives the developer great control over the chat, not only can chat itself be examined, but new special syntax can be defined as well. In one example: The server would parse the message from a player before being broadcasted, after noticing the message starts with an '@' symbol, the message is parsed as a pm in the form of "@<partial player name> <message>". This message is then only sent to that specific player.