Commit Graph

1600 Commits

Author SHA1 Message Date
Brettflan
1751702dc1 re-release of 1.6.9.1: added some (apparently absolutely necessary) idiot-proofing for CB version support due to changed GSON lib package name; we were getting a flood of invalid error reports because of it 2012-09-05 03:43:39 -05:00
Brettflan
e8b66ac8cd Fix for players being able to use /f sethome for other factions when they shouldn't be able to 2012-08-26 18:28:48 -05:00
Brettflan
f99e1b0e89 Partial backport of Olof's file handling changes made in the main 1.7.x branch. Reworked a bit to use older file handling methods which don't require Java 1.7.
Main change is that files as a whole are read into (and written from) an array of bytes, which is converted to/from UTF-8 encoded text. Previously files were read line-by-line as text from a BufferedReader.

Surprisingly, this seems to vastly speed up startup time. I tested on a ~2 MB data set which is now loading in just over 1 second where it was previously loading in ~95 seconds.
2012-08-26 04:44:55 -05:00
Brettflan
3bcdb87bf3 The latest CraftBukkit builds have changed their compiled-in GSON lib's package name. Rather than us switching back to using a separate GSON lib again (with two effectively identical copies of GSON ending up loaded and wasting server resources), I'm simply switching Factions to point to CraftBukkit's refactored GSON package name instead.
In line with that, I've removed the Bukkit and GSON libs and added in CraftBukkit as a lib.
2012-08-26 01:02:21 -05:00
Brettflan
5841106bea (by ammaraskar) Fixes an ender pearl clipping exploit with blocks that occupy less than 1 block in width or length 2012-08-07 22:32:34 -05:00
Brettflan
d29c7f22fa Update version to 1.6.9_pre, fix for invalid comparison 2012-08-07 21:58:46 -05:00
Brettflan
6059ee0b0b Update for remaining old PlayerChatEvents, update EssentialsChat libs and integration accordingly 2012-08-07 21:51:31 -05:00
Brettflan
5a558a2f0f Merge branch '1.6.x' of github.com:MassiveCraft/Factions into 1.6.x 2012-08-05 19:57:11 -05:00
Brettflan
ca61860d7b Switch PlayerChatEvent to AsyncPlayerChatEvent for bleeding-edge 1.3.1 Bukkit builds to prevent persistent nag from Bukkit, update Bukkit lib
UNTESTED, please confirm working... looks like chat event cancellation might be bugged in Bukkit at the moment but will hopefully be fixed soon if so
2012-08-05 19:56:07 -05:00
basicsensei
e18cfb4529 fix evil bug with getPlayer matching online players
if the offline player had similar name with the online player
ie. online "s2", offline "s", then "s" would show as online because
getPlayer("s") will return getPlayer("s2")
this is why getPlayerExact should be used
2012-07-16 18:25:31 +02:00
Brettflan
73898673f6 Release 1.6.8 - one final minor detail, default position for Spout territory faction display is now in upper left since Spoutcraft client now has minimap in upper right 2012-05-16 23:06:16 -05:00
Brettflan
ba16a202ba fix for rare case where faction home location's world being removed or renamed (world with specified name not existing) could lead to NPE 2012-05-08 14:25:18 -05:00
Brettflan
66a7685bf7 /f show|who command will no longer reveal players as online if they are hidden from the viewer by the Vanish API 2012-04-26 08:08:10 -05:00
Brettflan
dd0789cda1 Relation commands will now cancel out if the same relation is already set with the target faction. 2012-04-06 13:27:21 -05:00
Brettflan
dcee1f5232 fix for /f power command used on self incorrectly also requiring factions.power.any permission 2012-04-06 13:23:05 -05:00
Brettflan
e71a09b6e2 New setting "handleExploitTNTWaterlog" (default false/disabled) which, if enabled, will cause TNT which explodes in liquid to actually destroy a single adjacent block in all 6 directions. This will only apply to blocks which can be destroyed by TNT normally, specifically anything other than air, bedrock, water, lava, obsidian, and enchanting tables. The destruction of these blocks will be handled as if they had been mined, dropping the appropriate item.
TNT in water/lava doesn't normally destroy any surrounding blocks, which is usually desired behavior. That's the reason this setting is disabled by default. However, it is available because it provides a method to get through waterwalls with enough persistence, and it makes cheap (non-obsidian) TNT cannons require minor maintenance between shots. Both are useful things for my server.
2012-03-19 11:18:40 -05:00
Brettflan
0eaffd7aef Double-space (or more) after command alias is no longer accepted, i.e. "f--home" (replace "-" with " " since GitHub is combining multiple spaces). Otherwise, command prevention routines (in Factions itself and in other plugins) can be bypassed. For example, preventing the "f-home" command wouldn't prevent anyone from using "f--home" or "f-----home" instead. 2012-03-19 08:24:01 -05:00
Brettflan
d31bac8da8 New setting "handleExploitInteractionSpam" (defaults to true). If enabled, players will begin to take injury if they rapidly try interacting with anything in another faction's territory. This is to prevent people from spam-clicking on doors and chests and such in the hopes that they'll get one through. After 10 rapid interaction attempts in a row, every click will cause them damage; the damage amount is a half heart of damage for every 10 clicks (up to 1 heart at 20 clicks, 1.5 hearts at 30, etc.). After the player has stopped trying for 2 seconds, their failed interaction counter will reset.
Also removed our old workaround fix code for the bug where half-step placement wasn't detected, since the Bukkit team fixed that in 1.1-R4.
2012-03-19 07:59:44 -05:00
Brettflan
03b0a2bb5f Optional prevention of a couple of exploits.
1. Obsidian generator exploit, which converts redstone wire to obsidian. New setting "handleExploitObsidianGenerators" (enabled by default) to determine whether it's prevented or not. Some servers might want to disable this prevention, to keep it as a viable obsidian creation method. Thanks to ObGenBlocker and WorldGuard plugins for the prevention method.
2. Ender pearl exploit, which could be used to clip through doors, glass, and probably a few other things if just the right spot was targeted. New setting "handleExploitEnderPearlClipping" (enabled by default) to determine whether it's prevented or not.

Also removed our TNT exploit prevention code, since they did get it fully fixed in 1.1-R4 and it doesn't look to be coming back from the dead again like it did when they released 1.1-R2.
2012-03-19 06:54:59 -05:00
Brettflan
500a3d2819 Add fireball/"fire charge" to default territoryDenyUseageMaterials list, to prevent them from being used to set things on fire like flint&steel 2012-03-19 04:19:05 -05:00
Brettflan
67fce0b6ca Should finally completely fix problem where player location world changes in the middle of the /f home smoke effect, triggering an error from trying to calculate distance between worlds
also updated Spout API lib
2012-03-19 01:28:10 -05:00
Brettflan
68f1319a98 Faction homes should no longer be lost if their target world isn't already loaded when Factions loads at server startup. This is done using a new lazy-load Location container class which only initializes the Location when it's actually needed. 2012-03-14 13:06:50 -05:00
Brettflan
2dbaee836b Ability to pay for commands (through economy) is now checked before firing events which can be canceled, and actual payment made after making sure the event isn't canceled.
Added Econ.hasAtLeast(EconomyParticipator ep, double delta, String toDoThis) method to check if an account has at least a specified amount of money in it. Also added related FCommand.canAffordCommand(double cost, String toDoThis).
2012-03-13 09:48:31 -05:00
Brettflan
30c2eaeac3 (donington) Fixes for compiler warnings & minor .gitignore enhancement, completed the last of the creatureType/entityType renaming (a few imports and functions) 2012-03-13 08:43:55 -05:00
Brettflan
03fe63cda0 Cleaning sweep, mainly for various stray "4 spaces" indentions to tabs 2012-03-13 08:26:54 -05:00
Brettflan
554a7a42c6 (patrickfreed) (bladedpenguin) (donington) Custom Event System - custom events are provided for other developers to hook into to create their own plugins based around Factions! Check the factions/event folder for the currently implemented events. 2012-03-13 07:58:51 -05:00
Brettflan
47756a9216 Remake of radius claim method. It now starts in the current chunk and spirals outward, in a repeating task designed to keep from overloading the server. The old method tried to put together a list of chunks, and then tried to claim them immediately starting from one corner of the overall area.
New setting "radiusClaimFailureLimit" (default 9). If claims are unsuccessful that many times in a row during a radius claim, the task will cancel out. There is no longer a limit to the specified radius since the process should no longer cause major server stress, and due to the process canceling out after several failures as just described.

Added some new methods to FLocation to quickly convert between block/chunk/region positions, and rewrote the FLocation hashCode() method to make it faster.
2012-03-13 05:54:51 -05:00
Brettflan
90e9f35fea Fix for "econClaimUnconnectedFee" not working correctly 2012-03-11 22:44:39 -05:00
Brettflan
4db904182e New setting "playersWhoBypassAllProtection" (default empty), which is a list of player names that should always bypass normal faction protections such as block destruction and placement. This is primarily for use with other plugins/mods which use a fake player to take action, which shouldn't necessarily be subject to protections provided by Factions. Note that case is important; you must preserve the exact capitalization of the name.
As with every other setting, you are advised to use /f config to modify it. Example: /f config playersWhoBypassAllProtection fakePluginPlayerName  - add/remove the specified player name

Also switched several HashSets in Conf.java to LinkedHashSets. LinkedHashSets do have slower insertion and deletion than HashSets, but importantly they have faster lookup speed (at least until you get up to several hundred entries).
2012-03-11 13:36:07 -05:00
Brettflan
6931b3e204 Connected standard command handler getCommand("f"), for it to work with other plugins which directly execute commands using that interface. 2012-03-11 11:41:56 -05:00
Brettflan
b51ea3020d Removed dependence on external GSON lib in lib/gson.jar, since GSON 2.1 is now embedded in CraftBukkit itself, used by their auto-updater added shortly before 1.1-R5 was released:
0ed1d1fdbb
2012-03-11 07:39:31 -05:00
Brettflan
fbfdf8fe23 (donington) Consolidated chat event listeners into a single chat listener class.
(Brettflan) Fixed slashless commands not being logged if player was in faction chat or alliance chat mode. Also cleaned up chat code a bit, nothing major.
2012-03-09 21:24:58 -06:00
Brettflan
d7f5ee581e New setting "logPlayerCommands" (default true) which can be disabled to prevent player commands from being logged. 2012-03-09 19:26:42 -06:00
Brettflan
a999f50966 Replaced deprecated CreatureType references with EntityType 2012-03-09 14:46:46 -06:00
Brettflan
2aca034c8c If plugin failed to load correctly for various reasons, it could end up wiping the board or faction list. This should now be prevented.
An example: if you loaded 1.6.6 (not 1.6.6b) on CB 1.1-R6 or newer, it would trigger an exception at startup and cause this problem.
2012-03-09 14:44:18 -06:00
Brettflan
460c382699 Fix for fatal error at startup in CraftBukkit 1.1-R5 and above
Updated Bukkit lib
2012-03-01 09:40:29 -06:00
Brettflan
e1a3d8bffb Final attempt to fix rare non-fatal NPE from Player ending up returning null while updating Spout appearance features 2012-03-01 09:38:46 -06:00
Brettflan
a4ee13ebbe Release 1.6.6
Also I'm sneaking in another minor fix for the coloring of the faction limit error message
2012-02-26 21:34:56 -06:00
Brettflan
e86b436c60 fix for faction limit error message 2012-02-26 20:49:50 -06:00
Brettflan
84ee922ac1 "autoLeaveAfterDaysOfInactivity" routine now runs only once every few minutes instead of running every time a player logs in. New setting "autoLeaveRoutineRunsEveryXMinutes" (default 5 minutes) to determine just how often the routine is run.
The routine is also slightly more careful about how it calculates how long a player has been offline.
2012-02-26 16:55:57 -06:00
Brettflan
cbd2507676 (Olof) Added command logging for commands used by players 2012-02-26 16:42:12 -06:00
Brettflan
7138e8d5f8 Added possibility to specify a player in the /f join command (/f join <faction> [player=you]), to make a player other than yourself join the specified faction. The new permission factions.join.others (added to factions.kit.mod and above) is required to be able to specify a different player.
Note that the player cannot currently already be in another faction; if they are, you'll need to /f kick them first. Also note that if the faction isn't open (with no invitation required), the player isn't invited, and you don't have the factions.join.any permission or have admin bypass mode on, the attempt will also fail.

