Commit Graph

1011 Commits

Author SHA1 Message Date
Nick Porillo d69f9e5688 Handle buffers 2015-02-19 08:59:28 -06:00
Nick Porillo 5a9112ad37 Add WorldBorder support
- Uses API in spigot to get world border
- Blocks faction claims that are outside the world border

Improved border detection

This is the updated border detection, this method is extremely accurate
and does not over partition claim space like before.

Takes the border and divides by two, and then converts the block
distance into a chunk distance.
Ex. Border = 100, Chunks = 6 vertically, 6 horizontally.

We get the absolute value difference between the center chunk and the
claim chunk, for both X and Z. We add both diffs, and if they are
greater than the limit, then we know the chunk is outside the border!
2015-02-19 08:58:20 -06:00
xTDKx e6aa3116ac Allow variables to be use in the default sidebar (like it says in the config) 2015-02-15 19:30:15 -05:00
korikisulda 1da7dbd25f Fix Dynmap soft-dependency 2015-02-13 18:51:43 -06:00
drtshock a94b3cb6b7 Update to 1.8 Spigot-API. Breaks servers before 1.7.9-R0.3 2015-02-12 09:21:17 -06:00
Nick Porillo 0e76bc05fb Add getLastDeath method
Also makes lastDeath a private field, since it is not accessed anywhere
else in the plugin,.
2015-02-11 23:01:13 -05:00
drtshock 63d6d69224 Remove ~ from sendFactionhere message. People can add it in if they want via TL. 2015-02-06 09:17:17 -06:00
drtshock 5579005714 Add buffer zone for areas between Faction claims. Adds #233. 2015-01-29 09:39:56 -06:00
drtshock 559695d103 Fix check for over claiming. Resolves #230. 2015-01-29 08:30:20 -06:00
eueln fc0b2a1041 Fix path for Relation translations (singular) 2015-01-28 19:58:21 -06:00
drtshock 1636708cef Adds DTR freeze functionality from #229. 2015-01-28 10:13:23 -06:00
drtshock 8fdcb51183 Add option to not delete FPlayer data on auto leave.
This allows servers to only have the player leave the faction. Also prevents players from staying offline until their power resets.
2015-01-27 11:17:43 -06:00
drtshock d888b320db Add DTR (deaths til raidable) option for f show.
Will show 0 if they are raidable to prevent a negative number from showing.
2015-01-27 11:07:55 -06:00
drtshock f92d59e5c6 Add HCF raidable functionality.
This will allow players to break blocks in factions that are raidable (power < claims) as well as open chests. It can also disable over claiming.
2015-01-27 11:02:16 -06:00
drtshock 147a051fee Add max relation type. Adds HCF feature from #169.
If used, max relation should be set to -1 for the default relation.
2015-01-27 09:34:22 -06:00
drtshock 092d4b352c Add ability to display if Faction is raidable. Resolves #167. 2015-01-27 09:06:18 -06:00
eueln 3c0c835160 Fix TL path for `/f save` success message 2015-01-23 19:48:49 -06:00
korikisulda 5ea8392fd5 Even moar TL 2015-01-23 15:09:47 -06:00
drtshock 0c2253ef73 Iterate over correct Faction for balance. 2015-01-23 09:17:16 -06:00
drtshock 3e6bd4e88a Add f top command functionality. Resolves #71.
Gives the ability to see top Factions on the server sorted by certain criteria:
Balance: sorts by faction bank balance and all faction member balances.
Power: total power.
Land: total land claimed.
Online: members currently online.
Members: total members, online and offline.

