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>





-
View User Profile
-
Send Message
Posted Aug 2, 2014@james137137
Thanks for merging the pull request. Sorry for throwing those bugs your way.
-
View User Profile
-
Send Message
Posted Aug 2, 2014@shinji257
thanks. might take some time to squash them bugs....
@marubal21
not without hard coding it in
-
View User Profile
-
Send Message
Posted Aug 2, 2014I use essentialschat, is there a way to use the nicks as playername in chat format?
-
View User Profile
-
Send Message
Posted Aug 2, 2014@james137137
Yes. The severe that I reported happens even with DontUseAsyncEvent set to true however when it is false the whole plugin dies trying to use Async commands so even though it is tagged severe it should be harmless. It's actually MCStats that breaks the plugin due to it trying to use the newer Async scheduler. I had to opt out of metrics to get around it.
I had already done the conversions in my personal backport but I didn't submit them because I didn't know if it would reproduce on your builds. I can submit an appropriate pull request if you want since I've done it already before.
EDIT: Well it was like 7 changes but I did it anyways... Merge it if you want. It replicates the intended formatting.
EDIT: I opened a few tickets on your github repo for tracking so we don't forget the individual issues.
-
View User Profile
-
Send Message
Posted Aug 1, 2014@shinji257
did you get them severe errors when you set DontUseAsyncEvent: true in config?
I'll have to go though all my log stuff and try and keep it the same format.
Which one works in 1.2.5 with no problem?
[INFO] [FactionChat] {0}|{1}: {2} should happen.... might have to just replace everything to log.info
-
View User Profile
-
Send Message
Posted Jul 31, 2014@james137137
I will in a sec.
What about MCStats?nevermind. One could just opt out of it... also breaks the plugin for 1.2.5 (confirmed)EDIT: Doesn't appear to work at all. Now the command doesn't even register options and the /f c version doesn't trigger at all. Also the option is ineffective... I'm gonna try to bring the changes over to my repo and see what happens.this was me being stupid2014-08-01 03:17:58 [SEVERE] Plugin FactionChat is attempting to register event org/bukkit/event/player/AsyncPlayerChatEvent, which does not exist. Ignoring events registered in class nz.co.lolnet.james137137.FactionChat.FactionChatListener
Probably nothing you can do about it. Doesn't negatively affects the plugin itself.
Toggle works. Things break as expected when Async is allowed on 1.2.5. Metrics still fubars things up for some reason and breaks the plugin as a whole.
Also testing against your build (since I finally figured out what I was doing wrong) I found that log.log() isn't showing properly. You do have a mix of log.LEVEL() and log.log() in your code. I changed all log.log() to log.LEVEL() (which turned out to be log.info() anyways) throughout but I don't know if you want to do so.
Spy chat in your plugin using log.log()
[INFO] [FactionChat] {0}|{1}: {2}
[INFO] [FactionChat] {0}|{1}: {2}
Also when the plugin loads...
[INFO] {0}: Version: {1} Enabled.
-
View User Profile
-
Send Message
Posted Jul 31, 2014@shinji257
yep I wont merge :D (I almost pressed it)
I'll see if i can just do a version check so at-least i can say this plugin will work in 1.2.5
ok i've recoded parts of factionChat and included in the config- DontUseAsyncEvent: false (default value)
It should work now. Could you test it for me?
the latest dev build will do in https://james137137.ci.cloudbees.com/job/FactionChat/
-
View User Profile
-
Send Message
Posted Jul 29, 2014@james137137
I'll redo it for Github with only the required changes but given that the metrics version your using isn't compatible that will need to be switched up anyways or disabled when Tekkit Classic is detected. An option here is using a separate file for TekkitClassic Chat handling (all real changes are in one file only). I still don't know if replacing log.log all over the place with log.info was needed or not even though it bugged out for me. It only affected the console logging...
version
2014-07-29 09:05:56 [INFO] This server is running CraftBukkit version git-Bukkit-jenkins-CraftBukkit-173 (MC: 1.2.5) (Implementing API version 1.2.5-R4.1-MCPC-SNAPSHOT)
It is done... https://github.com/James137137/FactionChat/pull/2
Note the "DO NOT MERGE" in all caps in the title and the message area. I don't want you to accidentally merge it in. I've suggested a way to allow a single main build that involves maintaining yet another file but is probably cleaner than some other methods. MCStats will still pose a roadblock though and that is mentioned in the pull request. I didn't handle that.
-
View User Profile
-
Send Message
Posted Jul 23, 2014@shinji257
I might be able to read through your code and merge it into the Master branch. All i have to do is check what version of bukkit you are using.
Second thoughts I better keep it separated, don't want to get my code too messy
Could you push request of that branch to my github?
-
View User Profile
-
Send Message
Posted Jul 21, 2014@james137137 It basically rolls back the async player chat event to a non async one. That function wasn't implemented until 1.3. Also I had to change log.log to log.info equivalents for unknown reasons.
I forked it on bitbucket and logged all changes in a separate branch.
http://repo.robertpendell.com/factionchat/
The metrics bit wasn't compatible and since my build was custom I removed it as well as the updater which is also logged on my fork. If you can make your code fallback to tekkit classic compatible code (catch the exception and use an alternative method) then I won't need my custom build anymore.
Oh and I found an issue where it bugs out when attempting to reload via the console. Once again it may be specific to my build but it seemed like a handler issue. I had issue logged it for my own reference here. http://repo.robertpendell.com/factionchat/issue/1/stack-trace-when-attempting-to-reload-from
-
View User Profile
-
Send Message
Posted Jul 21, 2014Can u add Authme support? So unlogged in players cant see chat between factions and admin chats. I would really appriciate it. This plugin of yours is great!
-
View User Profile
-
Send Message
Posted Jul 3, 2014@shinji257
yeah. i'll test that too. Could you send what you altered I might be able to add it edit my plugin to allow anyone with tekkit to use FactionChat
-
View User Profile
-
Send Message
Posted Jun 29, 2014I modified your code for Tekkit Classic to use on a server. I hope you don't mind.
Only issue I got at the moment is faction to faction chat (via /fco /fchato) doesn't work... Always says the other faction has no one online but that's not an issue for you. That's for me to handle unless the issue happens to be in your version as well... XD
Didn't test yet though.
-
View User Profile
-
Send Message
Posted Jun 29, 2014@james137137
i made a ticket just waiting response :D
-
View User Profile
-
Send Message
Posted Jun 24, 2014I think I fixed the dev builds. seems the yml files were in the wrong folder....
-
View User Profile
-
Send Message
Posted Jun 24, 2014@jedk1
could to post a ticket. providing screenshots?
Thanks
-
View User Profile
-
Send Message
Posted Jun 24, 2014Hey im having a little issue, when my players enter say /fc f , the message is also pasted into the public chat, however if i talk in /fc f my messages stay private, any tips / suggestions?
im using herochat as my chat manager btw and using fc build 1.791
-
View User Profile
-
Send Message
Posted Jun 22, 2014@james137137
see Module Builds when you pick a build
-
View User Profile
-
Send Message
Posted Jun 22, 2014@james137137
working now
-
View User Profile
-
Send Message
Posted Jun 22, 2014@Malachi21
:D I'll work out how Jenkins works....