Also, added new log method which accepts arguments (like the msg method) and cleaned up /f permanent text a little.
2012-02-26 12:29:46 -06:00
Brettflan
503233b916 UNTESTED: fix for chatspy not working with CAPI chat integration
If it's still not working correctly, let me know
2012-02-25 04:44:26 -06:00
Brettflan
c1f5475d0c New setting factionMemberLimit (default 0, no limit), which will prevent players from joining any faction that has reached this membership limit. 2012-02-24 06:30:18 -06:00
Brettflan
967870a582 Damage protection is now extended to being set on fire (by flaming arrows, for instance) and receiving harmful splash potion effects. Beneficial splash potion effects are unaffected, and prevention of harmful splash potion effects is handled on a player-by-player basis, so you can still be harmed if you're not careful where you throw them. 2012-02-23 00:09:19 -06:00
Brettflan
3ff3e61dd9 Hopeful fix for rare errors where location world somehow changes in the middle of trying to show a smoke effect 2012-02-22 23:52:38 -06:00
Brettflan
02fa6ab2c1 (Olof) (backported from 1.7 branch) New setting "homesTeleportCommandEssentialsIntegration" (default true) which, if enabled, will integrate /f home teleports with the Essentials plugin's teleport handler if Essentials is on the server. This provides teleport cooldown and/or delay to /f home based on your Essentials configuration. 2012-02-22 13:41:47 -06:00
Brettflan
5452a7cf91 Clean up integration methods with other plugins a bit 2012-02-22 11:43:56 -06:00
Brettflan
11a4162981 Updated SpoutAPI, handled deprecated Spout AppearanceManager code, updated Spout event listener to new Bukkit event system 2012-02-20 17:03:43 -06:00
Brettflan
639dc16bf5 Compatibility with upcoming CB 1.1-R5 and above: updated Enderman block monitors to use EntityChangeBlockEvent, removed register event convenience methods from MPlugin (no longer working or needed)
Updated Bukkit lib to newest dev version
2012-02-20 16:59:18 -06:00
Brettflan
af85f0f503 (Olof) Using latest CAPI for integration 2012-02-20 16:53:10 -06:00
Brettflan
56de98f049 update default GSON jar version to 2.1 2012-02-19 08:32:47 -06:00
Brettflan
03d32ec5b0 Fix for potential NPE in CraftBukkit caused by LWC location world returning null 2012-02-19 08:23:09 -06:00
Brettflan
ff56162c12 fix for command prevention routine (used by territoryEnemyDenyCommands and such) not properly covering commands with uppercase letters in them 2012-02-19 08:21:03 -06:00
Brettflan
f182f70371 Update our MCore event handlers to use the newer Bukkit event system 2012-02-07 17:02:53 -06:00
Brettflan
3ed879ca18 "worldsIgnorePvP" setting no longer ignores PvP damage in SafeZones and PvP damage done by players who just logged in, no matter the world it happens in 2012-02-07 15:04:20 -06:00
Brettflan
225471e530 Fix for error when disbanding faction from server console with economy enabled 2012-02-07 14:57:03 -06:00
Brettflan
5ef1c1a15e Release 1.6.5c: Most TNT explosions were being prevented due to a mistake on my part when I re-implemented our TNT+redstone exploit workaround fix, sorry about that. That's fixed, and the X/Z coordinates for such prevented attempts are no longer sent to players, only sent to the server console/log. 2012-02-04 16:22:55 -06:00
Brettflan
eec60b2d5c Release 1.6.5b - re-enabled WorldGuard support. It actually was working, who knew? I don't use WorldGuard, and I'd only seen multiple failure reports lately and not a single indication from anyone that the integration was actually working for them, so... 2012-02-03 00:15:35 -06:00
Brettflan
32da53f459 Preemptive EssentialsChat 3.x support, since they'll be removing the old local chat integration method; new implementation will need improvement to support relation coloring, but for now it otherwise works.
When chat event hits an UnknownFormatConversionException which requires better chat configuration, the quick dirty fix of setting chatTagInsertIndex to 0 is now automatically applied.
2012-02-02 19:31:34 -06:00
Brettflan
5e14a4b1c7 WorldGuard integration is now disabled, since it has been broken for quite some time now and nobody who used it has been interested enough to actually fix it.
The code is left in though, just in case somebody finally decides to fix it. We'll probably strip the code out eventually if it remains unfixed.
2012-02-02 15:20:40 -06:00
Brettflan
487a3457f2 Adding TNT exploit workaround fix back; they finally fixed the exploit in CraftBukkit 1.1-RC1, but broke it again in 1.1-RC3. :( 2012-02-02 15:13:53 -06:00
Brettflan
a124ac6e35 (by first4ever) Added a "claimedLandsMax" option (default 0, no limit), which prevents normal factions from being able to claim more land once they've reached this limit. 2012-02-02 13:12:54 -06:00
Brettflan
784895c779 Workaround fix for EssentialsChat integration not working on Essentials 2.8+. "chatTagReplaceString" setting now defaults to "[FACTION]" instead of "{FACTION}" since Essentials now converts curly-braces to square-braces for any tags specified in their chat format setting which Essentials doesn't recognize.
For those using Essentials 2.8.x, this should hopefully be handled automatically.
2012-02-02 07:28:56 -06:00
Brettflan
7a38ee42a7 zero-value economy gains/losses are now skipped over ("X gained 0.0 for claiming this land" and similar is a bit odd)
CLeaned up warning given for UnknownFormatConversionException chat exception; the debug info is no longer useful for us, and a distraction for users.
2012-01-31 11:07:48 -06:00
Brettflan
b41b3c8d2c Protection against radius claim attempts which might overload the server 2012-01-31 10:58:25 -06:00
Brettflan
700f244304 Removed direct Permissions and PermissionsEx plugin support. Problems with PermissionsEx integration had been reported.
Now permissions are solely handled directly through Bukkit's built-in "superperms" permission system, since all modern permission plugins should be interfacing through that at this point.
2012-01-31 10:52:32 -06:00
Brettflan
3d8f4419ed Delayed Vault economy integration not necessary after all; reverting added delay 2012-01-29 23:11:40 -06:00
Brettflan
e4a58c12f4 Fix for storing player data in factions.json unnecessarily, and FPlayer add/remove methods are now marked as protected 2012-01-28 12:11:29 -06:00
Brettflan
58e7e5e3f1 New command /f powerboost <p|f|player|faction> <name> <#>, which will apply a permanent power bonus/penalty to a specified player or faction. When applied to a player, it will affect their max power and min power. When applied to a faction, it will be applied to current and max power levels. Whether it is a bonus or a penalty depends on whether the number you specify is positive or negative.
New permission factions.powerboost which is required to use the above command. This permission is added to the factions.kit.mod permission kit.

example usage:
/f powerboost p Player1 1.5  (give player "Player1" a bonus of 1.5 power)
/f powerboost f SomeFaction -6  (give faction "SomeFaction" a penalty of -6 power)
2012-01-28 11:58:18 -06:00
Brettflan
ff91cdfed7 Players no longer regain power while dead; no more waiting to respawn in order to regain power
Also added AuthDB to softdepend list, so it has first shot at Factions commands in case it needs to cancel one
2012-01-28 05:59:10 -06:00
Brettflan
7c8e25fb8f Fix for Vault economy integration bugging out if the target economy plugin loaded after Factions (really seems like a Vault issue, but we'll work around it)
Fix for users who have Vault but don't use economy getting an NPE
2012-01-28 05:24:36 -06:00
Brettflan
fc04e0a446 Update to new Bukkit Event system
Also remove leftover TNT exploit prevention code which I missed earlier
2012-01-28 04:37:55 -06:00
Brettflan
84e137049e removed TNT exploit handling code, since they did finally fix the bug in the CraftBukkit 1.1-RC1 release 2012-01-28 04:07:23 -06:00
Brettflan
84b6278529 Workaround fix for half-step placement on existing half-steps not being prevented; it's caused by a CraftBukkit bug:
https://bukkit.atlassian.net/browse/BUKKIT-646

Fix for a potential NPE in FPlayer autoLeaveOnInactivityRoutine.

Added CaptureThePoints and CombatTag to our softdepend list so they can potentially cancel Factions commands.
2012-01-28 03:16:28 -06:00
Brettflan
5c986109f8 (patrickfreed) Fixed NPE in LWCFeatures
Fixed problem described here: http://forums.bukkit.org/threads/sec-fun-factions-1-6-3-guilds-war-and-user-controlled-antigrief-1-1-r1.19063/page-83#post-928744
2012-01-26 22:19:12 -06:00
Brettflan
da1fb45ea0 Fix for error when deleting a faction if Vault wasn't present;
Fix for slashless Factions commands not working for player in faction chat or alliance chat modes
2012-01-20 11:19:35 -06:00
Brettflan
5fd5be6bf5 Release 1.6.3
Also, removed extra /f claim alias ("claim" was in there twice)
2012-01-19 00:59:46 -06:00
Brettflan
03b368e9c4 New conf.json setting "permanentFactionMemberDenyCommands" (list, default empty), which can be used to prevent members of permanent factions from using specific commands.
Also, a minor fix for the help page regarding faction banks being shown if "bankEnabled" setting was enabled but "econEnabled" setting was false (economy as a whole disabled).
2012-01-18 23:31:37 -06:00
Brettflan
90d91180af fix for factions-specific commands not being prevented properly if they were in "territoryNeutralDenyCommands" or "territoryEnemyDenyCommands"
also got rid of a command preprocess listener which is now unnecessary
2012-01-18 22:42:56 -06:00
Brettflan
2d83f6f764 fix for /f config not accepting values with spaces in them (i.e. "/f config territoryEnemyDenyCommands f home") 2012-01-18 22:24:09 -06:00
Brettflan
db382acc17 New conf.json setting "permanentFactionsDisableLeaderPromotion" (default false) which, if enabled, will circumvent the promotion routine for permanent factions so that they can exist without a faction admin, only regular members and/or moderators. 2012-01-18 21:21:30 -06:00
Brettflan
dde10168ae New conf.json setting "econClaimUnconnectedFee" (default 0.0), which can be set as an additional economic cost for claiming land which is not connected to existing claims. This additional cost is only added if the faction has at least 1 existing claim somewhere in the current world, and is added to the cost after all other calculations are done.
This fee is not refunded from unclaiming land or even considered in actual land values.
2012-01-18 21:10:40 -06:00
Brettflan
edcb681210 Server admins can now promote or demote any member of any faction to/from faction admin or moderator using the existing /f admin and /f mod commands, which can now also be used from the server console. Two new permissions are added to allow that. A third permission is also added to allow server admins or moderators to join any faction without the need of /f bypass mode.
Also, a couple more minor bugfixes are included for /f home payment giving the wrong message, player/faction descriptions being wrong for console messages, and potential NPE in new faction admin promotion routine if faction was permanent with no current admin.

New permissions:
factions.admin.any - allows use of /f admin on any player in any faction
factions mod.any - allows use of /f mod on any player in any faction
factions.join.any - allows player to join any faction, bypassing invitation process for closed factions (the same as players with /f bypass enabled can do)
2012-01-18 06:01:29 -06:00
Brettflan
a44336ff04 self-inflicted damage (such as ender pearl usage) is no longer prevented with a message like "you cannot hurt you" 2012-01-17 02:56:22 -06:00
Brettflan
9534a72d44 improved TNT exploit prevention
Now, canceled exploit attempts don't injure players or mobs as if the TNT had successfully exploded, and if it's the case of an existing TNT block which a redstone torch is attempted to be placed next to, it no longer drops a free TNT item. In that case, the existing TNT block is still destroyed itself, but... oh well, it's close enough to perfect.
2012-01-17 01:57:25 -06:00
Brettflan
a5e2a62eac Economy integration is now handled through Vault instead of Register. You will need to download and install the Vault plugin now if you want to use any Economy-related features. If you're not using the Register plugin for anything other than Factions, it should be safe to remove it from your server.
Vault: http://dev.bukkit.org/server-mods/vault/

Note: for proper faction bank support in iCo5 and EssentialsEco, I recommend waiting for Vault 1.2.5 to be released which addresses faction account creation issues.
2012-01-16 19:36:32 -06:00
Brettflan
1a4dfd8409 (oloflarsson) Added radius claim
backported from 1.7 branch
2012-01-15 12:50:13 -06:00
Brettflan
f5d2ac5aec minor changes to LWC integration 2012-01-15 12:17:21 -06:00
Brett Flannigan
8321a3ec70 Merge pull request #77 from patrickfreed/1.6.x
LWC Chest Protection Integration

When a claimed territory is captured by another Faction, all LWC chests that are not occupied by members of the person who is claiming the territory's faction lose their protection.
2012-01-15 10:07:54 -08:00
Patrick
44266f14bf Updated config usage, added Faction.isNormal() 2012-01-15 12:53:00 -05:00
Brettflan
336edd85be when redstone torches or TNT were attempted to be placed in protected territory but prevented, it could previously still trigger a TNT explosion due to a longstanding unfixed CraftBukkit exploit. A workaround is now in place to prevent this, and any such attempts are logged and announced to everyone on the server.
For reference: https://bukkit.atlassian.net/browse/BUKKIT-89

also, added missed new java file for chat spy
2012-01-15 11:41:13 -06:00
Brettflan
fb32fc7f51 (courtesy of eXeC64) Added chat spy feature for admins 2012-01-15 01:42:56 -06:00
Brettflan
64f47b01fb Errors loading conf.json are handled better now, allowing Factions to continue loading the board instead of losing it
Also, the bad conf.json file is backed up to conf.json_bad so it can potentially be recovered
2012-01-13 05:47:14 -06:00
Brettflan
8b5a724c03 Optimization: Factions (as objects) now maintain a list of FPlayers in the faction for faster lookup 2012-01-13 03:38:25 -06:00
Brettflan
22e1b6d225 updated the map orientation to match the new compass north orientation 2012-01-13 03:19:14 -06:00
Brettflan
3e7d1d028b /f list sorting method performance boost 2012-01-11 19:11:31 -06:00
Brettflan
bf69f6fd01 Updated /f map compass to use new official north 2012-01-11 18:18:41 -06:00
Patrick
c2f0f5ad51 Added unclaim and disband chest resets to LWC 2012-01-10 19:09:15 -05:00
Brettflan
bb8ae0a99c Merge branch '1.6.x' of github.com:MassiveCraft/Factions into 1.6.x 2012-01-09 21:38:57 -06:00
Brettflan
aa88c974fd Players auto-removed due to inactivity or due to being banned now have their data deleted immediately; this should fix the log spam of the same players repeatedly being marked for deletion 2012-01-09 21:38:00 -06:00
Patrick
1d0ba04336 LWC integration 2012-01-07 18:27:03 -05:00
Brettflan
c91703ac68 fix for potential infinite loop when cleaning data
As reported:
at com.massivecraft.factions.Factions.get(Factions.java:99)
at com.massivecraft.factions.FPlayer.getFaction(FPlayer.java:43)
at com.massivecraft.factions.integration.SpoutFeatures.updateSingle(SpoutFeatures.java:218)
at com.massivecraft.factions.integration.SpoutFeatures.updateAppearances(SpoutFeatures.java:154)
at com.massivecraft.factions.FPlayer.resetFactionData(FPlayer.java:188)
at com.massivecraft.factions.FPlayer.resetFactionData(FPlayer.java:194)
at com.massivecraft.factions.FPlayers.clean(FPlayers.java:45)
<repeat>
2012-01-07 15:56:34 -06:00
Brettflan
b3796c31f2 Added soil to the default "territoryProtectedMaterials" and "territoryProtectedMaterialsWhenOffline" settings, so people who aren't in your faction won't be able to trample crops in your territory (soil trampling is handled as an Interact event, for whatever reason)
For servers updating from older versions of Factions, you should use these commands to update your configuration:
f config territoryProtectedMaterials SOIL
f config territoryProtectedMaterialsWhenOffline SOIL
2011-12-18 08:39:52 -06:00
Brettflan
281021ce46 When a faction admin is kicked from his faction for whatever reason (not logging in for too long, a server admin running the /f kick command on him, the player being banned from server), another player will now be promoted to faction admin in his place. If the faction has at least one moderator, one of them will be chosen. Otherwise, a normal member will be promoted. If the faction admin was the last/only member, the faction will of course be disbanded. 2011-12-18 07:47:15 -06:00
Brettflan
e32660c188 New conf.json setting "powerPlayerStarting" (default 0.0) for the power level which new players will now start at; previously new players would start with max power, now it's configurable 2011-12-18 07:26:10 -06:00
Brettflan
fc5d45d8c4 New conf.json setting "removePlayerDataWhenBanned" (default true), which can be disabled to prevent Factions from deleting player data for players when they are banned from the server 2011-12-18 02:47:56 -06:00
Brettflan
7539d3f9a4 Added jukebox, brewing stand, enchantment table, and cauldron to default territoryProtectedMaterials and territoryProtectedMaterialsWhenOffline settings 2011-12-18 01:45:10 -06:00
Brettflan
5dc332691b Hopefully fix a couple of economy integration problems 2011-12-18 01:36:36 -06:00
Brettflan
54ba4473a2 Fix for disabled "bankEnabled" setting being ignored in some cases
Data is no longer stored for players with full power but not in a faction
2011-12-18 01:33:34 -06:00
Brettflan
a9146ac27f Improved fix for players being able to inject colors into faction descriptions, usable to spoof server messages and such 2011-12-18 01:25:42 -06:00
Brettflan
a7aa0d1aea fix for Spout's questionable new "no default height" warning for variable-sized text labels 2011-12-16 00:31:59 -06:00
Brettflan
e66e71f36b fix for Spout faction labels not updating for players who have /f map on 2011-12-16 00:31:23 -06:00
Brettflan
8ec0173eae Added Blaze, EnderDragon, and MagmaCube to safeZoneNerfedCreatureTypes list 2011-12-16 00:30:43 -06:00
Brettflan
22fe84f32c Fix for rare SpoutPlayer exception when player logs off while spout features related to them are updating 2011-12-16 00:29:53 -06:00
Brettflan
86f80f0421 Economy payments for command usage no longer ignores "bankEnabled" setting 2011-12-16 00:24:55 -06:00
Brettflan
5ca330ad11 Wilderness, SafeZone, and WarZone can no longer be disbanded 2011-12-16 00:22:36 -06:00
Brettflan
ac34c535b3 When Faction descriptions are being set, they no longer display in purple like server messages 2011-12-16 00:21:16 -06:00
Brettflan
e0aaa395a7 1.6.1 stuff 2011-12-16 00:19:41 -06:00
Brettflan
d44ccda211 autoclaim will now cancel beforehand if player isn't able to claim land for the specified faction 2011-10-25 01:27:58 -05:00
Brettflan
136b69b07f Swapping money commands back to using EconomyParticipator instead of Faction/FPlayer 2011-10-23 13:14:51 -05:00
Brettflan
f8f3704cd4 Additional logging, with new conf.json settings to enable/disable logging of specific events:
"logFactionCreate": true,  - log faction creation
"logFactionDisband": true,  - log factions being disbanded, by command or by circumstance
"logFactionJoin": true,  - log player joining a faction
"logFactionKick": true,  - log player being kicked from a faction
"logFactionLeave": true,  - log player leaving a faction
"logLandClaims": true,  - log land being claimed (including safe zone and war zone)
"logLandUnclaims": true,  - log land being unclaimed (including safe zone and war zone)
"logMoneyTransactions": true,  - log money being deposited, withdrawn, and otherwise transferred in relation to faction banks

Also a fix for a potential NPE from players logging out and Spout appearance handler referencing them afterwards
2011-10-23 12:50:02 -05:00
Brettflan
46cae5a664 Updating help info a bit 2011-10-23 10:41:47 -05:00
Brettflan
83f690c9c5 Fix for unclaimall command not working if Economy was disabled 2011-10-23 10:04:36 -05:00
Brettflan
9710ec911e Further improved safe zone and war zone auto-rename process courtesy of Olof 2011-10-23 09:36:37 -05:00
Brettflan
2e34079a8e Fix for nonworking war zone and safe zone renaming 2011-10-23 09:11:37 -05:00
Brettflan
3e8faad156 Updated Spout features to improve consistency (of code, and of displayed information) 2011-10-23 09:03:28 -05:00
Brettflan
a9b1aad956 Existing safe zones and war zones are now renamed to remove the extra " " if they have it, mainly for better /f claim compatibility but also to comply with the modified default names 2011-10-23 08:12:09 -05:00
Olof Larsson
4f7fd6dd96 Possibly solved the faction creation issue. Changed the best id match to something more reasonable 2011-10-23 12:07:20 +02:00
Olof Larsson
32624e0339 Fixing a string format error and possibly solving a money rights issue 2011-10-23 02:43:25 +02:00
Olof Larsson
2ac96f4278 Added a permanent power command 2011-10-22 18:12:15 +02:00
Olof Larsson
7ebed6db9c Improving the faction tag matching 2011-10-22 17:42:13 +02:00
Olof Larsson
75cd9b5e18 Indentation fixes and comment cleanup 2011-10-22 17:18:44 +02:00
Olof Larsson
a78a4dff98 Managed to get rid of some commands. This needs to be rethought even more though. 2011-10-22 17:03:49 +02:00
Olof Larsson
45d6a6628a Claim command refactoring in progress. 2011-10-22 16:00:24 +02:00
Olof Larsson
5bf38ab0aa Adding match mode for id search to MassiveCraftCore and improving the faction argument readers. 2011-10-22 14:39:01 +02:00
Olof Larsson
e6d45a6aa2 Spout overlay support is missing for the new relation coloring. Otherwise done. 2011-10-21 20:08:54 +02:00
Olof Larsson
89b53a577a Missed one 2011-10-21 19:23:05 +02:00
Olof Larsson
46f5849f9f Moving over to the use of describeTo. 2011-10-21 19:20:33 +02:00
Olof Larsson
51161bbb55 Adding a couple of admin bypass commands. 2011-10-21 18:20:31 +02:00
Olof Larsson
f42fb8e8bf Removing some old code and try to read colors in the listeners. 2011-10-21 18:14:04 +02:00
Brettflan
38e128010c Fix for /f permanent and /f peaceful commands giving an NPE if run from console
Fix for rare NPE when Spout territory info update is run and affected player disconnects at precisely that moment
Clarified "cannot attack neutral faction" messages to indicate enemy status is needed
Updated Bukkit lib to correspond with CB 1337
2011-10-20 18:08:55 -05:00
Brettflan
e3284a5ee1 Fix for /f money command not being shown in help, and some other minor cleanup 2011-10-16 09:11:29 -05:00
Brettflan
0b04c95990 Merge branch 'master' of github.com:MassiveCraft/Factions 2011-10-16 08:26:09 -05:00
Brettflan
1c02b35193 Fix for "allianceChatFormat" not actually being used, updated default format for it 2011-10-16 08:25:56 -05:00
Olof Larsson
aad9819ae9 herp 2011-10-16 12:12:49 +02:00
Olof Larsson
3d33088f47 Merge branch 'master' of github.com:MassiveCraft/Factions 2011-10-16 11:58:21 +02:00
Brettflan
f5450886f1 Fix for Bukkit "unknown command" error when using console commands
handling for extra commas in "baseCommandAliases" in conf.json adding null values
2011-10-16 04:02:29 -05:00
Brettflan
61bd37c99b A bit of command help menu cleanup 2011-10-15 12:46:44 -05:00
Brettflan
3981ca4dde Added fence gates to default "territoryProtectedMaterials" list.
Existing users should run these commands to add it to an existing config, if desired:
/f config territoryProtectedMaterials FENCE_GATE
/f config territoryProtectedMaterialsWhenOffline FENCE_GATE

Also changed first letter of "canLeaveWithNegativePower" setting to lowercase, to fit with Java standards. If you had previously changed this setting to false, you'll need to do so again.
2011-10-15 12:46:09 -05:00
Olof Larsson
3de70b6db8 Changes to the default configuration 2011-10-14 23:45:39 +02:00
Olof Larsson
04074bc2b4 Minor changes 2011-10-14 15:40:03 +02:00
Olof Larsson
00f6f4ab05 Support for the CAPI plugin. 2011-10-14 15:03:23 +02:00
Olof Larsson
3967579884 Merge branch 'master' of github.com:MassiveCraft/Factions 2011-10-13 22:49:52 +02:00
Olof Larsson
618c5fceed Fixed a bug with the smoke effect for the faction home and one NPE. 2011-10-13 22:49:41 +02:00
Brettflan
358186764d Territory owner list was not being shown to people who aren't running the Spoutcraft client, when Spout was hooked... fixed 2011-10-13 14:30:47 -05:00
Brettflan
d7a2a88f95 Merge branch 'master' of github.com:MassiveCraft/Factions 2011-10-13 14:10:04 -05:00
Brettflan
1a38007d64 With Spout, the territory indicator now also has an ownership indicator below it (but only if the current territory has any owners set), and a larger centered territory notice below which goes away after a couple of seconds.
These effectively replace the related chat notices if enabled.
Also, updated libs.
2011-10-13 14:09:47 -05:00
Olof Larsson
88fe43d600 Using PEX 1.15 and only as superpermsmanager to allow for use of the parent permission. Also changed the handling of money on faction leave as last player. 2011-10-13 19:47:37 +02:00
Olof Larsson
98260c75de Bugfixes and awesome probably complete money commands. 2011-10-13 16:07:07 +02:00
Olof Larsson
0888e027ad Econ messages improved. All money commands is now under the money parent command. 2011-10-13 14:41:07 +02:00
Olof Larsson
0039370f05 Some effect for the f home teleport command 2011-10-13 12:17:23 +02:00
Brettflan
73ea2b75e0 Spout name-over-head modification seems to bug out for players viewing themselves, their name ends up over the head of some other mob in the world... so, it now skips doing that when viewer = viewed. Capes thankfully don't have the same problem, though a caped creeper might actually look pretty cool. 2011-10-13 04:23:00 -05:00
Brettflan
4ec086e4fa Fix for faction creation sometimes causing an NPE; hopefully a fix for the cause of the null value as well, from an ID clash in the entity collection of factions
Fix for disband command causing an NPE if run from the console
Additionally, disband command use is now logged
2011-10-13 04:10:29 -05:00
Brettflan
cace4aa955 Fix for faction not being disbanded properly when last player leaves
Fix for some NoClassDefFoundErrors when Register plugin isn't present and certain economy functions are used
2011-10-12 23:44:59 -05:00
Brettflan
329cef6465 Fix for messed up ownership protection handling in regards to ally/enemy status
In the process, removed the separate painting handling and made it use the standard block place/destroy checking routine, and otherwise cleaned up the related code a bit
2011-10-12 22:31:18 -05:00
Olof Larsson
f575ad6bc0 Factions are not removed properly... this needs to be sorted out before release 2011-10-12 21:54:38 +02:00
Olof Larsson
f25daa228a Some of the bugs are fixed. 2011-10-12 18:48:47 +02:00
Olof Larsson
2566edfd8c Merged some changes 2011-10-12 17:28:00 +02:00
Olof Larsson
b202acb685 Almost finished money refactoring 2011-10-12 17:25:01 +02:00
Brettflan
0326a6e938 Fixed ownerlist command (though not sure just why it was failing as written, I need to investigate further), working on restructuring and fixing ownership handling for block placement/destruction/interaction/usage. Will finish that up in the next day or two. 2011-10-11 20:14:59 -05:00
Olof Larsson
b0e31eb837 Supressed warnings in eclipse 2011-10-11 13:03:33 +02:00
Olof Larsson
6ab7e10d1f Merge branch 'master' of github.com:MassiveCraft/Factions 2011-10-11 13:01:12 +02:00
Olof Larsson
d07639e7ee Added a register event convenience method 2011-10-11 13:00:53 +02:00
Brettflan
1d8e06796f fix for /f config not working due to extra blank required parameter 2011-10-10 21:46:59 -05:00
Brettflan
f5190db257 Moved some Spout code out to a separate listener, for slightly better organization and more importantly to prevent NoClassDefFoundErrors on servers not running Spout
The text scale (size) can now be set for the territory display using conf.json setting "spoutTerritoryDisplaySize" (default 1.0), and "spoutTerritoryDisplayShowDescription" (default true) can be disabled to have only the faction tag/name displayed and not the description as well
2011-10-10 21:09:58 -05:00
Brettflan
7d85a478a8 Update to allow the project to compile in Netbeans, as per:
http://stackoverflow.com/questions/314572/bug-in-eclipse-compiler-or-in-javac
Also added license files, for building into JAR file
2011-10-10 20:48:23 -05:00
Olof Larsson
7b5124529a Added some extra blocked commands 2011-10-10 22:45:15 +02:00
Olof Larsson
80d132af70 Added forgotten type adapters. 2011-10-10 14:21:22 +02:00
Olof Larsson
1d44aa0c9c Renamed sendMessageParsed to msg 2011-10-10 13:40:24 +02:00
Olof Larsson
aceeea8b0e Fixed better color handling system 2011-10-10 13:31:25 +02:00
Olof Larsson
e402797c54 Removing the small ugly language file 2011-10-10 01:59:36 +02:00
Olof Larsson
27c45bf7f3 Fixed who command and detatched the argument reading a bit. 2011-10-10 01:43:21 +02:00
Olof Larsson
3cc7766fa7 Some bugs fixed. 2011-10-10 01:21:05 +02:00
Olof Larsson
a5c8e2de49 glerp 2011-10-09 21:57:43 +02:00
Olof Larsson
3cdd5764d3 derp 2011-10-09 20:10:19 +02:00
Olof Larsson
a0c8fd8d7d herp... 2011-10-09 18:35:39 +02:00
Olof Larsson
10f535e637 Halfway through refactoring of commands and permissions 2011-10-09 14:53:38 +02:00
Olof Larsson
227d54dc5f Converting the command structure 2011-10-08 23:22:02 +02:00
Olof Larsson
0ce9cce9d3 In progress: Using MassiveCraftCore and Allman indentation style and minor refactoring. 2011-10-08 22:03:44 +02:00
Olof Larsson
61998f459d Merge branch 'master' of github.com:MassiveCraft/Factions 2011-10-08 18:45:08 +02:00
Olof Larsson
ba5d7a3981 Working on permissions handling 2011-10-08 18:44:47 +02:00
Brettflan
77a7b2d85c New Spout feature, for Spoutcraft client users only: current territory info will now be permanently shown at top of screen, instead of being echoed out to chat as you move around
New conf.json setting "spoutTerritoryDisplayPosition" to set the screen position at which the current territory is shown. 0 = disabled, 1 = top left, 2 = top center, 3 (default) = top right.
Moved all integration code to separate package, ofr better code organization. Also moved EssentialsChat integration code out to separate file in there, allowing us to safely remove our copy IEssentialsChatListener.java file (which is otherwise needed to prevent a nasty NoClassDefFoundError).
2011-10-05 05:13:54 -05:00
Brettflan
d64ed374f1 missed from last commit 2011-10-05 02:14:07 -05:00
Brettflan
149257f154 When a player is kicked from their faction by the autoLeaveAfterDaysOfInactivity routine, the rest of their stored data is now dropped as well
When a player is banned from the server, they will now be kicked from their faction and have their stored data removed (only works on CB 1240 or newer)
2011-10-05 00:33:15 -05:00
Brettflan
7c249e1884 Added 3 new hookable functions to main Factions class, for use by other plugins:
boolean isPlayerAllowedToBuildHere(Player player, Location location)
boolean isPlayerAllowedToInteractWith(Player player, Block block)
boolean isPlayerAllowedToUseThisHere(Player player, Location location, Material material)
Also update Bukkit lib for new RB.
2011-10-04 22:46:11 -05:00
Brettflan
58d97076b8 New conf.json setting "territoryDenyEndermanBlocksWhenOffline" (default true). As might be expected, this will prevent Enderman from removing or placing blocks in the territory of a faction which has no members online. "territoryDenyEndermanBlocks" of course now only applies when a faction has members online. 2011-10-01 06:16:53 -05:00
Brettflan
ce0559cda9 Autoclaim mode is now disabled when a player is removed from a faction (whether leaving, being kicked, or whatever)
Also the new permission I missed in the last commit
2011-10-01 06:10:49 -05:00
Brettflan
feac58c6d6 Some tweaking of the faction bank code...
The new help page with bank related commands will now only be shown if banks are enabled and the Economy is enabled and hooked in.
Shortened a couple of command descriptions to fit on one line.
Made Deposit, Pay, and Withdraw commands additionally log to the server console/log.
When bank is given to person disbanding a faction, it now lets them know and logs it to the server log.
Added commands to commandDisable list in plugin.yml, along with "permanent" command which I'd missed adding before
Added new permission node factions.viewAnyFactionBalance (granted by default if using superperms), which is required to view the bank balance of other factions

For reference, about the faction bank addition as a whole...
New conf.json settings:
"bankEnabled": true,  - enable faction banks
"bankMembersCanWithdraw": false,  - have to be at least moderator to withdraw or pay money to another faction, unless this is set to true
"bankFactionPaysCosts": true,  - if true, payments for faction command costs are charged to faction bank
"bankFactionPaysLandCosts": true,  - if true, payments for land claims are charged to faction bank

New commands:
/f balance *<faction tag> - Shows the bank balance of a specified faction (if permission checks out), or the player's faction if none is specified
/f deposit <amount> - Deposit money into your faction's bank
/f pay <faction tag> <amount> - Pay money from your faction bank to another faction (requires moderator or admin status)
/f withdraw <amount> - Withdraw money from your faction's bank (requires moderator or admin status, unless "bankMembersCanWithdraw" is set to true)

New permission node:
factions.viewAnyFactionBalance - Allows the player to view the faction bank balance of all factions (default)
2011-10-01 05:59:09 -05:00
Brettflan
4cab42ec6e Merge branch 'banks' of git://github.com/eXeC64/Factions 2011-10-01 03:45:28 -05:00
Brettflan
3d62676168 Merge branch 'alliancechat' of git://github.com/eXeC64/Factions 2011-09-30 20:40:34 -05:00
Brettflan
9e73681125 Merge branch 'master' of github.com:MassiveCraft/Factions 2011-09-30 20:30:54 -05:00
Brettflan
9c1cd8c85a Added senderIsConsole boolean to FBaseCommand to simplify checking whether sender is console or player
Fix for /f disband indicating a random player if command came from console
Fix for factions being able to potentially set relations with safe zone or war zone (though it didn't do anything, of course)
2011-09-30 20:17:47 -05:00
Brettflan
3627996dc6 Updated SpoutAPI lib, added forgotten setPermanent permission to plugin.yml, added endermen and cave spiders and silverfish to no-spawn list for safe zones 2011-09-30 19:44:53 -05:00
Harry Jeffery
5eaf9c6835 Fixed autoclaim 2011-09-26 22:11:07 +01:00
Harry Jeffery
d718e8bddc Fixed error when no parameter given to f balance. 2011-09-26 17:18:37 +01:00
Harry Jeffery
9f8f125a92 f balance now accepts an optional <faction name> parameter. f who now shows balance of the faction. 2011-09-26 16:44:20 +01:00
Harry Jeffery
b1ee58a2b6 Fixed alliance chat still being purple. 2011-09-24 21:22:23 +01:00
Harry Jeffery
f4d56d4796 Alliance chat is now white, with ally-colour names. 2011-09-24 20:30:15 +01:00
Harry Jeffery
ea8310c695 Fixed bug where you could not create factions if they cost money. 2011-09-24 18:08:18 +01:00
Harry Jeffery
46abcadf93 Added alliance only chat mode. 2011-09-24 11:04:49 +01:00
Harry Jeffery
2b23f93fba Added faction banks. 2011-09-24 02:22:53 +01:00
Harry Jeffery
28f86548c8 Moderators can now affect themselves. 2011-09-24 02:21:24 +01:00
Brettflan
31937b6756 Bugfix release 1.5.1 2011-09-22 16:15:13 -05:00
Brettflan
60abb61cb9 Fix for "territoryEnemyProtectMaterials" and "territoryAllyProtectMaterials" not working correctly, and wrong protection message being sent to neutral players. Re-jiggered the related code a bit which handles such things based on enemy/ally/member/neutral status. 2011-09-22 16:12:35 -05:00
Brettflan
8e074fb5ac Release 1.5.0. 2011-09-22 06:55:23 -05:00
Brettflan
28e881d905 Players now lose power over time while they are offline. New conf.json setting "powerOfflineLossPerDay" (default 1.0) is how much power they lose; note that this power loss actually occurs frequently in very tiny amounts as time passes, not just once per day. New conf.json setting "powerOfflineLossLimit" (default 0.0) which will stop offline power loss once a player's power drops to the specified amount.
As an example, the default 1.0 power loss per day offline is roughly 0.0417 power loss per hour, 0.00695 per minute, and so forth.
2011-09-22 06:33:34 -05:00
Brettflan
fa21358a23 When players enable/disable admin bypass mode (/f bypass), it is now logged to the server console/log. 2011-09-22 06:23:25 -05:00
Brettflan
34e4afee2c Four new conf.json settings to prevent Endermen from removing or placing blocks.
"territoryDenyEndermanBlocks" (default true) for claimed territory.
"safeZoneDenyEndermanBlocks" (default true) for Safe Zones.
"warZoneDenyEndermanBlocks" (default true) for War Zones.
"wildernessDenyEndermanBlocks" (default false) for unclaimed wilderness areas.
2011-09-22 06:22:01 -05:00
Brettflan
492d983464 Support for iConomy 6 and other economy plugins added through Register support (with new conf.json setting "econRegisterEnabled", defaults to false); you will need to have the Register plugin on your server 2011-09-22 04:22:24 -05:00
Brettflan
2aa51a4781 Added some quick and dirty fix notes for people who get a specific chat formatting error 2011-09-16 01:50:25 -05:00
Brettflan
538b387f2f Fix for players being able to hurt members of their own faction while in their own land if the "enablePVPAgainstFactionlessInAttackersLand" option is enabled 2011-09-16 01:45:23 -05:00
Brettflan
443e083f23 Bugfix release 1.4.9: material protection (interaction with doors, chests, etc.) was being incorrectly triggered in wilderness, war zones, and safe zones 2011-09-15 09:12:24 -05:00
Brettflan
584d6f2eb9 Release 1.4.8 2011-09-15 00:00:47 -05:00
Brettflan
43fdc8ae14 New command to set a faction as permanent: /f permanent <faction tag> (requires new admin-level permission "factions.setPermanent"). Permanent factions will not be deleted if they have no members, and faction admins of such factions are allowed to leave without a replacement available. Faction admins are also unable to disband their own faction if it is Permanent; only those with the admin-level "factions.disband" permission can disband such a faction while it is set as Permanent. 2011-09-13 13:14:09 -05:00
Brettflan
249846d6ae New conf.json setting "newPlayerStartingFactionID" which can be used to have new players start out in a specific faction 2011-09-12 22:46:20 -05:00
Brettflan
877cfe914d Added note when player tries to use faction chat when it's disabled, moved disband command in the Help listing out of the server-admin-only section since it can now be used by faction admins on their own factions 2011-09-12 22:36:59 -05:00
Brett Flannigan
f40b241bc4 Merge pull request #35 from dotblank/chat
Add an option to disable faction only chat
2011-09-12 20:33:47 -07:00
Brettflan
632e2b2d1c Faction admins can now disband their own faction using /f disband; note that use of /f disband with another faction specified (/f disband <faction tag>) still requires the factions.disband permission, but the permission is not required for faction admins disbanding their own faction 2011-09-12 22:23:44 -05:00
Elias Woods
a5a0125195 Add an option to disable faction only chat 2011-09-10 00:26:15 -04:00
Brettflan
120039b07f minor cleanup and tweaks to WorldGuard code
added/updated libs
2011-09-08 06:24:55 -05:00
Brett Flannigan
f9cb5014dc Merge pull request #33 from spathizilla/master
Worldguard region checking
2011-09-08 04:00:38 -07:00
Brettflan
b5a1151178 fix for arrow damage not being properly detected and prevented (when needed) which was broken by Bukkit's recent deprecation of EntityDamageByProjectileEvent 2011-09-08 03:20:55 -05:00
Brettflan
c89db2c4d6 Fix for allies bypassing ownership if Ally options allowed them to build/interact/use in allied territory
Also consolidated some Conf lookups into new functions for Relations, to simplify and de-uglify the code a bit
2011-09-06 16:35:43 -05:00
Spathi
61e7667010 Spout always shows displaynames even with factionless players 2011-09-06 03:31:15 +01:00
Spathi
106944ba86 Fixing code indents 2011-08-31 02:14:46 +01:00
Spathi
c5f88fe716 Reworked entire chunk checking + code cleanup 2011-08-31 02:13:16 +01:00
Spathi
445d10afb7 Optional disabling of WG checks 2011-08-29 04:59:49 +01:00
Spathi
8be43164d2 Worldguard region checking 2011-08-29 04:50:45 +01:00
Andy "Spathi" F
a7cce7e428 Changed checkForRegions to be checkForRegionsInChunk 2011-08-29 15:06:34 +02:00
Andy "Spathi" F
5ea055a260 WorldGuard regions will block factions claiming them 2011-08-29 14:54:04 +02:00
Brettflan
55c9067e34 Factionless players now have nothing extra shown over their heads, instead of "Factionless"
Also added AuthMe to softdepend list to have it load first
2011-08-28 18:24:05 -05:00
Brettflan
c512f80866 Release 1.4.7: bugfix for exception triggered by blank cape URL 2011-08-23 21:49:49 -05:00
Brettflan
a87d4b1f71 Release 1.4.6 2011-08-23 18:52:53 -05:00
Brettflan
9fd79d5588 more hookable functions for use by other plugins, these for getting a list of all factions and for listing players in a specified faction 2011-08-23 17:34:40 -05:00
Brettflan
82db1624c9 Added new "Ally" related protection options to complement the "Enemy" ones (added thanks to donation from BeTrayed) 2011-08-23 17:12:17 -05:00
Brettflan
83d1e52be3 point default cape image URLs to GitHub 2011-08-23 12:49:32 -05:00
Brettflan
ef465dfcf4 New conf.json setting "worldsNoWildernessProtection", for worlds in which you don't want wilderness protections to apply 2011-08-23 00:37:31 -05:00
Brettflan
72bf1492c3 Merge branch 'master' of github.com:MassiveCraft/Factions 2011-08-22 23:49:08 -05:00
Brettflan
e970c02808 Capes were not applying properly to players when added at login (at least as seen by existing connected clients), so a slight delay has been added there to fix it 2011-08-22 23:48:18 -05:00
Brettflan
e573895d8a Added owner list display for faction members when moving between to/from claimed chunks which have owners set (code by Zidkon) 2011-08-22 23:31:37 -05:00
Brett Flannigan
ba1d3cee42 Merge pull request #30 from sp1ky/master
Allow Factions to defend their territory from Factionless PVP protected players
2011-08-22 13:16:09 -07:00
Brettflan
409f98e1e6 Changed ownership mapping from HashMap to ConcurrentHashMap to hopefully take care of reported ConcurrentModificicationException error; bugfix for faction admin not being able to bypass ownership if "ownedAreaModeratorsBypass" was set 2011-08-22 15:13:12 -05:00
Brettflan
697e0cf466 Added Spout features, with Spout client required for all: relation-colored faction tags over players' heads via option "spoutFactionTagsOverNames", player's faction title over their head via option "spoutFactionTitlesOverNames", and relation-colored capes shown on faction admins and/or moderators via "spoutFactionAdminCapes" and "spoutFactionModeratorCapes" (all new settings default to true)
When a faction is disbanded or has peaceful status added or removed, all online players are now notified
Added further debug output if an UnknownFormatConversionException is triggered during relational chat messages, to help track down cause
2011-08-19 20:36:23 -05:00
Brettflan
62f80a607b minor cleanup 2011-08-19 19:41:28 -05:00
sp1ky
b2ad4b43e4 Allow PVP vs. Factionless in attacker's faction territory 2011-08-12 16:08:11 +01:00
Brettflan
4e7aa893a3 Move economy plugin setup process over to the Econ class 2011-08-08 04:51:06 -05:00
Brettflan
b45224fff0 Added handling for potential null strings in "territoryNeutralDenyCommands" and "territoryEnemyDenyCommands" 2011-08-05 14:06:35 -05:00
Brettflan
ce7fa7fae4 Release 1.4.5 2011-08-05 04:57:21 -05:00
Brettflan
f29bba29d5 Added to default "territoryEnemyDenyCommands": /home, /sethome, and /spawn 2011-08-05 03:51:35 -05:00
Brettflan
68e1313776 New "peaceful" status for factions which can only be set by server admins/moderators. Members of peaceful factions cannot deal or receive PvP damage (unless in a war zone which has friendly fire enabled), cannot claim land from another faction and likewise can't have their land claimed, and cannot be considered as ally or enemy of any other faction. Faction admins and moderators of peaceful factions can enable/disable all explosions inside their faction's territory at will. The main purpose of this is to provide a way for more peaceful players who don't want to take part in faction wars (or just want to take a break from them) to still have fun on the server. It is also meant to allow groups of players to make protected buildings, monuments, grand constructions, and so forth without having to worry about another faction destroying them.
New conf.json settings:
"peacefulTerritoryDisablePVP" (default true) prevents PvP damage for anyone inside a peaceful faction's territory
"peacefulTerritoryDisableMonsters" (default false) provides protection against monsters spawning or attacking inside a peaceful faction's territory
"peacefulMembersDisablePowerLoss" (default true) which keeps members of peaceful factions from suffering power loss when they die.

New commands:
/f peaceful [faction tag] - toggle the indicated faction's "peaceful" status
/f noboom - enable/disable explosions inside your faction's territory; only available to faction admin and faction moderators for peaceful factions

New permission nodes:
factions.setPeaceful - ability to use the /f peaceful command (admins)
factions.peacefulExplosionToggle - ability to use /f noboom (everyone)
2011-08-05 03:50:47 -05:00
Brettflan
4ad9829fd4 Removing /f worldnoclaim and /f worldnopowerloss commands; they're redundant now that you can use /f config worldsnoclaim [world name] and /f config worldsnopowerloss [world name] respectively to set those options. Also removing factions.worldOptions permission node since it was only used for those commands. 2011-08-04 02:35:48 -05:00
Brettflan
523d3216c5 /f config [setting] [value] command now accepts setting names which are inside quotation marks, to prevent confusion since they're also in quotation marks in conf.json 2011-08-04 02:27:58 -05:00
Brettflan
e6ac1c0f98 Economy integration now works for EssentialsEco as well 2011-08-04 02:25:12 -05:00
Brettflan
100a1ffb1e improved command prevention from last commit to also monitor slashless Faction commands, for full coverage 2011-08-04 00:34:52 -05:00
Brettflan
699c22f655 New conf.json settings "territoryNeutralDenyCommands" and "territoryEnemyDenyCommands", which can have lists of commands added to them that will be denied while in the territory of a neutral or enemy faction. It is recommended you use /f config to add/remove such commands, for example /f config territoryEnemyDenyCommands spawn would prevent players from using /spawn in enemy territory. You can add the slash to the command string or not, it will work either way. If the used command starts with one of your denied commands, it will be prevented. For example, if you deny "time", both "/time night" and "/time day" will be prevented. However, if you deny "time n", /time night will be prevented but /time day won't. (thanks for some code contribution from Cal27) 2011-08-04 00:07:38 -05:00
Brettflan
7d3cdfdc20 removed need for "is it initialized" checks done on claimOwnership by simply making sure it's initialized with the class instance 2011-08-03 23:53:10 -05:00
Brettflan
2900bf372f changed findFactions() method to try matching faction tags before trying to match player names, instead of the other way around 2011-08-03 21:49:11 -05:00
Brettflan
f9d39271c0 Modified locutus' Pain feature so that all conf.json settings related to it default to false, so that the damage amount can be specified through "actionDeniedPainAmount" in conf.json, and so that DenyBuild doesn't override PainBuild but instead both will be used if both are enabled 2011-08-03 21:47:49 -05:00
Brett Flannigan
e02abf3380 Merge pull request #29 from bladedpenguin/master
PainBuild
2011-08-03 16:13:42 -07:00
Brettflan
a38267fe74 Error handling for user entering non-integer value for radius of safeclaim and warclaim, along with usage info 2011-08-03 15:38:54 -05:00
locutus
51a05a1e86 Added Territory Pain Protection
added options
ownedAreaPainBuild
territoryPainBuild
territoryPainBuildWhenOffline
territoryEnemyPainBuild
territoryEnemyPainBuildWhenOffline

Signed-off-by: locutus <bladedpenguin@gmail.com>
2011-08-03 02:29:51 -04:00
Brettflan
3bcfd5cff5 Release 1.4.4 2011-08-01 21:09:45 -05:00
Brettflan
92448ca4d2 New conf.json setting "worldsIgnorePvP" as a list of worlds which you don't want Factions to pay any attention to PvP in. No new command has been added to set this, since we now have the /f config command. So, to add/remove worlds, simply use /f config worldsIgnorePvP [YourWorldHere]. 2011-08-01 20:22:16 -05:00
Brettflan
f38651ca94 New conf.json settings "showNeutralFactionsOnMap" and "showEnemyFactionsOnMap" (both default to true) which, if disabled, will hide neutral and enemy factions on the faction map. However, if a player is standing inside territory claimed by a neutral or enemy faction, all of that faction's nearby claims will be shown on the faction map regardless. 2011-08-01 19:59:48 -05:00
Brettflan
ad2bb5f4d0 "disablePVPForFactionlessPlayers" is now overridden if "warZoneFriendlyFire" is enabled and the PvP is occurring inside a War Zone 2011-08-01 18:28:34 -05:00
Brettflan
2154b89005 Added basic support for iConomy, where most Factions commands can be made to cost (or give) money. For claiming land, there are some extra features. Each additional land claimed by default costs more than the last, with the multiplier being configurable. For example, the first claim might cost $30, the 2nd $45, the third $60, and so forth. When land is claimed from a weakened faction, there is a configurable bonus amount of money deducted from the cost of claiming the land, as an incentive; this number can be changed to a negative value to instead make it cost more to claim such land. When land is unclaimed, a configurable percentage of the cost of claiming the land can be refunded (defaults to 70% of the cost). The total value of a faction's claimed land is now shown in the info given by /f who [faction tag], along with the depreciated (refund) value. 2011-08-01 18:05:01 -05:00
Brettflan
c0676c3548 Fix for error that could occur when unclaiming land 2011-08-01 17:54:05 -05:00
Brettflan
3f6dc590d4 Release 1.4.3 2011-07-30 20:33:32 -05:00
Brettflan
508f953ce9 Faction admins can now mark already claimed areas as owned by specific faction members. Ownership can include multiple members. New command /f owner *[player name], to set/remove ownership. This command is only available to the faction admin and optionally the faction moderators. If no player name is specified, it will either set ownership to the player running the command (if no owner is currently set) or completely clear ownership of the territory. New command /f ownerlist, to view a list of owners for the current area. Only works inside your own faction's territory. New conf.json options "ownedAreasEnabled", "ownedAreasModeratorsCanSet", "ownedAreaModeratorsBypass", "ownedAreaDenyBuild", "ownedAreaProtectMaterials", and "ownedAreaDenyUseage" (all defaulting to true) to determine whether faction moderators can set or bypass ownership (faction admin always can), and what sort of protection these owned areas have against normal members of the faction (members other than the owner(s), faction admin, and probably faction moderators). New conf.json option "ownedAreasLimitPerFaction" to limit how many owned areas can be set. New permission node "factions.ownershipBypass" which allows a player to bypass ownership protection, but only within the person's own faction.
various little tweaks and improvements to other code
moderate speed boost to FLocation code
made commandDisable permissions work for any command alias of a command, instead of just the first one
2011-07-30 20:17:00 -05:00
Brettflan
63ab41f933 New conf.json option "safeZonePreventAllDamageToPlayers" (default false) which will prevent all damage to players while they're in a Safe Zone; note that attack damage from other players and monsters is still prevented regardless 2011-07-29 06:39:20 -05:00
Brettflan
e3cb829e6b If "autoLeaveAfterDaysOfInactivity" is set to 0.0 or a negative number, it's now effectively disabled
Renamed "disablePVPBetweenNeutralFaction" to "disablePVPBetweenNeutralFactions" because the grammar nazi in me calls for it
a couple of minor optimizations
finally, include gson.jar in the lib folder
2011-07-29 05:12:14 -05:00
Amrac
aaa56ec40a New setting in conf.json:
"disablePVPBetweenNeutralFaction":
false whether PvP damage will be
disabled between neutral
faction

Change-Id: I08eee177fbe69d1466a267e67ec3fd0389f83499
2011-07-28 16:04:11 +02:00
Olof Larsson
ee0fc3b47b space to tabs 2011-07-27 23:03:16 +02:00
Olof Larsson
6e9fd72612 Soon to be used JarLoader. 2011-07-27 22:56:45 +02:00
Brettflan
71922b7be3 Release 1.4.1 2011-07-25 13:58:31 -05:00
Brettflan
06f8082599 New conf.json option claimsRequireMinFactionMembers (defaults to 1, effectively disabled) which can be increased to prevent small (potentially one player) factions from claiming land until they have more members 2011-07-25 13:16:32 -05:00
Brettflan
080ea3363b New command /f power [player name] to check either your own power (if no name is specified) or another player's power (if a player name is specified). The ability for a player to view their own power is based on the standard factions.participate permission, but to check the power of other players, the new permission node factions.viewAnyPower needs to be granted. If you aren't using a Permissions plugin (instead defaulting to the built-in Bukkit permission system), the factions.viewAnyPower permission is granted by default. Otherwise, you'll need to configure your Permissions plugin to grant the new permission as needed. 2011-07-25 13:16:14 -05:00
Brettflan
b97eaf175e When adding relational colored faction tags to chat, Factions now pays better attention to whether the recipient list has been altered by another plugin 2011-07-24 17:38:58 -05:00
Brettflan
066415e752 "claimsMustBeConnected" land claim requirement is now ignored for players who have enabled bypass mode 2011-07-24 06:12:01 -05:00
Brettflan
bc56ff6651 new conf.json option "powerFactionMax" (default 0) for maximum power limit for all factions. If set to anything above 0, factions will have their power capped at this amount. As a result, any players adding power beyond the faction's limit will effectively just be adding a buffer of sorts. (feature added thanks to donation from Magesblood) 2011-07-24 06:10:48 -05:00
Brettflan
c3f57d5105 added a secondary low priority event listener for chat events, to try and make sure Factions is able to handle slashless commands and faction chat before other plugins do anything 2011-07-24 06:09:58 -05:00
Brettflan
c818ddff99 New command /f config [setting] [value] which can be used to change any conf.json setting. This is mainly for people who have trouble editing the file manually, for whatever reason. It even fixes any capitalization errors, and saves the conf.json file immediately after an option is changed. Can be run by player or from server console. Uses new permission node "factions.config". 2011-07-22 07:25:12 -05:00
Brettflan
5dc6dcd9ed Bugfix Release 1.4.0 2011-07-20 19:32:13 -05:00
Brettflan
bd5d7e185e Well, this is an odd and kludgy fix... only thing I can find that allows the integration to work correctly and not give an error whether EssentialsChat is present or not 2011-07-20 19:31:28 -05:00
Brettflan
b650387dbc Release 1.3.9 2011-07-20 16:24:11 -05:00
Brettflan
1e9c83decc New permission nodes to disable any command, factions.disableCommand.<command>, along with factions.disableCommand.none node which forcibly makes none disabled (for * permission users or similar); for <command>, you must use the first command alias given in the /f help information (for example, "show" instead of "who" for that particular command) 2011-07-20 16:22:54 -05:00
Brettflan
5b73ebc456 New conf.json option "homesTeleportIgnoreEnemiesIfInOwnTerritory" (default true). If disabled, players will no longer be able to teleport to their faction home while close to an enemy even if they are in their own territory 2011-07-20 15:45:36 -05:00
Brettflan
66bc427454 Added optional faction tag entry to /f sethome command to set the home of any faction, which is only allowed if the user has adminBypass permission 2011-07-20 15:42:51 -05:00
Brettflan
0b8a33e44a Added diodes to the default "territoryProtectedMaterials" and "territoryProtectedMaterialsWhenOffline" lists. 2011-07-20 14:59:10 -05:00
Brettflan
16053d0008 New conf.json option "claimsCanBeUnconnectedIfOwnedByOtherFaction" (default true) which, will allow claims to bypass the "claimsMustBeConnected" option if the attempted claim is vulnerable land controlled by another faction 2011-07-20 14:45:18 -05:00
Brettflan
5686c4db9d Piston movement is now prevented if it encroaches across into territories which have the relevant DenyBuild option set (whether faction territory, safe zone, or war zone). This covers piston extension if it pushes across unacceptable borders or even if the piston head itself would cross over, and also prevents sticky pistons from pulling blocks back across such borders.
There is also a new conf.json option "pistonProtectionThroughDenyBuild" (default true) which can be disabled to turn off piston protection. This option is available due to the (untested) potential that a world with many pistons constantly repeatedly firing could result in additional lag from these piston protection events
2011-07-20 12:22:03 -05:00
Brettflan
c79692940e Update to new integration method for EssentialsChat; needs up-to-date Essentials (2.5.1 or newer)
NOTE: if Essentials is too old, this error will occur at server startup (sadly impossible to catch or otherwise handle due to how Bukkit loads plugins):
java.lang.NoClassDefFoundError: com/earth2me/essentials/chat/IEssentialsChatListener
2011-07-20 08:48:14 -05:00
Olof Larsson
bf8e3b361d Releasing 1.3.8 2011-07-18 22:36:51 +02:00
Olof Larsson
fc1d6af824 forgot the namespace in plugins.yml 2011-07-18 22:16:19 +02:00
Olof Larsson
8aefae5679 changed namespace to com.massivecraft 2011-07-18 22:06:02 +02:00
Olof Larsson
10e79ede5a Removed old files and updated a readme link 2011-07-18 21:15:15 +02:00
Brettflan
19176ada2f Update to support newly available built-in Bukkit "superperms" permission system, though it will still use the Permissions plugin instead if that's available
Updated Bukkit JAR
Added LocalAreaChat plugin to the softdepend list so it's loaded first
2011-07-18 11:46:14 -05:00
Brettflan
2730fa1253 Release 1.3.7 2011-07-11 00:58:55 -05:00
Brettflan
14145f1782 New conf.json option "homesTeleportAllowedFromDifferentWorld" (defaults to true) which can be used to prevent people from teleporting to their faction home if in a different world from it 2011-07-09 07:21:47 -05:00
Brettflan
d69b278728 New options in conf.json which will now treat enemy factions differently: "territoryEnemyDenyBuild", "territoryEnemyDenyBuildWhenOffline","territoryEnemyDenyUseage", and "territoryEnemyProtectMaterials" (all default to true). If someone in an enemy faction tries any of those (builsing/destroying, using certain inventory items, or interacting with certain blocks such as doors), these new values will be checked; otherwise, for neutral and allied factions the existing values will be used.
Also slightly simplified the code used for checking relations.
2011-07-09 01:36:18 -05:00
Brettflan
787e6b867a Made /f kick command work on any player in any faction, if the person using the command has the admin-level "disband" permission 2011-07-08 22:06:55 -05:00
Brettflan
232ae5dce1 Added "BURNING_FURNACE" to default "territoryProtectedMaterials" and "territoryProtectedMaterialsWhenOffline" lists, since lit furnaces otherwise are not protected 2011-07-08 21:28:53 -05:00
Brettflan
839a03d8d1 Fix for /f autosafe and /f autowar commands not working properly if the user was not in a faction 2011-07-04 08:36:30 -05:00
Brettflan
a90e87ea24 Release 1.3.6 2011-07-03 15:26:55 -05:00
Brettflan
bfcfbe4cc8 Update for new Bukkit version; fix for movement between different territory claims not always reporting the correct territory owner, which appears to be caused by event.getTo() for PlayerMoveEvent currently (as of RB 953) not always giving the correct location 2011-07-03 15:25:50 -05:00
Brettflan
7f67ca0cd6 Release 1.3.5 (bugfix release) 2011-06-30 11:51:30 -05:00
Brettflan
dba406e52b Fix for NPE on /f who command by in-game player 2011-06-30 11:50:54 -05:00
Brettflan
a6d2a292aa Release 1.3.4 (quick bugfix release) 2011-06-30 09:52:53 -05:00
Brettflan
dc96767dff Fix for NPE on player respawn when faction home isn't set 2011-06-30 09:51:14 -05:00
Brettflan
80bead2ad6 Release 1.3.3 2011-06-30 08:30:49 -05:00
Brettflan
94d1dc210c When you have the "claimsMustBeConnected" option enabled, it now works on a world-by-world basis, so if you have claims in one world you can still make claims in other worlds 2011-06-30 06:13:47 -05:00
Brettflan
8f1606beba /f disband, /f list, and /f who <tag> commands can now be used from the server console; /f list now shows "Factionless" instead of "Wilderness" for factioness players; fix for some potential NPEs 2011-06-30 05:56:02 -05:00
Brettflan
24e85e0e77 Faction homes are now un-set if the territory they are set in is lost (unclaimed, or claimed by another faction), but only when someone tries to /f home or dies and would normally respawn there 2011-06-30 05:17:34 -05:00
Brettflan
8f9de1d2d5 New conf.json option "homesRespawnFromNoPowerLossWorlds" (defaults to true) to go with Oli's recent commit, so server owners have an option whether or not players should respawn to faction homes when they die in "worldsNoPowerLoss" worlds 2011-06-30 05:15:16 -05:00
Brettflan
86112380da fix for StringIndexOutOfBoundsException caused by overlong string passed to titleize(String str) 2011-06-30 01:46:12 -05:00
Oli
8ff84019ee Made faction home respawning obey the 'worldsNoPowerLoss' config 2011-06-29 14:45:51 +01:00
Brettflan
69d1427552 after testing, found that these changes cause encoding problems on some setups when the JSON files are read; tried for a bit to find a solution, but gave up since I was having to test on my live server (test VM server was working fine)
so, reverting for now
2011-06-28 22:43:28 -05:00
Brettflan
a8c84c5d6d tweaked hook functions a bit more, de-crapped server log messages for faction chat 2011-06-28 20:00:08 -05:00
Brettflan
24362d38e9 moving additional JAR contents into src folder, adding my complete NetBeans project files so others have an easier time working with the source 2011-06-28 18:49:42 -05:00
Brettflan
b66b102333 New conf.json option "homesTeleportCommandEnabled" which can be used to disable the /f home command, while possibly leaving faction homes enabled for the "homesTeleportToOnDeath" functionality 2011-06-28 18:29:14 -05:00
Brettflan
a9619a73c0 some changes to the file reading routine, to speed it up and also to hopefully be more tolerant of user changes to file encoding (intentional or more likely unintentional) from the default UTF-8 encoding 2011-06-28 18:27:35 -05:00
Brettflan
c80f6d803c one more hookable utility function for other plugins to use, to determine the support version for the hook functions (will increment whenever new hooks are added) 2011-06-28 18:25:00 -05:00
Brettflan
f79831d3d6 added another simplified function for chat plugins to hook, ShouldLetFactionsHandleThisChat(PlayerChatEvent event) to see if chat event is a special case which should be left alone for Factions to handle (Faction Chat enabled player, or factions f command without slash used) 2011-06-27 12:25:02 -05:00
Brettflan
a7676429fe removed "preloadChatPlugins" option and related code, since that method could cause problems and since we've switched to using softdepend in the plugin.yml for preloading plugins 2011-06-27 03:06:09 -05:00
Brettflan
071e8b7b6b further improved hookable functions for use by other plugins, added softdepends for appropriate chat plugins 2011-06-22 20:12:37 -05:00
Brettflan
094486676a Added conf.json option "noPVPDamageToOthersForXSecondsAfterLogin" (defaults to 3 seconds) which keeps players from being able to do PvP damage for a few seconds after logging in (to counteract the exploitable 3-second PvP protection given to players when they log in); Fix for "claimsMustBeConnected" bug which prevented factions from making their initial first claim 2011-06-22 20:10:42 -05:00
Brettflan
6035b204dc updating built-in GSON to 1.7.1 release 2011-06-22 18:40:56 -05:00
Brettflan
55dd858be9 A bit of cleanup and odds and ends, adding missing @Override annotations and such 2011-06-21 00:38:31 -05:00
Brettflan
60227b6dc4 Added option "considerFactionsReallyOfflineAfterXMinutes" (default 0.0, immediately) which makes all "Offline" options still consider the faction as having members online until X minutes after the last one logs off 2011-06-21 00:20:36 -05:00
Brettflan
8880d503e2 added option "claimsMustBeConnected" (defaults to false) which requires all faction claims beyond the first to be connected to each other; support for "{FACTION_TITLE}" in chat messages 2011-06-20 21:15:41 -05:00
Brettflan
56cbf54c98 Added options to require faction homes to be set only inside the faction's own territory ("homesMustBeInClaimedTerritory", default is true) and to optionally prevent teleporting to the faction home if the player is in enemy territory ("homesTeleportAllowedFromEnemyTerritory", default is true thus not prevented)
Made commands which reference player names (like /f admin <name>) allow for partial name matches
Optimized a couple of things, and updated help text to indicate /f unclaim works for safe/war zones
2011-06-19 03:56:21 -05:00
Brettflan
768f96bf9b added option "disablePVPForFactionlessPlayers" to disable PvP damage to/from players who are not in a faction 2011-06-19 03:49:46 -05:00
Brettflan
e886cef9aa Fix for DenyUsage checks in safe zones and war zones not being handled properly 2011-06-16 02:37:05 -05:00
Brettflan
db0e89fb11 Disband command got missed for being added to help pages 2011-06-16 02:34:56 -05:00
Brettflan
4da15abb06 fix for "No Faction" player count always returning 0 2011-06-16 02:33:41 -05:00
Brettflan
cddaa73948 Added another hook, handleFactionTagExternally, for chat plugins to indicate they're handling faction tag insertion into chat 2011-06-11 19:02:57 -05:00
Brettflan
6c37f4cbe1 added functions to main class for other plugins to potentially hook into, targeted at chat plugins at the moment: isPlayerFactionChatting to see if player has faction chat enabled, and getPlayerFactionTag and getPlayerFactionTagRelation to get the player's uncolored or relation-colored faction tag 2011-06-11 17:29:24 -05:00
Brettflan
3f0d330d6e fix for /f disband causing NPE if you provided a bad (nonexistent) faction tag 2011-06-11 17:01:06 -05:00
Brettflan
4cc13707cc Added further "offline" options for preventing the 3 explosion types in faction territory; also fix for safe zone and war zone autoclaim bug 2011-06-10 18:47:39 -05:00
Brettflan
e023e9de91 a few minor speed enhancements 2011-06-10 18:45:11 -05:00
Brettflan
1af166b1c2 fix for /f save causing NPE when run from console 2011-06-10 14:26:30 -05:00
Brettflan
097b555466 new autoclaim commands for faction claims, safe zone claims, and war zone claims, which claim land as you walk around 2011-06-10 14:26:12 -05:00
Brettflan
2e1d7da50f /f lock command can now be used through console; fix for /f reload command causing NPE if run from console 2011-06-10 14:22:29 -05:00
Brettflan
f9de4171d4 special case added to block placement check, so flint&steel isn't prevented due to placing fire (as Bukkit sees it) 2011-06-10 14:16:14 -05:00
Brettflan
7ab0d700cc Added new "territoryDenyBuildWhenOffline" option to go with other two new offline prevention options by thomastanck; slight speed improvement for offline check 2011-06-10 14:14:02 -05:00
Brettflan
cbd0ee42ba New conf.json option "warZoneFriendlyFire", defaults to disabled; if enabled, allies and fellow faction members can hurt each other in war zones 2011-06-10 07:38:14 -05:00
Brettflan
19b1ceabdd changed /f home enemy distance check to use simpler box shaped detection area instead of diamond shaped 2011-06-08 20:33:12 -05:00
Brettflan
85fd5eb04d Fix for options which disable wilderness explosions (TNT, creepers, fireballs) not actually disabling them; player->player damage is now also prevented if attacker is in a safe zone and defender is not (attacking from safety that way was exploity) 2011-06-08 16:22:19 -05:00
Brettflan
d0a405ff95 reload and save commands now don't require it to be a player executing them 2011-06-08 16:19:02 -05:00
Brettflan
3b5471d465 Merge branch 'master' of https://github.com/oloflarsson/Factions 2011-06-05 22:04:08 -05:00
Brettflan
7ef01ef84c don't add tag padding if player has no faction 2011-06-05 22:03:58 -05:00
Thomas Tan
a1e89457ff Change-Id: Ibaa6d8c7eba4fe616faa5e78d946c9495d252fde 2011-06-04 18:14:39 +08:00
Thomas Tan
999be49f5c Forgot offline block protection. Added now.
Change-Id: Ib4e8866e5da655e01bdbb64f61d2130c664bc241
2011-06-04 17:59:35 +08:00
Thomas Tan
5ddc24f855 Added offline protection using the new configs
Change-Id: I93c5122bce09a3bd760fcd18d4dd0801a3548af9
2011-06-04 17:36:28 +08:00
Thomas Tan
24a4da6d2e Added configs for protection for offline factions
Change-Id: I2351b74144195d7b068b65b218732fdbd0fc3bef
2011-06-04 17:36:03 +08:00
Thomas Tan
d793b718aa Removed unused import and unused private variable "lock"
Change-Id: I6356e9cbcdfef78639d2571c39ae6c9ff9415bab
2011-06-04 16:59:11 +08:00
Brettflan
b1b96a4c1b Bugfix release 1.2.2: Preload of EssentialsChat had problems if Essentials core wasn't loaded yet; added Essentials to preload list 2011-06-03 19:17:34 -05:00
Brettflan
0859854af0 New chat tag placement options to have it replace a specified string (such as the default "{FACTION}"), put the tag before or after a specified string (such as "<" or ">"), and whether to pad the front or back of the tag with an extra " ". 2011-06-03 13:06:41 -05:00
Brettflan
be177902fd People hit in a safe zone no longer get spammed with "PlayerX tried to hurt you" messages; only the idiot trying to hit someone else in a safe zone gets spammed. 2011-06-03 13:02:24 -05:00
Brettflan
35e17f3ec5 ability to specify a single file with /f reload (i.e. /f reload conf), so you don't have to reload all 4 of them
also a trivial typo fix
2011-06-03 13:00:16 -05:00
Brettflan
6f0dcf4b29 people with bypass permission can build in wilderness regardless of wilderness settings 2011-06-01 23:01:51 -05:00
Brettflan
85d055739d Added in options to protect all wilderness (unclaimed) areas, in case that's your sort of thing. Also lowered default "territoryShieldFactor" from 0.5 to 0.3, since it seemed a bit overpowered at 0.5. 2011-06-01 18:32:09 -05:00
Brettflan
3a3b09da61 New "territoryDenyBuild" and "territoryDenyUseage" options, so block protection and interaction prevention can be disabled on faction claimed land. Also added trap doors to the default "territoryProtectedMaterials" list. 2011-06-01 18:13:56 -05:00
Brettflan
996acdc4fb Added powerRegenOffline option for those who for whatever reason want player power to regenerate even when they are offline; increased default power loss from death from 2 to 4 2011-06-01 06:54:00 -05:00
Brettflan
29469b0d27 Preload some chat plugins before Factions to prevent conflicts 2011-06-01 06:39:25 -05:00
Brettflan
f9cffebe27 quick typo fix, "chainged"->"changed" (thanks Deathfromance) 2011-05-29 17:19:46 -05:00
Brettflan
654e3b159b New option to disallow players from leaving, joining, or being kicked from a faction while they have a negative power level - code by sp1ky, adapted from a pull request 2011-05-29 16:41:50 -05:00
Brettflan
b490c5f196 Laundry list of changes for 1.2.0 release:
/f map now has a nifty faction name key  (LexManos)
There are now War Zones; these work similar to Safe Zones, except PvP is enabled and monsters are not blocked  (Brettflan)
Players now only regenerate power while actually online  (Brettflan)
New command available to prevent power loss in specific worlds  (Brettflan)
New command available to prevent faction land claims in specific worlds (doesn't affect safezone and warzone claims)  (Brettflan)
New command to unclaim all safezone areas  (Brettflan)
Players are now prevented from using /f home if an enemy is nearby, and the players isn't in a safezone or their own faction territory  (Brettflan)
New option to make membership default to closed for newly created factions  (Brettflan)
When an admin has bypass mode enabled (/f bypass), they can now unclaim any faction land they're standing on  (Brettflan)
2011-05-29 16:28:29 -05:00
Brettflan
edd36519e4 Should be a proper fix for "Could not pass event ENTITY_DAMAGE to Factions" exception caused by NPC mods which tie into Player entities 2011-05-12 00:52:17 -05:00
Andy Buchholz
a709e9c7b3 * commit forgotten files 2011-05-10 19:18:35 +02:00
Andy Buchholz
516a98c970 * added command to disband a faction (/f disband <tag>) 2011-05-08 17:44:00 +02:00
Andy Buchholz
bffa9df8f7 * added lock switch to all write actions
* added saveall command to save everything to disk
* added reload command to reload everything from disk
2011-05-08 17:16:43 +02:00
Brettflan
a02fcca54d Updates in preparation for 1.1.7 release:
* /f map has been updated to fit inside the new Bukkit line-width limits (39 tiles wide instead of 49)
* Players who aren't currently in a faction should no longer get "Person left your faction" messages when others join a faction
* Attempt at simple workaround for error related to NPCs from Citizens plugin
* Placement and removal of paintings is now prevented if you're in another faction's territory
2011-04-28 15:45:43 -05:00
Brettflan
8a4463b599 Added check to make sure chatTagInsertIndex is valid, to prevent triggering an exception, commented out a bit of debug output 2011-04-25 20:29:47 -05:00
Olof Larsson
3820b53d29 Added a radius to safe claim 2011-04-08 21:01:46 +02:00
Olof Larsson
e4d798e9d6 New command unclaim all 2011-04-08 16:22:00 +02:00
Olof Larsson
6e00b16f38 Changed name for no faction to wilderness 2011-04-08 16:09:08 +02:00
Olof Larsson
724ce03a40 Removed Help plugin support as that plugin is not updated. Minor bugfixes and refactoring 2011-04-08 16:03:04 +02:00
Olof Larsson
443fac354a Fixed the package structure 2011-04-08 15:51:07 +02:00
Brettflan
26c708b65e changes AdminBypass permission to enable new "bypass" command which toggles admin bypass mode on or off, defaults to off
added tracking for the SaveTask() and shutdown of it when the plugin is disabled
2011-04-06 05:04:57 -05:00
Brettflan
542ad4a6a0 Widened the exception catching nets for loading and saving all data (IOException -> Exception, etc.), so loading and saving problems don't wipe out unrelated plugin data 2011-04-06 04:08:08 -05:00
Brettflan
12bc5d9d74 Add in exception catching to MyLocationTypeAdapter, seems to finally be handling all problems without crash
Added 1.1.5b release with this fix
2011-04-04 12:26:48 -05:00
Brettflan
204f67c43b fix for left-clicking wooden doors not being prevented; as a minor side-effect, left-clicking on other blocks in the territoryProtectedMaterials list pops up the "you can't use that" message
Releasing 1.1.5 for this quick fix
2011-04-04 08:34:32 -05:00
Brettflan
7ffc4962b8 Fix for null faction home location, added "factions.adminBypass" permission which will allow players with that permission to bypass the building/destruction and usage limitations inside faction territory. 2011-04-04 07:16:53 -05:00
Brettflan
5fa0103c9e Subversion seems to handle merges better than Git, but that's not saying much :-P
Committed change not exactly related, just a casualty of the should-have-been-a-simple-merge-and-not-conflicting craziness
2011-04-04 06:47:18 -05:00
Brettflan
2ec8437c35 Merge branch 'master' of https://github.com/oloflarsson/Factions 2011-04-04 06:37:15 -05:00
Brettflan
b912b49289 New boolean config options territoryBlockTNT (default false), safeZoneDenyBuild (default true), safeZoneDenyUseage (default true), safeZoneBlockTNT (default true). territoryBlockTNT prevents TNT explosions inside faction territory, which defaults to false (same as before). It prevents TNT cannons from being a viable tactic, and I think for most people it would be an undesirable option. safeZoneBlockTNT prevents TNT explosions inside safe zone areas, which defaults to true (new behavior). I think most server operators would prefer safe zones to be safe from TNT, from TNT cannons or otherwise. safeZoneDenyBuild prevents players from building inside safe zone areas, which defaults to true (same as before). This option is added for server admins who, for whatever reason, want to let their players build and break inside safe zone areas. safeZoneDenyUseage prevents players from using items in the territoryDenyUseageMaterials list, which defaults to true (new behavior). This will (with the default list) prevent players from dumping/using buckets inside safe zone areas. 2011-04-04 06:33:40 -05:00
Olof Larsson
c3c69a30dd Warning fixes 2011-03-31 15:13:02 +02:00
Brettflan
e3ad9cf509 strip all color tags from faction-tagged chat messages before sending them to console/log, to de-cruft them 2011-03-30 05:11:06 -05:00
Brettflan
bddcc798ce For some reason onPlayerInteract() doesn't always detect bucket usage if it's about 2-3 blocks away from you, so I added monitoring of PLAYER_BUCKET_EMPTY and PLAYER_BUCKET_FILL events which seem to always fire correctly without fail 2011-03-30 04:23:20 -05:00
Brettflan
8970de026b don't try sending a message to a player who isn't online; NPEs suck
removed instaDestroyMaterials since it is no longer needed
2011-03-30 04:20:24 -05:00
Brettflan
e429bc8020 Initial update for RB 600... bucket use still not prevented properly yet though, needs a bit more work before release 2011-03-29 23:37:32 -05:00
Brettflan
ebde7bcc1a attempt to handle an NPE someone has been getting in MyLocationTypeAdapter.serialize() 2011-03-28 14:38:07 -05:00
Brettflan
dc7935ee3e Added ability to load old pre-1.1 data files (board, factions, followers) if they exist and new files don't.
Also made 1.1.2 release with this update.
2011-03-26 09:01:48 -05:00
Olof Larsson
b2a76e2b24 Added some missing instaDestroyItems 2011-03-24 19:05:45 +01:00
Olof Larsson
d71c0e86d7 bugfix - admins could not place signs etc in safezones 2011-03-24 15:49:33 +01:00
Olof Larsson
48ede9d7bf Removed autoLeaveImmunity due to missdesign in the Permissions plugin. 2011-03-24 00:26:01 +01:00
Olof Larsson
b0f09db054 Safe zones and faction homes :D :D 2011-03-23 17:39:56 +01:00
Olof Larsson
9d4aaeae6c reworked the board 2011-03-23 12:45:21 +01:00
Olof Larsson
bee15556c9 Some case insensitivity fixes 2011-03-23 12:00:38 +01:00
Olof Larsson
8bab4540cd Better save system 2011-03-22 22:31:04 +01:00
Olof Larsson
39a02f0fd4 New auto leave on anactivity feature. 2011-03-22 20:36:33 +01:00
Olof Larsson
27d414ffc4 Fewer runtime errors... 2011-03-22 19:25:11 +01:00
Olof Larsson
1c062c9c79 Now it compiles. Time to fix runtime errors... 2011-03-22 18:48:09 +01:00
Olof Larsson
4e964ba194 Fewer and fewer errors... 2011-03-22 17:20:21 +01:00
Olof Larsson
d7c1d0fce3 More refactoring... the commands are refactored now :) 2011-03-22 15:45:41 +01:00
Olof Larsson
0b96a821ce More refactoring 2011-03-19 13:00:03 +01:00
Olof Larsson
1da8b6b30a Started the refactoring 2011-03-18 17:33:23 +01:00
Brettflan
2f4e487cb6 cutting down of crops and sugar cane are now prevented if you are in another faction's territory 2011-03-17 18:04:45 -05:00
Brettflan
d5308bc75d Added config option territoryBlockFireballs, defaults to false; if enabled, prevents destruction of blocks by Ghast fireballs inside faction territory... note that this only works in CB build 557 and higher, where fireball detection was added 2011-03-17 18:02:29 -05:00
Brettflan
45162a3444 minor spelling and grammar fixes 2011-03-10 22:14:39 -06:00
Brettflan
2ca8e4b9af Fix for player right-clicking in the air causing an NPE due to target block being null 2011-03-09 18:21:17 -06:00
Brettflan
5ab5ef6724 check for special block destruction cases which previously were incorrectly allowed in other faction's territory: torch, redstone torch (on & off), repeater (on & off), redstonewire, sapling
Paintings still can't be prevented from destruction, sadly
2011-03-08 06:42:48 -06:00
Brettflan
a7fede9c13 Now preventing placement/use of these items inside another faction's territory: redstone wire, signs, flint&steel, beds (not detected properly by Bukkit yet), buckets (empty, water, and lava), repeaters 2011-03-08 06:06:52 -06:00
Brettflan
2016f232ef Fix for enemy attacks healing people in their own territory, instead of correctly just giving reduced damage.
The problem is that Bukkit reports the amount of damage before armor calculations are made, so the actual damage will be less if the target is wearing armor.
So, I switched it to using setDamage instead of healing the target.
2011-03-06 21:13:27 -06:00
Brettflan
1d26e18916 Added option ("territoryBlockCreepers") to prevent creepers from destroying blocks if they explode inside faction owned territory, which defaults to disabled; if enabled, it prevents griefing by way of luring creepers into a faction's territory
note that creepers will still explode and hurt nearby players and mobs, they just won't destroy blocks
2011-03-06 14:13:48 -06:00
Olof Larsson
429e86fd4b Beta6. Supports CB493 2011-03-05 11:39:14 +01:00
Olof Larsson
afde3e188b Type safety and warning fix. 2011-03-05 10:53:08 +01:00
Brettflan
6c971742d0 comment out debug messages shown on plugin startup, was a bit too spammy 2011-03-04 21:40:49 -06:00
Brettflan
74a823be88 Added pagination and sorting of faction list, sorted primarily by which faction has the most users online and secondarily by how many total members the faction has 2011-03-04 21:40:40 -06:00
Brettflan
986461a098 streamline rebased Gson into source; rebase was done to prevent conflict with other plugins (like upcoming WorldGuard release) which also use Gson; Bukkit doesn't yet handle such conflicts properly 2011-03-04 10:48:56 -06:00
Brettflan
df75afef08 handle a few random errors that popped up in my server log 2011-03-04 10:48:43 -06:00
Brettflan
775f3a00d5 Update for latest CraftBukkit 2011-03-04 10:48:32 -06:00
Olof Larsson
9404eb77ff Fixed block break protection. Removed grief info messages for now 2011-02-26 10:33:31 +01:00
Olof Larsson
d3c5868ca4 beta4 2011-02-26 09:33:25 +01:00
Olof Larsson
478116c418 A color format fix and clas not found def fix 2011-02-13 17:02:51 +01:00
Olof Larsson
fb1305f97a Default faction tag rules are now more permissive 2011-02-13 16:37:21 +01:00
Olof Larsson
09bc3df841 Better way to remove faction from boards implemented. Also prevents orphaned foreign key errors. 2011-02-13 15:18:23 +01:00
Olof Larsson
19e0628f27 Multiworld support 2011-02-13 11:18:08 +01:00
Olof Larsson
4316469ec1 Arrow attacks are now included in the friendly fire filter 2011-02-13 09:33:42 +01:00
Olof Larsson
14ad1299b2 Faction chat is now something you turn on and off 2011-02-13 09:08:20 +01:00
Olof Larsson
156e939d18 C:/Program Files (x86)/Git/f show command now displays relations to other factions. 2011-02-12 18:52:45 +01:00
Olof Larsson
88ff88103e Better faction listing 2011-02-12 18:19:51 +01:00
Olof Larsson
da89ff4ecd Better chat integration with other plugins. In fact the whole chat system has been reprogrammed. Fix ascii compass typo. Fix claim at the border of enemy territory bug. New faction chat. Some refactoring 2011-02-12 18:05:05 +01:00
Olof Larsson
46a814a11e This would be v1.0 beta2. Just live testing on mcteam.org left to do. 2011-02-07 21:42:14 +01:00
Olof Larsson
eeb9061d26 First relase: 1.0 beta1 2011-02-06 17:45:48 +01:00
Olof Larsson
db03d466ba A deinvite bugfix and some color formating misses 2011-02-06 16:07:10 +01:00
Olof Larsson
bcd52a1fbd Fixed version number and version command. Updated folder structure for easier working with eclipse 2011-02-06 15:30:41 +01:00
Olof Larsson
b3ac8f8614 what? 2011-02-06 13:36:11 +01:00