Future criteria can be added of course.
2015-01-23 09:07:18 -06:00
drtshock ebf00ccf0d Add claim line. Resolves #142. 2015-01-22 22:38:46 -06:00
drtshock bee36f5ba0 Add warzoneDenyCommands. 2015-01-22 20:41:05 -06:00
drtshock a4a11e7045 Allow f show to be executed by non players. 2015-01-22 20:31:26 -06:00
drtshock 8c2f08b694 Truces.
Add chat channel functionality. Essentially the same as Allies except it's a different word.
2015-01-22 20:30:40 -06:00
eueln a943f47abb Init built-in factions after loading from disk 2015-01-21 19:45:49 -06:00
korikisulda 7e6aa4fc25 Even more TL. Fixes command description issues. 2015-01-21 19:25:45 -06:00
korikisulda 1cc544db64 moar translatify :3
Add some missing TL nodes
Remove Lang class
You can now into changing command descriptions
2015-01-20 13:58:38 -06:00
korikisulda 3d52704c5d Changed TL to use numbered strings 2015-01-20 13:52:44 -06:00
Joshua Popoff 355e1f58b0 Add warmups for /f home and /f warp 2015-01-19 15:59:15 -08:00
drtshock a7adb1d9d7 Default chat tag insert index should be 0. Resolves #100 sorta. 2015-01-16 10:01:26 -06:00
drtshock 102d13a3f6 Update to Worldguard 6.x. Resolves #214.
This is a breaking change for anyone using Worldguard 5.x
2015-01-15 13:29:14 -06:00
drtshock 4d13c9cada Change command syntax for radius claiming.
Syntax was confusing and people wanted change. Resolves #215.
2015-01-15 13:27:11 -06:00
drtshock b7c34840cd Fix exploit. 2015-01-15 13:24:33 -06:00
eueln c1752477c7 Save last-known FPlayer names
Instead of performing a lookup each time FPlayer#getName() is called,
save the player's name as s/he logs in
2015-01-13 16:37:59 -06:00
eueln 1d4ca46ebe Don't update prefixes for Wilderness 2015-01-11 16:14:07 -06:00
eueln 6d6a04e383 Don't do perform economy actions on nameless offline players
An offline player is nameless if the player has not played on the server
before.

Unfortunately, all of the major economy plugins don't UUID-based
transactions, and instead forward all of the UUIDs through
Bukkit.getOfflinePlayer(UUID).getName()
2015-01-10 15:12:06 -06:00
eueln b52805f7a4 Initialize online players when Factions is enabled 2015-01-10 14:42:52 -06:00
eueln 2955370c9e Fix misleading error in CmdKick
The error was shown to a player when s/he tried to kick someone who
didn't belong to a faction, and incorrectly asserted that something had
"went wrong".
2015-01-10 11:32:56 -06:00
eueln 561ab22924 Remove most mentions of getOfflinePlayer(String)
Faction bank accounts will need to be migrated to use UUID identifiers
before we can remove the remaining getOfflinePlayer(String) calls.
2015-01-09 11:44:15 -06:00
mrlolethan dc3e7e953b Fix "No player found" message in CmdKick
When `/f kick` was used with zero arguments, an ugly message was sent to
the player regarding a missing player match for "null"
2015-01-07 18:14:27 -06:00
drtshock 8103f953eb Allow chat spying to persist. 2015-01-06 16:08:58 -06:00
drtshock 8300b2ff2b Allow players to monitor joins and leaves of their faction members.
Larger servers tend to have join and leave messages disabled for the entire server. A few have requested to allow faction members to monitor join and leave messages of their own members.
2015-01-06 16:06:46 -06:00
eueln d36e88f2c0 Correctly remove faction warps in unclaimed land 2015-01-06 11:59:15 -06:00
eueln 5799a0480b Fix String-related bugs
The result of a call to String#toLowerCase() was ignored, and two
Strings were being compared with ==
2015-01-06 11:59:15 -06:00
drtshock f411b4e014 Remove unneeded permissions class. 2015-01-05 10:40:35 -06:00
eueln d6bbea7244 Add missing early `return` in CmdMod 2015-01-05 10:00:51 -06:00
drtshock 0a80b79321 Check for relation when a player tries to create a destination portal in claimed land. Adds #204. 2015-01-05 09:58:32 -06:00
t00thpick1 37565463ad A few optimizations. 2015-01-02 19:33:34 -05:00
t00thpick1 44dc04e3e1 There are lots of unfactioned players, but we shouldn't care about them. 2015-01-02 19:19:57 -05:00
drtshock 91f9d1d8db Remove tooltips for f show and f list.
Tooltips were causing a lot of issues on larger servers. Constructing them as well as the lookups required to display them caused significant lag.

