FactionChat
In the most recent versions of the oh so popular Factions (1.7 and above), you may have noticed that the faction chat feature was removed. Faction chat really comes in handy at times to easily talk with whole groups, whether you're planning with your allies to take down that faction you just hate that or discussing top secret plans with your clan. This plugin is there to fill in that gap and bring back this high demand feature, aiming to replicate what has now been removed from Factions.
The author of FactionChat is constantly updating to make sure that FactionChat is designed to work without any bugs and function at top-notch performance out-of-the-box.
Features.
- Faction-only, ally, truce and enemy chat modes
- Send a message to other factions, even if you're not allies with them
- Staff chat channels
- Ability to spy on all messages
- Easy to use chat-mode toggles/commands
Development Builds
Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
Development builds can be found here
To-do/possible updates.
- Create a help command (/fc help)
- I'm always open to suggestions!
Support and like my work? Donate to keep development going.
I have spent many hours creating and perfecting this plugin for public use, and I expect many more hours still to come through updating and adding features requested by the community. You can even spare a buck or two, after all, every little bit helps! If you are unable to donate, it would still be awesome if you could let me know how the plugin is working for you and leave a thanks in the comments section.
Plugin demo: lolnet.co.nz
Author debug access.
In the v1.5 update, I have added a new config option called "AllowAuthorDebugAccess". If set to true and your server is running in online-mode, then it allows me, james137137, to use the follow commands: /fchatother, /fc jrmod, /fc mod, /fc srmod, /fc jradmin, /fc admin, /fc spy, /fc update, and /fc reload. Please note that this does not give me the ability to use any other commands. You may never even need to enable this, unless you personally need help and have invited me to test something for/with you. This feature is enabled by default, however it can easily be toggled through the configuration.
MCStats.
This plugin utilizes Hidendra's metrics system in order to keep track of the plugin's popularity, as well as other metadata. The following information is collected and sent to mcstats.org:
- Unique identifier
- Java version
- Offline/online mode
- FactionChat version
- Server version (i.e. Bukkit 1.6.4, Spigot 1.7.2)
- OS name, version and architecture
- Amount of CPU cores
- Amount of players online
- Metrics version
Opting out of this service can be done by editing the config.yml and changing MetricsOptOut to true.
Inbuilt Updater
This plugin utilizes an external version checking system, which means that the plugin makes a connection to curseforge.com and the following may occur:
- The plugins version checked
- Downloading of the plugin files
The update can only occur when a player with permission "FactionChat.Update" runs the command "/fc update" or any /FactionChat alias with "update".
FactionChat is a stable plugin that is used by about 1,400 servers worldwide; that's a lot! Thanks to everyone who make this happen.
http://www.youtube.com/watch?v=1xPtQvZEJBs
Repository Information for Maven Projects
<dependency> <groupId>nz.co.lolnet.james137137</groupId> <artifactId>factionchat</artifactId> <version>1.9.16</version> </dependency> <repository> <id>FactionChat-repo</id> <url>http://jenkins.lolnet.co.nz/plugin/repository/everything/</url> </repository>
In reply to james137137:
In reply to james137137:
MetricsOptOut: false
DontUseAsyncEvent: false
# some servers have /k as their defualt command for /factions
UseDevBanManager: false
FactionsCommand: 'f'
# Should spy mode be on by default for those who have the correct permission node.
# Accepts boolean [true/false].
spyModeOnByDefault: true
#If this is set true and your server is set online-mode:true,
#then it allows me (james137137) to the following addiction commands,
AllowAuthorDebugAccess: true
# mutes public for the player when he/she is in a FactionChat channel (/f chat)
PublicMuteDefault: false
# reduces the chance of spam by allowing 1 message per X miliSecounds (ms)
ChatLimit: 100
# allows self command /fc mutePublic or /fc Mute (prevents public messages sent to client)
AllowPublicMuteCommand: false
#this will disabled certain commands please make sure you include the aliases
#for example -fchatf and -ff
# they must be only contain lower case
FactionInfoServer:
enable: false
port: 10137
DisabledCommands:
- Example_fchatf
- Example_fchatat
- Example_fa
- Example_fat
#Essentials support
Essentials:
useNickName: false
# Set FactionChat to only be active in a certain worlds
limitworlds:
enable: false
worlds:
- 'world'
- 'factionworld'
- 'faction_World_Nether'
disablesendoutside: true
disablereceiveoutside: true
disableOtherChat: false
# Event Priority, only change if you know what you are doing, please refer to http://wiki.bukkit.org/Event_API_Reference#Event_Priorities
# 1 = EventPriority.LOWEST and 6 = EventPriority.MONITOR.
# any other numbers will stop the plugin
EventPriority:
onPlayerChat: 1
onPlayerChatLocalOption: 3
onPlayerCommand: 1
onPlayerJoin: 3
# Change the colors and format of each message
# you can now change leader to ** or whatever you like :-D
FactionRank:
Leader: 'Leader'
Officer: 'Officer'
Member: 'Member'
Recruit: 'Recruit'
Features:
LocalChat:
Enable: false
Radius:
Public: 50
FactionChatChannel: -1
# prefix and suffix are for Groupmanager, PermissionsEX & bPermissions only. please PM me to request more.
FactionChatMessage:
IncludePrefix: true
IncludeSuffix: true
IncludeTitle: true
FactionChat: '&2[FACTION] &f[FACTIONRANK] TITLEPREFIX PLAYER SUFFIX: MESSAGE'
AllyChat: '&aAlly: [FACTION] &f[FACTIONRANK] TITLEPREFIX PLAYER SUFFIX: MESSAGE'
TruceChat: '&aTruce: [FACTION] &f[FACTIONRANK] TITLEPREFIX PLAYER SUFFIX: MESSAGE'
AllyTruceChat: '&aALLY-TRUCE: [FACTION] &f[FACTIONRANK] TITLEPREFIX PLAYER SUFFIX: MESSAGE'
OfficerChat: '&eOfficerChat: [FACTION] &f[FACTIONRANK] TITLEPREFIX PLAYER SUFFIX: MESSAGE'
LeaderChat: '&eLeaderChat: [FACTION] &f[FACTIONRANK] TITLEPREFIX PLAYER SUFFIX: MESSAGE'
EnemyChat: '&cEnemy: [FACTION] &f[FACTIONRANK] TITLEPREFIX PLAYER SUFFIX: MESSAGE'
OtherFactionChatTo: '&5[@:OTHERFACTION] &f[FACTION] TITLEPREFIX PLAYER SUFFIX: MESSAGE'
OtherFactionChatFrom: '&5[From:FACTION] &f[{OTHERFACTION}] TITLEPREFIX PLAYER SUFFIX: MESSAGE'
SpyChat: '&2Spy:&r MESSAGE'
OtherChatMessage:
ModChat: '&b[Mod-Chat] &fPREFIX PLAYER SUFFIX: &aMESSAGE'
AdminChat: '&4[Admin-Chat] &fPREFIX PLAYER SUFFIX: &aMESSAGE'
UAChat: '&5[UA-Chat] &fPREFIX PLAYER SUFFIX: &aMESSAGE'
JrModChat: '&b[JrMod-Chat] &fPREFIX PLAYER SUFFIX: &aMESSAGE'
SrModChat: '&b[SrMod-Chat] &fPREFIX PLAYER SUFFIX: &aMESSAGE'
JrAdminChat: '&4[JrAdmin-Chat] &fPREFIX PLAYER SUFFIX: &aMESSAGE'
VIPChat: '&e[VIP-Chat] &fPREFIX PLAYER SUFFIX: &aMESSAGE'
#Enable/disable any chat (except public)
FactionChatEnable: true
AllyChatEnable: true
TruceChatEnable: true
AllyTruceChatEnable: true
LeaderChatEnable: true
OfficerChatEnable: true
EnemyChatEnable: true
OtherChatEnable: true
ModChatEnable: true
AdminChatEnable: true
JrModChatEnable: true
SrModChatEnable: true
JrAdminChatEnable: true
UAChatEnable: true
VIPChatEnable: true
# What language should the messages be in. Accepts 'english', or 'other' only.
MessageLanguage: english
# These can be modified to your liking.
message:
english:
NotInFaction: You are not member of any faction
IncorectChatModeSwitch: 'Error: please use /fc to switch chat mode or'
SpyModeOn: Spy mode is now on
SpyModeOff: Spy mode is now off
NewChatMode: 'Your chat mode has been changed to: '
FchatoMissType: 'Error: Please use /fco factionname message.'
FchatoNoOneOnline: 'Error: either no faction member is online or incorrect faction
name'
PublicMuteChatOn: 'Public chat is now muted for you'
PublicMuteChatOff: 'Public chat is no longer muted for you'
AllyMuteChatOn: 'Ally chat is now muted for you'
AllyMuteChatOff: 'Ally chat is no longer muted for you'
other:
NotInFaction: You are not member of any faction
IncorectChatModeSwitch: 'Error: please use /fc to switch chat mode or'
SpyModeOn: Spy mode is now on
SpyModeOff: Spy mode is now off
NewChatMode: 'Your chat mode has been changed to: '
FchatoMissType: 'Error: Please use /fco factionname message.'
FchatoNoOneOnline: 'Error: either no faction member is online or incorrect faction
name'
PublicMuteChatOn: 'Public chat is now muted for you'
PublicMuteChatOff: 'Public chat is no longer muted for you'
#name and colour customization when player changes channel e.g. /f c ally
ChatModeChange:
FactionChat: '&2Faction'
AllyChat: '&aAlly'
TruceChat: '&aTruce'
AllyTruceChat: '&aAlly-Truce'
EnemyChat: '&cEnemy'
LeaderChat: '&eLeader'
OfficerChat: '&eOfficer'
PublicChat: 'PUBLIC'
In reply to james137137:
updated FactionChat to 1.10.4, only minor changes
How Do I Edit The Public Chat??
Public chat is not controlled by FactionChat. Please use your other plugins (essentialsChat, Factions, etc)
do you need essentials chat to make factions chat being able to mute public chat. Because I only have factions chat as chat plugin and it does not mute public chat for the client with /f mute. yes i did enable the command in the config. It successfully excutes and gives you message that you have muted public chat, but it actually does not mute anything in public chat.
Here's the code I'll be referring to that does the mute.
https://github.com/James137137/FactionChat/blob/master/src/main/java/nz/co/lolnet/james137137/FactionChat/FactionChatListener.java#L229
So first thing to check is that the people talking don't have the permission: FactionChat.mutebypass
If that's not the cause I'll look into debugging it.
Where are the permission nodes i looked in the tab at the top but i cant understand it... PLEASE HELP ME!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
https://dev.bukkit.org/projects/factionchat/pages/permissions has most of the permissions
Thank you for this awesome plugin james137137. Great to have fchat that works with massivecraft. :)
Thanks
This is awesome and is working perfectly now. Thanks for the quick response!
no problem
@hoorigan
fixed and uploaded
@MasterMithrandir
ok... going to debug that
@hoorigan
Received and on it now
Opened an issue on GitHub:
Officer chat may be malfunctioning #31
@james137137
Applied, but all chats stopped working xD
EDIT: Suddenly fixed somehow.
@james137137
done. and uploaded
@james137137
ok found minor errors not uploading yet