ProjectChat is a Channel System for Minecraft chat. So your inhabitants can chat with their friends in Channels and their is not a spam in the main chat :D The SMP Chat is often a highlight on Servers and it made them individual. My purpose is a high configurable Chat System, which you can customize in that way you want. Moreover most of the bigger Server program their own chat plugin because the most plugins can not handle their ideas. So I tried to make a system that you can handle a lot of ideas.
Download ProjectChat and move it in the plugin folder. Then reload the server. The plugin is now full functional. To generate the full configuration that you may want to change reload again.
Now you should find two files in the ProjectChat folder.The config.yml where you configurated your channel and player and the leaves.yml where you can change your chat layout. Let begin with the config.yml
| Path | Description | Type | Default content |
|---|---|---|---|
| System | |||
| theme | Here you define the name of your layout. It automatically generate a file with the layout as name. | Text | leaves |
| defaultChannel | The default Channel every Player joins in when he join your server for the first time | Text | Global |
| allowOnlyStatic | There are static and dynamic channel. Static Channel are Channel you have to create. When you set this to true then player could only join in static channel | true or false | false |
| Channel | |||
| <ChannelName> | The name of the channel | ||
| allowBroadcast | When this is true then the chat broadcast when a player join or leave a channel | true or false | In Global false, other true |
| chatFormate | Can be a reference to the global, default and private Channel format. It could also be a custom channel format in form of a Text | Text | cs#defaultChannel |
| prefix | A channel prefix | String | &f |
| Player | |||
| <PlayerName> | A player that has joined | ||
| channel | actual Channel | Text | Global |
| flag | some flag | ||
| ghost | not used yet | true or false | false |
| ignore | A list of player the player ignores | List | empty |
| mute | When true then the player can't speak | true or false | false |
The leaves.yml is a default chat layout. The different pathes should be self explaining. It could be more intresting how you use variables. Variables are used in the style %VariableName% The most variables have subvariables which are sometimes static and sometimes like functions. To get subvariables you write %VariableName["SubVariableName"]%. Here is a overview
| Variable | Subvariable | Description | stable |
|---|---|---|---|
| channel | Show the actual channel [In Chat: where the sender of the message is in] | yes | |
| list | Show a list of all Channel | yes | |
| prefix | Get the actual prefix | yes | |
| a channel name | Write here an existing channel and you can use the same abilities as above | yes | |
| a player name | Get the actual channel of a player | yes | |
| sender | Get the name of the Message sender | no | |
| receiver | Get the name of the Message receiver | no | |
| msg | Get the Message which is send | no | |
| pex | Get default prefix | yes | |
| prefix | Get the prefix of the actual player | yes | |
| plugin | The plugin name | yes |
Stable means that you can use this in every definition
I said on-the-fly configuration. You asked what it means. Yeah you can change the config files while the server is running and the you just reload the server and the changes are done :D No stop the server to change or ingame command to exspecially reload. Is this easy?
pchat - Show a list of Channels
pchat join <name>- Join a channel
pchat leave - go back to the global channel
pchat create <name> - create a static channel
pchat remove <name> - remove a static channel or kick all in a dynamic channel
ignore <name> - Ignore a player
mute <name> - Mute player
demute <name> - Demute player
You can use instead of pchat also pch or ch.
pchat.pushy - You can speak to someone inspite he ignores you
pchat.use - Use channel commands like join and leave
pchat.manage - To manage static channel
pchat.use.color.<channelName> - When you write no channel name he can use colors in each channel
pchat.mute - Can mute players
pchat.ignore - Can ignore players
pchat.talk.<channelName> - Can talk in Channel (Permission based mute)
ProjectChat can stand alone. So only op can work with it. It work alone with PermissionEx as a Permission System. When you have a other Permission Plugin with is compatibile with Vault then you can use it together with Vault.
As the title says, it is a beta build. That means there could be bugs or the can come great changes. My goal is that you haven't to rewrite your configuration and the new version should so be compatible with old configs. When something not function the way you think it must than asked. When you need help I try my best to help.
Futhermore, this plugin can connect to IRC Server. But I won't recommed it in this build as it is not full implemented (Such as Pre-Alpha)