Resolves #197, #164.
2015-01-02 13:38:35 -06:00
Tibo442 2209090783 Different message for own faction and for other factions when faction not found.
Still weird for faction-less players to do /f show <other faction-less player>
2014-12-30 10:07:35 -06:00
t00thpick1 3f949e18cc Lets not do hundreds of object clones when they are nearly never needed. 2014-12-30 00:31:36 -05:00
eueln c4c5bd9df9 Don't perform /f who for players without a faction 2014-12-29 22:02:18 -06:00
eueln 190c2d793f Use rounded value to match format in /f powerboost 2014-12-24 04:15:16 -06:00
eueln 4703f08027 Fix /f create TL; Save TL nodes on first launch 2014-12-20 20:17:56 -06:00
Tibo442 0d75b1164a Changed FancyMessage.command() to accept command aliases.
Also adds support for servers where slash-less commands are disabled.
2014-12-19 13:51:24 +01:00
Tibo 728b6b0fbc Fix /f enemy/neutral/ally's message of sender's faction 2014-12-19 13:11:38 +01:00
eueln 3c2e51e8ed Make LandUnclaimAllEvent Cancellable 2014-12-17 20:50:28 -06:00
eueln 3733539077 Add cancellable FactionRelationWishEvent
This event is called before a faction relation wish is applied by a
player using `/f relation`
2014-12-17 20:31:21 -06:00
eueln 1ada19b02e Properly split FancyMessages for /f show 2014-12-14 17:24:25 -06:00
eueln 6d2ca16002 Initialize FTeamWrapper if it doesn't exist. Fixes #179 2014-12-14 16:15:25 -06:00
korikisulda 10fd3f082a Fixed phantom section. Accursed underscores. 2014-12-14 13:39:45 -06:00
drtshock 9aecd5f439 Reformat. 2014-12-11 10:05:04 -06:00
drtshock 125a8c2050 Add default American English translation file. 2014-12-11 10:01:05 -06:00
korikisulda 1ce1eb51d4 Add Japanese translation 2014-12-11 09:46:06 -06:00
drtshock 8788778d05 Expose loadLang as public and reload from disk on /f reload. 2014-12-11 09:16:12 -06:00
drtshock fa4154a0ce Allow f show to be sent to non-players.
Fanciful will remove the json formatting to send a readable message.
2014-12-10 22:36:46 -06:00
drtshock c9433d0cf3 Send f show messages all at once to remove delay. 2014-12-10 22:32:47 -06:00
korikisulda 24e7873892 Removed contents of lang file. It's outdated, and they're automatically populated anyway. 2014-12-09 23:24:37 +00:00
eueln a70cfdaf71 Fix /f {set,del,}warp transactions 2014-12-09 17:16:42 -06:00
drtshock a01d79ef78 Allow the default relation between Factions to be configurable. 2014-12-09 16:01:20 -06:00
korikisulda 1230803cfb Add TL for commands. Resolves #162. Supercedes #97. 2014-12-08 19:47:19 -06:00
eueln bd8f572cbf Revert reformat on Conf.java 2014-12-08 15:00:20 -06:00
eueln a6585e6f5c Fix /f warp on Java 6 and 7
Covariance on ConcurrentHashMap#keySet() in Java 8 was to blame.
2014-12-07 21:59:59 -06:00
eueln e4bafcf072 Clean board on startup 2014-12-07 15:15:42 -06:00
drtshock caa6f0f0f0 Reformat 2014-12-07 14:26:13 -06:00
korikisulda a1ab22554c Added dynmap integration. Glory to Arstotzka! Addresses #109 2014-12-07 14:22:29 -06:00
t00thpick1 b8f742a588 Remove players from internal map immediately.
Should resolve #117
2014-12-07 14:59:44 -05:00
eueln e9b0a4d67c Check projectile shooter's type before casting. Fixes #158 2014-12-07 13:20:48 -06:00
eueln 5e676bdd50 Order `/f show` by rank. Adds #150 2014-12-06 21:44:00 -06:00
korikisulda 6107e9502e Truncate excessively long online/offline player messages in /f show/who. Resolves #154. 2014-12-06 21:23:19 -06:00
eueln 0487ca77e5 Add spigot constraint for 48-char sidebar text
Spigot has a method `addEntry(String)` for Teams that doesn't block,
unlike the OfflinePlayer option. If the server doesn't have this method,
lines are limited to 16 characters as usual.
2014-12-05 15:58:00 -06:00
eueln ff2e32feff Fix format in CmdModifyPower message. Fixes #145 2014-11-29 16:29:29 -06:00
drtshock edfe465ad5 Add missing return statements. 2014-11-17 14:30:41 -06:00
Tibo 356842ab41 Fix clients getting kicked from too many allies/enemies. 2014-11-17 20:16:58 +01:00
Tibo b970755cb1 Fix spaces with ", "
Fixes #134
2014-11-17 19:32:34 +01:00
eueln 4b6ccc7967 Don't invisibly update faction prefixes when they're disabled 2014-11-17 01:22:12 -06:00
eueln 3af4c9a616 Store OfflinePlayers in FTeamWrapper instead of looking them up 2014-11-15 16:54:16 -06:00
drtshock 8910de367c Require players to be in a faction to promote. 2014-11-14 14:13:51 -06:00
drtshock bad874495b Add command to modify a player's power specified in #133.
use /f modpower name number
2014-11-14 13:27:23 -06:00
drtshock 104f90c1db Send invite message to correct player. Fixes issue #132 2014-11-14 13:03:51 -06:00
drtshock 54d486cc84 Add tooltips and click commands to f deinvite and show invites. 2014-11-14 10:08:18 -06:00
drtshock 2aa7d7f98d Add tooltips and click commands to f deinvite. 2014-11-14 10:03:57 -06:00
drtshock 03b8f11646 Add tooltips and click commands to f mod. 2014-11-14 09:59:36 -06:00
drtshock b895fa1e99 Add tooltips and click commands to f kick. 2014-11-14 09:56:13 -06:00
drtshock 656dc90b33 Add tooltips and ability to click to warp when you list faction warps. 2014-11-14 09:46:28 -06:00
drtshock c4f4036e1d Add tooltips for f show.
Refactor tooltip methods to be shared across command classes.
2014-11-13 13:49:13 -06:00
drtshock 43826d986f Add colors to /f list 2014-11-13 12:52:21 -06:00
drtshock 64e234144e /f list tool tips 2014-11-13 12:45:57 -06:00
drtshock e585ab57a9 Remove unused f list code. 2014-11-13 09:12:34 -06:00
drtshock 201d10ada5 Add economy option for f warps from #126. 2014-11-11 09:28:53 -06:00
eueln fdce32e04c Correct FTeamWrapper faction disband detection 2014-11-09 21:27:03 -06:00
eueln 00045b0186 Don't repeatedly update FTeamWrapper for the same faction 2014-11-09 21:12:42 -06:00
drtshock 81182dccaa Add option to completely disable pistons in faction territory.
This is a preemptive method to block new things like http://i.gyazo.com/6a1a31222e58a5d60ff341c13f6a8404.gif
2014-11-08 19:07:42 -06:00
drtshock ccd8720b09 Fix keySetView issue on non java8 servers. 2014-11-08 14:59:45 -06:00
eueln 917c442b59 Correct implementation of FTeamWrapper::updatePrefix 2014-11-07 13:13:54 -06:00
eueln 29836a9183 Remove faction team prefixes when disbanded 2014-11-07 12:55:59 -06:00
eueln ea8bb9e24f Remove ghost FInfoBoard.java file 2014-11-07 12:51:18 -06:00
drtshock 77e3fd90b4 Don't assume Essentials is running. 2014-11-07 12:38:45 -06:00
drtshock 962f92496c Don't allow vanished players to block others from teleporting. Fixes #111. 2014-11-07 12:08:57 -06:00
drtshock 8b64b4bfe1 Adds per faction warps functionality from #72.
Default max warps per faction is 5. It can be changed in the config.yml.
You can now use {warps} in the info board to show how many warps a faction has when you walk into their territory.
Only faction mods+ can set faction warps.
2014-11-07 11:49:54 -06:00
drtshock 35813c7210 Reformat. 2014-11-05 18:36:47 -06:00
drtshock 27bf2008f1 Have factions return as 0 instead of null. 2014-11-05 18:36:13 -06:00
drtshock b66c9ad078 Add missing command help to help command. Resolves #101. 2014-11-05 11:34:46 -06:00
drtshock 11ae51a6ca Check if FTeamWrapper exists for faction. Fixes #107 2014-11-05 11:06:15 -06:00
eueln 2e1a43c228 Make MemoryFactions::load non-abstract.
MemoryFactions::load was incorrectly marked as abstract, which wouldn't
have been possible if not for an erroneous semicolon.

