iPAV v2.4

Details

  • Filename
    iPAV.jar
  • Uploaded by
  • Uploaded
    Feb 11, 2015
  • Size
    67.82 KB
  • Downloads
    295
  • MD5
    db30576518c1c9f3b9629e89d872dfe8

Supported Bukkit Versions

  • 1.8

Changelog

v2.4
Built against: spigot-api-1.8-R0.1-SNAPSHOT-shaded.jar
Tested with: CraftBukkit version git-Spigot-952179b-e87122e (API version 1.8-R0.1-SNAPSHOT)
Release type: Development build. USE AT YOUR OWN RISK. (a.k.a. make backups of your files)
Summary: This release contains many different changes that slowly accumulated together over the past year. As such, I'm having a difficult time remembering what was changed, so I'll just point out some notable things I do remember...

Most importantly, this version contains partial UUID support. It is designed to be used on 1.8 servers, and probably won't work well or at all on previous server versions. UUIDs have their own log file (just like player names and addresses do), though it doesn't serve much of a purpose right now. UUIDs are logged only when players log in, and the plugin will make no attempt to search for the UUID of an old player record.

In regards to old records, both the playerLog.ipav and ipLog.ipav files have been deprecated and will be replaced automatically by loggedPlayers.ipav and loggedAddresses.ipav the first time this version of iPAV starts up. While useless now, playerLog.ipav and ipLog.ipav will not be auto-removed and I recommend that you keep them for a little while in-case something goes wrong with the conversion to the new data storage format that needs to get fixed later.

The config.yml has changed a bit, it is recommended that you delete your old one. Some settings are in the process of getting removed.

The version-check display information has been upgraded, and it will now show you the past 5 versions released to dev.bukkit.org.

A feature has been added (I think during the v2.3 phase?) to auto-temp-ban an IP if someone logs in/out too much during a given time-frame. Settings for this feature can be modified in the config.yml.

An add-on has been created for iPAV for geo-location support. The add-on is currently unavailable, but I'm hoping to make it public soon.

A lot of old coding was changed. A LOT. Some old bugs might be fixed, some might not be. There might be new bugs too, and some old features might have broken. If you decide to try this version of iPAV, I would be more than happy to receive feedback about things that need fixing or any changes to functionality that you might like to see. While suggestions are welcome, I can't guarantee all ideas will be put into iPAV (but it's always nice to know what people are thinking of when I'm trying to make decisions)

v2.3
Won't be released.

v2.2
Note: Does not require an update to your config.yml file.

  • NEW: /ipav pl search [searchText] [page] command to list players that contain searchText in their username. This command runs its search in a separate thread (asynchronously).
  • NEW: /ipav pl list [page] command to list all players that have been logged by iPAV. The list is in chronological order by who was logged first. The end of the list will show the newest players on the server (unless you manually edit the playerLog.yml and insert names yourself).
  • NEW: /joindate [player] command. This command comes with the first non-OP permission node "ipav.command.joindate" which allows players to view their own joindate. Requires the permission node "ipav.command.joindate.others" to view other player joindates.
  • CHANGED: /ipav ip c [address] <- This will now execute its search in a separate thread (asynchronously) to prevent the whole server from lagging when the command is used on a server with a lot of logged players.
  • CHANGED: The message node "commands.ip.syntax.check" has been changed to "commands.ip.check.syntax" in your messages.yml
  • FIXED: Address similarity colors not displaying when a user logs in.

v2.1
Note: Contains a new config value (dataLogging -> logConditions -> neverLogWhitelistedIPs). Either delete your old config.yml or add the missing value manually. A current config file can be seen at: http://dev.bukkit.org/bukkit-plugins/ipav/pages/configuration/

  • NEW: Option to never log whitelisted IPs
  • NEW: Command alias for /ipav: /av
  • NEW: Chat color support for the ampersand character (&)
  • NEW: Chat format code &v that lets you insert line breaks in all of your iPAV messages (excluding the custom IP censor replacement message)
  • CHANGED: Join/Quit messages. Now you can customize join, quit, and kick messages so that they have colors and no longer say "Player left the game." or "Player joined the game."
  • CHANGED: IP censors. Now you can use partial IPs.
  • FIXED: Multiple bugs (such as outOfBounds errors)
  • REMOVED: The old join/quit message toggling system

