xTeam

xTeam Plugin
Brief Description
xTeam is a team-based PvP plugin that allows for creating and joining teams, setting a headquarters and various other features. It is meant for use on hardcore PvP servers where land is not protected.
This is a mod I've been working on for some time. Initially I figured a mod like this would be made eventually and I would just switch to using the alternative instead of mine but surprisingly I haven't quite found an equivalent. Factions is nice but if you want more of a 'hardcore' team plugin, then this mod is for you.
____________________________________________________________________________
!!! IMPORTANT !!!
Version 1.8.1 of the plugin contains an Anonymous Error Reporting feature for sending errors directly to me when they are thrown.
This feature does not reveal any private information. In fact the only one thing that could possibly identify the client is encrypted even from me. The benefit of this feature is that I can see which errors are happening the most and fix them more quickly. Having said that, there is an option in the configuration file to disable this feature by setting 'anonymouserrorreporting = false' if you feel so inclined. Just know that if this is disabled, I will not be able to see what errors are happening frequently from your server.
____________________________________________________________________________
Command Aliases: '/team', '/xteam', '/xt'
Command Parameters: {optional} [required] pick/one
Features
- create and join teams
- get info for any team
- change the team tag
- set a headquarters
- rally team to a location
- teleport to teammates and headquarters
- teleport to return location that is saved upon using any of the other teleport functions
- teleport to rally location set by team leader
- promote and demote players to use team admin commands
- team chat function to toggle between team chat and regular chat
- disable friendly fire
- wolves can be team members too!
- default teams for automatic joining on login
Team User Commands
- /team - main help menu for xTeam
- /team {help} {Page} - user help page for xTeam
- /team info {Team/Player} - get team info or other team's info
- /team list - list all teams on the server
- /team create [Name] - create a team
- /team join [Team] - join a team
- /team leave - leave your team
- /team accept - accept the most recent team invite
- /team hq - teleport to the team headquarters
- /team tele {Player} - teleport to nearest or specific teammate
- /team return - teleport to saved return location (1 use)
- /team rally - teleport to team rally location
- /team chat {On/Off} - toggle chatting with teammates
- /team message [Message] - send message to teammates
Team Admin Commands
- /team sethq - set headquarters of team
- /team invite [Player] - invite player to your team
- /team promote [Player] - promote player to team admin
Team Leader Commands
- /team demote [Player] - demote team admin
- /team disband - disband the team
- /team open - open team to public joining
- /team remove [Player] - remove player from your team
- /team rename [Name] - rename the team
- /team tag [Tag] - set the team tag
- /team setleader [Player] - set new leader for the team
- /team setrally - set rally point for the team
Server Admin Commands
- /team chatspy - spy on team chat
- /team debug {Option} - server admin debug menu for xTeam
- /team disband [Team] - disband a team
- /team demote [Team] [Player] - demote team admin
- /team hq [Team] - teleport to team headquarters for team
- /team promote [Team] [Player] - promote player to admin
- /team remove [Player] [Team] - remove player from team
- /team rename [Team] [Name] - rename a team
- /team tag [Team] [Tag] - set team tag
- /team open [Team] - open team to public joining
- /team set [Player] [Team] - set team of player
- /team sethq [Team] - set team headquarters for team
- /team setleader [Team] [Player] - set leader of team
- /team setrally [Team] - set team rally point for team
- /team teleallhq - teleports everyone to their headquarters
- /team tpall [Team] - teleports a team to yourself
Console Commands
- team {help} - console help menu for xTeam
- team debug {Option} - console debug menu for xTeam
- team demote [Team] [Player] - demote team admin
- team disband [Team] - disband a team
- team info [Player/Team] - get info on player/team
- team list - list all teams on the server
- team promote [Team] [Player] - promote player to admin
- team remove [Player] [Team] - remove player from team
- team rename [Team] [Name] - rename a team
- team tag [Team] [Tag] - set team tag
- team open [Team] - open team to public joining
- team set [Player] [Team] - set team of player
- team sethq [Team] [World] [X] [Y] [Z] - set headquarters of team
- team setleader [Team] [Player] - set leader of team
- team setrally [Team] [World] [X] [Y] [Z] - set rally point of team
- team teleallhq - teleports everyone to their headquarters
Permission Support
- Supports bukkit SuperPerms (PermissionsEx, PermissionsBukkit, and bPermissions, etc.)
Permissions Nodes
- xteam.core.user.accept - Allows team users to accept an invitation
- xteam.core.user.chat - Allows team users to chat/msg their team
- xteam.core.user.create - Allows team users to create a team
- xteam.core.user.headquarters - Allows team users to teleport to headquarters
- xteam.core.user.info - Allows team users view team info
- xteam.core.user.join - Allows team users to join a team
- xteam.core.user.leave - Allows team users to leave a team
- xteam.core.user.list - Allows team users to list all team names
- xteam.core.user.return - Allows team users to return to saved location
- xteam.core.user.rally - Allows team users to rally to a location
- xteam.core.user.tele - Allows team users to teleport to teammates
- xteam.core.user.* - All team user core commands
- xteam.core.admin.invite - Allows team admins to invite other players
- xteam.core.admin.promote - Allows team admins to promote teammates
- xteam.core.admin.sethq - Allows team admins to set a headquarters
- xteam.core.admin.* - All team admin core commands
- xteam.core.leader.demote - Allows team leaders to demote teammates
- xteam.core.leader.disband - Allows team leaders to disband a team
- xteam.core.leader.open - Allows team leaders to open team to public
- xteam.core.leader.remove - Allows team leaders to remove players
- xteam.core.leader.rename - Allows team leaders to rename team
- xteam.core.leader.setleader - Allows team leaders to set leader of team
- xteam.core.leader.setrally - Allows team leaders to set rally point for the team
- xteam.core.leader.tag - Allows team leaders to set team tag
- xteam.core.leader.* - All team leader core commands
- xteam.core.serveradmin.chatspy - Allows server admins to spy on team chat
- xteam.core.serveradmin.debug - Allows server admins to debug the plugin
- xteam.core.serveradmin.disband - Allows server admins to disband a team
- xteam.core.serveradmin.demote - Allows server admins to demote a player on a team
- xteam.core.serveradmin.hq - Allows server admins to teleport to any headquarters
- xteam.core.serveradmin.promote - Allows server admins to promote a player on a team
- xteam.core.serveradmin.reload - Allows server admins to reload the configuration file
- xteam.core.serveradmin.remove - Allows server admins to remove player from a team
- xteam.core.serveradmin.rename - Allows server admins to rename a team
- xteam.core.serveradmin.tag - Allows server admins to set team tag
- xteam.core.serveradmin.open - Allows server admins to open a team to the public
- xteam.core.serveradmin.set - Allows server admins to set the team of a player
- xteam.core.serveradmin.sethq - Allows server admins to set the headquarters of a team
- xteam.core.serveradmin.setleader - Allows server admins to set the leader of a team
- xteam.core.serveradmin.setrally - Allows server admins to set the rally point of a team
- xteam.core.serveradmin.teleallhq - Allows server admins to teleport everyone to their headquarters
- xteam.core.serveradmin.tpall - Allows server admins to teleport a team to current location
- xteam.core.serveradmin.* - All server admin commands
- xteam.core.* - All core commands
Configuration
Contains data that the plugin uses universally - feel free to change the values to suit your needs. Also contains the permission nodes for the plugin. Use these inside whatever permissions plugin you desire to enable or disable commands for certain people or groups.
NOTE: As this project is still in Beta stage, I will be adding/changing features until I'm satisfied with the basic functionality of the plugin. For updating to a newer version of the plugin, check to see whether there are any configuration file changes. If so, you will want to reload the configuration file or add the new options yourself.
FAQ
Many of the frequently asked questions about the plugin.
Source Code Repository
Feel free to download the current source code at https://github.com/protocos/xTeam/
Links
Donations
I work on this project in my spare time and I will always have a love for Minecraft no matter what, but it certainly does make me smile when people feel like contributing. Donating to the project helps encourage me to continue providing support and feedback to all of you awesome peoples! If you feel like helping out, there's a link at the top right of the page. ;)
Bug Reports
Please leave any questions, comments, concerns, and potential bugs in the comments. I will try to squash them when I can. Having said that, I am a real human being, so if the bug is not fixed right away, please be patient.
-
View User Profile
-
Send Message
Posted Dec 30, 2012@protocos
Yes, that is what I mean. If you want to see what I'm using the plugin for, my server is: liberation.no-ip.info (it'll hopefully be un-whitelisted tommorow)
-
View User Profile
-
Send Message
Posted Dec 30, 2012@1337minecrafer
By permanent teams do you mean like default teams that stay even if no one is on them? A kick timer would be interesting... I'll add it to the list of ideas.
-
View User Profile
-
Send Message
Posted Dec 30, 2012@protocos
Edited my comment. :P
-
View User Profile
-
Send Message
Posted Dec 30, 2012@CheeseBallz02
It should still work... I'll have a look at it. Nothing in the permissions should have changed but I'll investigate.
@1337minecrafer
Thanks for the support..
-
View User Profile
-
Send Message
Posted Dec 30, 2012Okay, this is what I've been looking for (because it has balanced teams), but, it needs a couple of extra features before I can use it. 1: Permanent teams 2: Kicking people from teams for being offline for x days (must support decimals)
-
View User Profile
-
Send Message
Posted Dec 30, 2012Permission Node for /team info its not working anymore?
-
View User Profile
-
Send Message
Posted Dec 30, 2012@FuSe18
@FuSe18
@Benas1
Thanks a bunch. I'll be patching soon.
@Serilum
Right, I'll be the first to admit that the code inside the listeners right now is just plain messy. The logic is all there, but it is like a bandaid on top of another bandaid. I'm still in the process of refactoring old code. xD I'll have this sorted eventually. In fact I think I handled that line with a try/catch where it just caught a NullPointerException since it didn't need to handle any other cases. Sloppy, nonetheless...
-
View User Profile
-
Send Message
Posted Dec 29, 201215:59:04 CONSOLE: [INFO] Spinny6699 issued server command: /team hq 15:59:04 CONSOLE: [SEVERE] null 15:59:04 CONSOLE: exception executing command 'team' in plugin xTeam v1.7.0
-
View User Profile
-
Send Message
Posted Dec 29, 2012@protocos
@Benas1
Haha yea, there were some issues with your code :) This for example is being caused by trying to get the team name of someone that does not have a team name.
So what you want to do is:
if(attTeam == null || defTeam == null || attTeam.getName().equals(defTeam.getName()) {
Do stuff
}
Atleast I believe that is the error without actually looking into the line :)
-
View User Profile
-
Send Message
Posted Dec 29, 2012Just letting you know about this error
-
View User Profile
-
Send Message
Posted Dec 29, 201202:28:28 CONSOLE: [INFO] maxy1122 issued server command: /team hq 02:28:28 CONSOLE: [SEVERE] null 02:28:28 CONSOLE: exception executing command 'team' in plugin xTeam v1.7.0
-
View User Profile
-
Send Message
Posted Dec 28, 2012@anderson1300
The permissions nodes? If so, I would recommend using PermissionsEX and adding them based on groups or specific users. The list above can be used individually (i.e. xteam.join, xteam.leave for regular users, and xteamadmin.set for server admins). I would refer to the PermissionsEX page for more information on how to set them up. ;)
@kris86
It might be possible to add the coloring team tags, but I am a little out of my depths in mySQL. I have only a little experience with it. Having said that, I am still interested in supporting it.
@Serilum
If that is the case, sorry for any bad code... xD I've been doing a little refactoring recently and I intend to continue while adding a few new features. As of right now, I still consider the plugin in ßeta stage until I have, what I consider, the bare bones components to build upon. I'd be interested to see what you have done in the way of additions and fixes as I myself could do with some improvement as a developer (as I'm sure you might know).
-
View User Profile
-
Send Message
Posted Dec 28, 2012It is possible to add options coloring tags and mysql database support?
-
View User Profile
-
Send Message
Posted Dec 27, 2012Welcome back! I wanted to let you know that I've used your plugin about a month ago for the base of my personal team plugin. This has not been distributed and is only in use by my server.
This also means that I know exactly what your code does, so if you are in need of a developer for your plugin that has to do some maintenance. I'm willing to!
-
View User Profile
-
Send Message
Posted Dec 26, 2012@protocos
Hey I'm having a problem with the nodes. Can you explain to me how do use them? It would be very helpful.
-
View User Profile
-
Send Message
Posted Dec 25, 2012@FuSe18
Glad I could help. Yeah unfortunately we're left up to the mercy of the admins when it comes to approval. I imagine some of them are out celebrating Christmas, so I hope the link helped... '/team rename [newname]' would actually be a good idea for team leaders maybe? Look for it in a future update. ;)
@FuSe18
Thanks for the information. There is definitely quite a bit of room for improvement. Refactoring the command classes was just the beginning. I'll be doing much more re-visiting of old code while adding new things.
-
View User Profile
-
Send Message
Posted Dec 24, 2012Btw heres something you can look at
xTeam v1.7.0 PlayerQuitEvent Time: 675230 Count: 127 Avg: 5316 PlayerJoinEvent Time: 371743631 Count: 131 Avg: 2837737 EntityDamageByEntityEvent (and others) Time: 3545501909 Count: 49416 Avg: 71748 EntityDamageByEntityEvent (and others) Time: 35414908 Count: 49416 Avg: 716 EntityDeathEvent (and others) Time: 1411893 Count: 1104 Avg: 1278 PlayerRespawnEvent Time: 86629146 Count: 40 Avg: 2165728 PlayerChatEvent Time: 6705707549 Count: 1560 Avg: 4298530 Total time 10747084266 (10s)
Just how fast your plugin replys back the server. Always room for improving! :)
-
View User Profile
-
Send Message
Posted Dec 24, 2012Thanks for the quick post! really does help. Id suggest doing that more often when your posting a bug fix build and they dont approve it fast.
It really helps out the people that use your plugin!
Also are you able to add it where you can /team changename instead of /team quit /team create to make it a differnt name.
-
View User Profile
-
Send Message
Posted Dec 24, 2012I am not sure if this will get taken down, but they still haven't approved v1.7.0, so here is a link that anyone can use for now... I'll take it down once I see v1.7.0 has been approved.
EDIT: (see link above)
-
View User Profile
-
Send Message
Posted Dec 24, 2012you could always post it in like adfly