Commit Graph

586 Commits

Author SHA1 Message Date
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