v2.0
Note: Contains new config values and removed some old ones. Either delete your old config.yml or add the missing values manually. A current config file can be seen at: http://dev.bukkit.org/bukkit-plugins/ipav/pages/configuration/

  • NEW: Command alias for "/ipav", all "/ipav" commands now also function with "/ip". If this conflicts with another plugin your server has, remove the [ip] alias from the ipav command in the plugin.yml located inside of the iPAddressViewer v2.0.jar file.
  • NEW: Censor IPs in iPAV. You must manually edit the censoredIPs.yml file to add an IP. Partial IPs do not work here.
  • NEW: Toggle player join and quit messages using "/ipav showPlayerJoin" and "/ipav showPlayerQuit"
  • NEW: Authentication plugin API calls. iPAV will now check to see if you logged in successfully when using AuthMe or xAuth if you have authenticationCommands enabled in your config. When you do login successfully, your seeDefaults will be applied and you will check for updates (if you have the appropriate permissions for both).
  • NEW: New config options for when players should get logged.
  • NEW: Data telling you whether a player was blocked, allowed, or logged in successfully when you check a player or address
  • NEW: Per-player-seeDefaults that are first set when you successfully login. If you use toggleSee afterwards, iPAV will remember your settings for the next time you log into the server.
  • NEW: Command alias for "/ipav pl alias [player]". Using "/alias [player]" will do the same thing~
  • CHANGED: "/ipav pl alias [player]" now only needs the first 2 letters of 'alias', so "/ipav pl al [player]" works now.
  • FIXED: {username} being displayed instead of the actual player name for IP restriction blocking messages
  • FIXED: ipav.command.versionCheck not being given with ipav.command.*
  • FIXED: Blacklist messages showing null if you didn't have old messages set in your messages.yml
  • FIXED: iPAV seeDefaults and update checking occurring when a user didn't use the right password. The new feature with iPAV storing its own passwords was mainly intended to restore the auto-activation functionality.
  • FIXED: When you are using the latest iPAV version, it will display "null" when checking for an update.
  • FIXED: Event listeners not being deactivated when onDisable() ran. This caused some messages to spam people that could see iPAV stuff (most notably when update-checking).

v1.9
Note: Contains new config values. Either delete your old config.yml or add the missing values manually. A current config file can be seen at: http://dev.bukkit.org/bukkit-plugins/ipav/pages/configuration/

  • NEW: 1 second delay added before seeDefaults are applied if the login command check is set to false (otherwise it uses the config delay value)
  • NEW: Plugin version checker for when you log in. It will check to see if you are running the recommended iPAV version. If not, it will tell you which version is recommended. This comes with the permission node ipav.seeUpdates.
  • NEW: Command to manually check for updates (/ipav versionCheck)
  • CHANGED: Connection and alias stat viewing when a user connects to the server (or attempts to connect and gets blocked by iPAV). The format has changed and a new stat value is now available to see how many total users are linked to the user that logged in by looking at all of his/her IPs. New message file values have been made for this, and the old ones are no longer used (feel free to delete them). Like always, any missing message file values will automatically add themselves (so it will add the new ones and fix any that you accidentally deleted). A notable feature made with these new message values is the ability to fully customize them by using {variables} that will be placed in-game where you wrote the tag at.
  • CHANGED: The useLoginCommand config setting now defaults to false.
  • FIXED: seeDefaults not activating on login unless you had the permissions "ipav.toggleSee.aliasStats" and "ipav.toggleSee.connections". Those have been corrected and work with "ipav.toggleSee.aliases" and "ipav.toggleSee.ips" now like they were supposed to.

v1.8
Note: Contains new config values. Either delete your old config.yml or add the missing values manually. A current config file can be seen at: http://dev.bukkit.org/bukkit-plugins/ipav/pages/configuration/

  • NEW: seeDefaults are checked when logging in using a command like /login (on by default)
  • CHANGED: /ipav pl alias [player] will now show IPs while looping through all of the aliases of the given player
  • FIXED: ipav.bypass.* not working

