eueln
25696f32aa
Refactor scoreboard usage
...
In preparation for team colors, we need to unify scoreboard usage into a
single scoreboard per player.
Rather than creating a new scoreboard for each desired sidebar
objective, we provide an interface FSidebarProvider that allows
implementation-agnostic retrieval of the title and lines of the desired
sidebar, along with appropriate methods in the new implementation of
FScoreboard.
The new FScoreboard implementation manages the currently-visible
sidebar, with methods to set default (non-timed, with update interval)
and temporary (timed, no update interval) sidebars.
Temporary sidebars are replaced with the default sidebar upon
expiration.
2014-10-30 23:26:04 -04:00
drtshock
bed6fe0741
Add faction announcements to send to all players and show to players when they login if they were not online when it was first sent as requested in issue #82 .
2014-10-18 03:54:45 -05:00
drtshock
e290ac0320
Add new permissions to plugin.yml and permission kits. Set scoreboards to enabled per player by default.
2014-10-16 13:35:21 -05:00
drtshock
e20995464e
Toggling of scoreboards now affects the default board.
2014-10-15 20:58:37 -05:00
drtshock
aee7092b09
Add a scoreboard that can be given to people by default when they join as specified in issue #79 .
...
This was hacked together as I wanted more functionality. Should probably make this prettier and better later.
2014-10-15 19:56:02 -05:00
drtshock
525d31c2b2
Be friendly to other plugins that show scoreboards. Adds #74 .
2014-10-15 16:21:27 -05:00
drtshock
4f3310d88f
Reload the config.yml on /f reload.
2014-10-15 15:45:20 -05:00
drtshock
2fc17c62b5
Properly persist scoreboard toggles. Fixes issue #61
2014-10-15 15:29:04 -05:00
blha303
9baf297ff7
Add /f status command, closes #70
2014-10-15 12:30:03 -05:00
drtshock
a170a0f4ad
/f showinvites for ability to see pending invites for current faction. Adds feature in ticket #76
2014-10-14 13:30:05 -05:00
drtshock
bfc904332a
Fix spelling error.
2014-10-13 16:25:32 -05:00
drtshock
04fd18f17a
Add tooltips and commands for f invite command as specified in issue #73 .
2014-10-13 14:10:18 -05:00
drtshock
272c35cda6
Add cooldown for auto showing f map to players. Fixes issue #64 .
2014-10-09 11:04:11 -05:00
drtshock
49e69b74c8
Add radiable as an option for the scoreboard.
2014-10-06 09:48:28 -05:00
Ihaveaporpoise
8e248c9ea7
Make reload command only call configuration file. Fixes issue #59
2014-10-05 00:28:00 -05:00
Ihaveaporpoise
eceb10c185
Prevent players in peaceful factions from damaging with harmful potions. Fixes issue #50 .
2014-09-30 19:11:51 -05:00
drtshock
bf6a3c2a4b
Version U0.1.5
2014-09-25 13:44:35 -05:00
drtshock
39e0380570
Add patch for interact event. Fixes issue #53 . Thanks @swifteh
2014-09-25 13:39:22 -05:00
drtshock
b444b25bc1
Add config toggle for Info scoreboard.
2014-09-01 14:56:32 -05:00
VirtualByte
09d6102798
Fixed economy issues
2014-09-01 13:06:35 -05:00
drtshock
0f88e8535d
Limit length of f show messages. Fixes issue #44 .
...
Clients could crash if the messages were too long so we'll limit it here. Thanks to @mccore for the method here.
2014-08-26 13:05:54 -05:00
drtshock
ddf054330a
First implementation of scoreboards.
...
Boards can be toggled with /f sb. Toggles are persistent in a yml file.
Also fix some small spelling and format things that were really bugging me.
2014-08-05 10:17:27 -05:00
drtshock
c735053bc3
Refix chat handling.
2014-08-02 18:19:56 -05:00
drtshock
30f4fdf6c6
Properly replace chat. Hardcoding never helped anyone.
...
Fixes issue #30 .
Use ternaries where possible.
2014-08-02 17:37:48 -05:00
drtshock
957f8a209d
Don't apply chat tags twice.
2014-08-02 16:32:25 -05:00
drtshock
5938a4987e
Make bare /f command show help.
...
Just making the plugin think they actually executed the help command because the help pages are built inside of that class and I'd rather not worry about moving them out of there or easily accessible.
2014-07-12 15:50:56 -05:00
drtshock
3298183fdf
Add missing javadocs.
2014-07-09 14:01:53 -05:00
drtshock
4d5278b079
Improve and document event system. Deprecate duplicate methods.
2014-07-09 14:00:16 -05:00
drtshock
7604b4455b
Don't allow players to be kicked from wilderness faction for whatever reason. Somewhat fixes issue #29 .
2014-07-09 13:38:19 -05:00
drtshock
7f1b2d73ad
Make sure damage modification is commented out.
2014-07-09 13:20:38 -05:00
drtshock
484a8cc233
Merge branch '1.6.x' of https://github.com/hintss/Factions into hintss-1.6.x
2014-07-09 13:18:50 -05:00
drtshock
1fa7e28ffd
Comment out territory shield because modifying the damage just doesn't want to work.
2014-07-08 13:54:22 -05:00
drtshock
0d0085f423
Use double for multiplying damage. Fixes issue #25 .
2014-07-05 23:52:07 -05:00
drtshock
3c2f48d582
Remove metrics.
2014-07-05 13:21:10 -05:00
drtshock
d968b9878c
Listen to commands to see if they should be allowed. Fixes issue #26 .
2014-07-05 13:20:07 -05:00
drtshock
526734b9f6
Update to use async chat event.
2014-07-03 13:04:17 -05:00
Henry Ammermann
97bc72e4f8
intellij autofixes!
2014-07-01 23:37:42 -07:00
Henry Ammermann
95899e7ab9
make Flocation's getCircle not use a square root
2014-07-01 14:51:39 -07:00
drtshock
8a6a97cc90
Reformat
2014-07-01 15:10:18 -05:00
drtshock
5066934a95
More reformatting
2014-07-01 14:52:40 -05:00
drtshock
dc54f78cc1
Some reformat
2014-07-01 14:49:42 -05:00
drtshock
955958ce61
Remove mac stuff.
2014-07-01 13:47:22 -05:00
drtshock
672e115d8b
Update default factions description and tags if changed in the lang file.
2014-07-01 13:46:30 -05:00
drtshock
cd65375bd9
Add TL file. Use CommandExecutor to properly handle commands instead of using the preprocess listener and breaking other plugins.
2014-07-01 13:19:36 -05:00
drtshock
753c32785d
Fix flocation owner showing as uuid instead of name. Fixes issue #18
2014-06-30 13:41:52 -05:00
drtshock
ee96e330b7
U0.1.2. Attempt to hook chat tags.
2014-06-27 14:57:18 -05:00
drtshock
024e88a35b
Fix metrics call to getOnlinePlayers
2014-06-27 13:43:12 -05:00
Trent
a47caa4ff6
Merge pull request #16 from Scyntrus/1.6.x
...
Re added get function with Player parameter for PlayerEntityCollection
2014-06-17 02:22:22 -05:00
ediTv2
1d13121407
Fix for Issue #6 (Arrow Entity Damage)
2014-06-16 22:54:50 -07:00
Steven Timotius
b3a37576cd
Re added get function with Player parameter for PlayerEntityCollection for backwards compatibility
2014-06-03 21:02:24 -07:00
drtshock
a8e3b3c1e2
Add Metrics. Disable opting out because we want to know. Increment version to U0.1.1
2014-05-23 00:46:35 -05:00
drtshock
997d0c5a43
Offline players will not be null. This was interfering with faction invites for some reason.
2014-05-20 16:45:13 -05:00
drtshock
b10e31acbb
Remove some unneeded files.
2014-05-19 13:08:37 -05:00
drtshock
28afd6530c
Fix f who issue with looking up offline players. Fixes issue #8
2014-05-19 13:03:26 -05:00
drtshock
5d50dc9971
Add this.
2014-05-19 11:45:45 -05:00
drtshock
024336d717
Readd essentials teleport cooldown hook. Fixes issue #5
2014-05-19 11:44:15 -05:00
drtshock
7107829446
Fix missed diff when removing Spout compatibility. Fixes issue #11 .
2014-05-19 11:14:55 -05:00
CoOwner/Developer for @ArkhamNetwork - Java, PHP, Redis, LAMP
1a9a2f65c0
Replace getName with hasPlayedBefore as offlineplayer will never be null. This fixes quite a few command bugs.
2014-05-16 17:48:59 +01:00
gravitylow
51ac5d2cb2
Update commands to search by UUID
2014-04-16 23:15:14 -04:00
gravitylow
bad3d779c5
Lookup by player instead of name/id
2014-04-16 22:29:38 -04:00
gravitylow
76be9f16f7
Update block usage to use UUIDs
2014-04-16 22:22:32 -04:00
gravitylow
da16b662b4
Update faction storage to use UUID
2014-04-16 21:10:12 -04:00
gravitylow
43d5c32bad
Update block usage player lookups
2014-04-16 18:35:55 -04:00
gravitylow
91e7b1587f
Update command player lookups, fixes #3
2014-04-16 18:35:36 -04:00
CoOwner/Developer for @ArkhamNetwork - Java, PHP, Redis, LAMP
2c13dd463c
Fix getting the wrong faction from player
...
This fixes factions getting the wrong faction from a player. Before it was returning a wrong faction and the player could not build in his/her own land.
2014-04-16 20:07:08 +01:00
gravitylow
e2f5548a5f
Offline player name hotfix until I can write a good threaded use of OfflinePlayer
2014-04-16 13:55:22 -04:00
drtshock
402b3b0d07
Always attempt to return a name before a uuid.
2014-04-16 12:28:57 -05:00
drtshock
9d73339e14
Ternary
2014-04-16 12:12:18 -05:00
gravitylow
d93a0b16cc
Nullcheck name for offline player support
2014-04-16 13:07:14 -04:00
gravitylow
1736f34fc8
Show player name instead of UUID when requesting name..
2014-04-16 12:33:24 -04:00
gravitylow
0f4bd48817
Create player backups before converting and save data straight away
2014-04-15 21:29:45 -04:00
gravitylow
f9074c0f59
Start re-versioning this fork
2014-04-15 19:09:17 -04:00
gravitylow
b73736b03b
Update conversion process to look for dead entries and properly save responses
2014-04-15 18:54:13 -04:00
gravitylow
61c64a94db
Update UUIDFetcher to handle more requests
2014-04-15 18:53:38 -04:00
gravitylow
6c4cfd337e
Java 6 compatible
2014-04-15 15:19:00 -04:00
gravitylow
8453ab3e76
Convert old player configs
2014-04-15 15:08:25 -04:00
gravitylow
e3c0f6376f
More housekeeping
2014-04-15 13:42:09 -04:00
gravitylow
68d3145c7d
Let's clean up this config..
2014-04-15 13:23:18 -04:00
gravitylow
255549099f
Store and lookup from UUID
2014-04-15 13:18:13 -04:00
drtshock
eb770edd7a
Push pending stuff.
2014-04-13 16:31:10 -04:00
drtshock
b50cebcdb6
COMPILES
2014-04-05 17:25:15 -05:00
drtshock
a73f2b0174
Update to newer API.
2014-04-05 17:00:33 -05:00
drtshock
c4f7d6b756
Remove spout features, add worldguard and worldedit.
2014-04-05 15:42:01 -05:00
drtshock
d9b7cf7058
Remove spout, update pom for lwc. Still need lots of dependencies.
2014-04-04 14:35:35 -05:00
drtshock
814e439705
Reformat before I go crazy.
2014-04-04 13:55:21 -05:00
drtshock
0c3ea377dd
Remove mac crap.
2014-04-04 13:54:22 -05:00
drtshock
c3983d3b96
Mavenize
2014-04-04 13:53:42 -05:00
Brettflan
d7ad010d2f
Updated TNT explosion protection to cover TNT minecarts
...
Added trapped chest, hopper, and dropper to default territoryProtectedMaterials and territoryProtectedMaterialsWhenOffline lists
Existing users will need to update their config to add these, like so:
/f config territoryProtectedMaterials TRAPPED_CHEST
/f config territoryProtectedMaterials DROPPER
/f config territoryProtectedMaterials HOPPER
/f config territoryProtectedMaterialsWhenOffline TRAPPED_CHEST
/f config territoryProtectedMaterialsWhenOffline DROPPER
/f config territoryProtectedMaterialsWhenOffline HOPPER
Also cleaned up some leftover code
2013-04-23 08:52:39 -05:00
Brettflan
cec9422a13
AutoLeaveTask is now throttled to only spend a certain amount of time per server tick on removing inactive players, to prevent it from potentially choking very large servers. This amount of time can be specified by the new setting "autoLeaveRoutineMaxMillisecondsPerTick" (default 5ms, ~10% of a tick).
...
Also some very minor improvements to the config command.
2013-04-21 20:26:19 -05:00
Brettflan
63837691ce
Additional safety check to make sure EntityCollection.saveToDisc() can't run multiple iterations simultaneously; this might have been the cause of some reports of corrupted data
2013-04-18 03:24:23 -05:00
Brettflan
f7d57efe0b
Made SaveTask routine's repeat rate configurable through new setting "saveToFileEveryXMinutes" (default 30.0, as it was previously hardcoded). Routine can be disabled by setting it to 0 or lower.
...
Also added in flag to make sure the routine doesn't try to run more than one iteration simultaneously if a previous iteration is still running.
2013-04-18 03:02:40 -05:00
Brettflan
d8564a050f
Additional Exception catching for errors which might occur when loading JSON files
2013-04-18 02:08:41 -05:00
Brettflan
8487bafac0
Many possible sync related problems with 1.6.x chat handling; switching back to using deprecated PlayerChatEvent instead of AsyncPlayerChatEvent. Not the best solution, but since 1.6.x is only really maintained for compatibility and bugfixes at this point...
2013-04-18 02:03:21 -05:00
Brettflan
a4e06db112
made "worldGuardBuildPriority" apply in Wilderness and WarZone, not just SafeZone
2013-04-12 11:59:33 -05:00
Brettflan
96dafe4327
New permission factions.claim.radius (granted to all players by default), which is now required in order to specify a radius with the claim command.
2013-01-29 19:21:32 -06:00
Brettflan
19178d2875
(by jastice) Handle EconomyResponse objects from Vault on all transactions.
...
Vault's EconomyResponse was ignored for some cases, such as money transfers and deposits.
This would cause money to get lost if a transfer failed. This change refunds the initiatior of a transfer and notifies them of the failure.
Failing transfers can happen often when using economy plugins based on physical currency, such as Gringotts, for example when no space is available in an account.
2013-01-04 09:54:00 -06:00
Brettflan
7a8fa0266a
tiny performance optimization to last commit
2013-01-04 09:13:28 -06:00
Brettflan
fc6e80ecbe
Update to our obsidian generator exploit prevention code (via config option "handleExploitObsidianGenerators") to address newer method involving tripwire strings instead of redstone
2013-01-04 09:06:57 -06:00
Brettflan
e6dcfcdb38
Release 1.6.9.4 beta
...
and sneaking in a typo fix
2012-12-19 06:43:24 -06:00
Brettflan
214b87edd8
(by alkarinv) Added a new Factions event for power loss named PowerLossEvent. PowerLossEvent happens after each player death.
...
Backported from 1.7 branch.
2012-12-19 06:18:56 -06:00
Brettflan
98db1ee2c4
Release 1.6.9.3
...
Also fix for improper message being sent to person who changes a faction description if "broadcastDescriptionChanges" is disabled
2012-11-30 20:14:30 -06:00
Brettflan
9e4cc676ea
fix for /f list command throwing an error if an invalid page number was specified (ex. 5 pages available and they run /f list 6)
2012-11-30 19:43:01 -06:00
mbax
98d3b8cf0d
How about we declare async commands as async
2012-11-25 00:38:44 -05:00
Brettflan
1e9cf01e23
Fix for pistons being able to push blocks into protected territory through water or lava
2012-11-11 13:05:59 -06:00
Brettflan
8aa9e18be6
New setting "broadcastDescriptionChanges" (default false) which can be enabled to have faction description changes broadcast to everyone on the server. Previously description changes were always broadcast.
...
Also added witch and wither boss to monster list, missed that for last release.
2012-11-09 18:22:41 -06:00
Brettflan
25cf3b5bbc
Update deprecated PlayerPreLoginEvent to PlayerLoginEvent; backported from main branch
2012-11-08 00:07:53 -06:00
Brettflan
ade3c6b320
Fix for crop trampling and pressure plates not being protected due to bug introduced in recent performance overhaul
2012-11-06 15:01:34 -06:00
Brettflan
c11d9b03a3
Fix for slashless commands triggering errors in CraftBukkit on rare occasions due to being run async
2012-11-06 14:23:16 -06:00
Brettflan
8288cfc44a
minor cleanup of hanging explosion protection code
2012-11-06 12:35:48 -06:00
Brettflan
a71e1bf8b2
Wither boss second stage will no longer be able to destroy blocks in territory which has fireball protection; a bit crude just using fireball protection for Wither boss too, but I'd rather not add in a whole new set of xxxBlockWitherExplosion settings
2012-11-06 11:58:16 -06:00
Brettflan
7a31fb8217
updated known badPotionEffects to include wither potion
2012-11-06 11:04:10 -06:00
Brettflan
165fbe03a1
fix for economy check that made sure player/faction could afford specific commands not working correctly; thanks to spaceemotion for pointing out the problem and fix
2012-11-06 11:01:21 -06:00
Brett Flannigan
5ad6886d46
Merge pull request #179 from Tahkeh/1.6.x-fix
...
Protecting Beacon and Anvil use by default and protecting Hanging entities from explosions
2012-11-06 07:54:44 -08:00
Brettflan
30d9bbf138
Performance overhaul sponsored by rockxz3, using his large server's data for reference to help with testing and tuning. Timing numbers below are based on this data set.
...
* PlayerMoveEvent performance boost (from 0.047ms to 0.015ms in testing, ~313% as fast): now more thrifty in determining whether player has actually moved between chunks before doing anything else; important since this event triggers extremely quickly
* PlayerInteractEvent performance boost (from 0.068ms to 0.034ms in testing, ~200% as fast): now ignores left-clicks for interaction checks, since in CraftBukkit 1.4 left-clicks no longer open doors or activate buttons/levers/etc.; not as important as above, but still triggers quite often as people are digging or interacting with blocks
* "/f list" command performance boost (from 234ms to 30ms in testing, ~780% as fast): code was getting information for all factions, narrowed it down to only getting info for displayed page range
* "/f show" command performance boost (from 132ms to 28ms in testing, ~470% as fast): tweaked the ally & enemy listing code used
2012-11-06 09:43:30 -06:00
John Veres
dce2e7d266
Added config protection defaults for Beacon and Anvil. Added Hanging
...
protection for explosions.
2012-11-04 01:52:33 -05:00
Brettflan
ee6c7c07d2
Updated old painting events to new hanging events so that item frames are also protected.
...
Added wither boss initial explosion to our fireball explosion protection (only needed in 1.6 branch).
Also updated CraftBukkit lib and (hopefully) further clarified error message for GSON libs not being found in CB 1.3.2+ location.
2012-10-31 16:16:19 -05:00
Brettflan
1707582e80
Wither skull explosions are now blocked by fireball explosion protection (territoryBlockFireballs etc.)
...
only needed in 1.6.x branch since 1.7 branch handles all explosions the same
2012-10-29 19:24:31 -05:00
Brettflan
c7b4184e1d
Backups are now created of bad factions.json and players.json files if they fail to load due to a JSON parse error; same as we already do for bad conf.json
2012-10-19 01:50:36 -05:00
Brettflan
1a4286c379
Update to "handleExploitTNTWaterlog" method to not destroy Ender chests or portals; sadly there's still no method provided by Bukkit to get a block's blast resistance, so we have to go by a list of block type IDs which are supposed to be TNT-proof
2012-10-19 00:11:37 -05:00
Brettflan
ea2da7ea9f
Fix for crash on startup if Worldguard integration is enabled ("worldGuardChecking" or the new "worldGuardBuildPriority") but Worldguard plugin isn't loaded on server
...
Also updated SpoutPlugin lib
2012-10-09 17:36:59 -05:00
Brett Flannigan
6c5e9cbdc8
Merge pull request #169 from flatbmx/1.6.x
...
Allow users to build/destroy in safezone if they can build in a worldguard region.
2012-10-09 15:19:23 -07:00
FlyingPikachu
de258a529d
Removed spammy "boardclearat / clearclaim" message
...
Pretty straightforward. Factions broadcasted pointless message whenever LWC locks were reset.
2012-10-07 15:19:23 -03:00
flatbmx
909f605343
fixed default build if there was no region at location.
2012-09-08 11:22:18 -05:00
flatbmx
774d013cd0
Added WorldGuard region building overriding safezone build rules if enabled.
2012-09-08 11:02:36 -05:00
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