Additionally, we need to call MemoryFactions::load from subclasses.

Fixes #105
Fixes #106
2014-11-02 13:00:01 -06:00
eueln 99c582dda8 Fix issues in CmdOpen
A formatted message was missing a format argument, and comparison on
Strings was being performed with ==
2014-11-02 01:10:41 -05:00
eueln 6c70a7d105 Properly handle player kick before PlayerJoinEvent
Fixes #104
2014-10-31 13:23:22 -05:00
t00thpick1 3e15189c11 Ensure that even if fields are missing from save file, that fields are instantiated. 2014-10-31 10:47:59 -04:00
t00thpick1 ee52016a87 Abstract Data storage method for future implementations. Thanks to Ryan from Reactive MC
Also included:
-Heavily optimized loading process
-Optimizations for various commands.
2014-10-30 23:59:59 -04:00
eueln 17a95fc786 Use older version of Bukkit
For players on versions earlier than 1.7.10, our usage of
getOnlinePlayers() currently throws a NoSuchMethodError.
2014-10-30 23:26:24 -04:00
eueln 79c989bfc8 Remove erroneous comment 2014-10-30 23:26:24 -04:00
eueln 653f918a1b Add support for Glowstone
Glowstone doesn't yet support PlayerMoveEvent nor Scoreboards, so
functionality is unfortunately limited.
2014-10-30 23:26:23 -04:00
eueln 7f2ef4cbd5 Improve Team prefix performance
This change vastly improves performance for faction team prefix update
operations.
2014-10-30 23:26:23 -04:00
Byteflux 90e57740a2 Allow default prefix customization from lang file 2014-10-30 23:26:22 -04:00
drtshock 33bd9f7e81 Allow prefix to be configurable. 2014-10-30 23:26:22 -04:00
eueln 947f82cb2f Don't repeatedly copy the Set<FPlayer> of Faction members 2014-10-30 23:26:22 -04:00
eueln 157d98d4b0 Store FScoreboards by FPlayer instead of Player 2014-10-30 23:26:21 -04:00
drtshock e739ea0bf6 Add brackets in faction tag. U0.1.7 2014-10-30 23:26:21 -04:00
eueln 49babcd4e8 Add player to faction team when they log in 2014-10-30 23:26:21 -04:00
eueln c049768e21 Add faction tag to team prefix 2014-10-30 23:26:20 -04:00
Byteflux 51f1ceee14 Show power next to member names in /f show 2014-10-30 23:26:20 -04:00
drtshock ad1439f431 Add check to prevent scoreboards merging. 2014-10-30 23:26:19 -04:00
drtshock 4929e5dd18 Limit block changes sent in seechunk to prevent client freezing. Use prettier blocks. 2014-10-30 23:26:19 -04:00
Byteflux 5569e5076a Add /f seechunk command for visualizing a chunk 2014-10-30 23:26:19 -04:00
Byteflux 81fc029736 Support modded enums in gson using custom EnumTypeAdapter. Resolves carbon breaking materials in issue #90. 2014-10-30 23:26:18 -04:00
eueln 7ada15992b Refactor scoreboard issue. Resolves issue #80. 2014-10-30 23:26:13 -04:00
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
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