v1.7
Note: It is recommended that you start your server once with this new version, THEN delete your old config. Once that has been done, you can reload with /ipav reload to generate a new config and fix your settings. If you think you might mess up, make a backup of your old data so that you don't lose anything.

  • NEW: Permission node to hide from /ipav list
  • NEW: Permission node to hide from /ipav seerList
  • NEW: Permission node to see people hiding from /ipav list
  • NEW: Permission node to see people hiding from /ipav seerList
  • NEW: Config.yml setting to choose whether to log regular players connecting on a whitelisted IP
  • FIXED: Blacklist blocking.
  • FIXED: Blacklist region blocking.
  • FIXED: IP restricting indexOutOfBounds bug
  • FIXED: IP restricting spamming a bit when blocking a player
  • CHANGED: The code that stops blacklist blocking from spamming
  • CHANGED: The configuration file now only contains a couple settings. The blacklist, whitelist, and IP restriction data has been moved to their own files. The plugin should automatically transfer old values out of your config.yml. If no data exists in the config.yml, new default values will be applied. After transferring, the config.yml will still contain the old data, but it will not do anything. It is recommended that you delete your old config file afterwards so that it can regenerate.

v1.6

  • FIXED: Blacklist block message colors not showing and displaying "null" instead.
  • FIXED: Blacklist block message displaying numerous times.
  • CHANGED: Data logging behavior (the order of the logic was off a little, so it wasn't logging for some blacklisted/restricted IPs)
  • BROKE: Blacklist blocking. It will not block players like it should with the correct settings. (it still knows the player is blacklisted if you check /ipav list)

v1.5
Note: Requires the new config format, you must delete your old config file. The config file has been restructured with new notes and settings. The messages section has also been removed and will regenerate default values in a new messages.yml file.

  • NEW: Data logging. Save connection info for everyone into files. This is on by default but can be disabled.
  • NEW: /ipav toggleSee [ip/alias/port] [on/off] <- This allows turning these settings on/off for yourself without needing to mess with permissions every time.
  • NEW: /ipav seerList
  • NEW: /ipav player check [player]
  • NEW: /ipav player alias [player]
  • NEW: /ipav ip check [ipAddress] <- Can be a full or partial address
  • NOTICE: There are several new permission nodes, as well as some removed/changed ones. Among the removed ones are ipav.seeConnections and ipav.seePorts. Refer to the Permissions section on the main plugin page for a full list of available permissions.
  • CHANGED: Some coding has been added in an attempt to fix colors on servers that have trouble supporting ยง. The problem may or may not be fixed (I can't test it on my own computer). Edit: Colors appear to be fixed.
  • SIDE-NOTE: Due to a lack of time, blacklist/whitelist/locking command features are only semi-implemented in the code and unavailable for usage. Development on these features has been pushed back and will hopefully be released in v1.6. Editing the config file and doing it manually should still work.

v1.4
Note: Requires the new config format, you must delete your old config file. The config file has been restructured with new notes, new colors (for the new feature), and some renamed stuff. Messages have also been updated for the new command.

  • NEW: Ability to require a player to log in with a certain IP
  • NEW: /ipav colors command along with an ipav.command.colors permission node

v1.3
Note: Requires the new config format, you must delete your old config file

  • NEW: Added an IP whitelist
  • NEW: Added a player whitelist for blacklisted IPs
  • FIXED: Blacklist color not showing for anything but the default "localhost" blacklist definition when using /ipav list

v1.2

  • NEW: Added colors to see if a user logging in has the same/similar IP as another player that is already online

v1.1
Note: Requires the new config format, you must delete your old config file

  • NEW: Added the ability to customize plugin text (uses the new config file)
  • CHANGED: Commented out the default blacklist identifier_List items in the default config.
  • FIXED: Blacklist color not showing for anything but the default "localhost" blacklist definition when a user joins the game
  • FIXED: Error when using "/ipav" while the config 'enabled' setting is set to false

v1.0

  • Initial release

v0.1 ~ v0.9

  • Initial development and bug fixing

It might take longer for each player to login than usual (about 6 seconds when I was testing). Some optimization of the new code is probably needed...

Dependent on Spigot because of the usage of PlayerLoginEvent.getRealAddress(). The next release will remove this dependency.