Plugins
  1. Plugins

ProtocolLib

Public
AuthorCommitMessageCommit dateIssues
Kristian S. StangelandKristian S. Stangeland
d8181b7bf30Use the correct sender instance.
Kristian S. StangelandKristian S. Stangeland
25cb648cfacPrevent plugins from sending a packet in the wrong direcetion.
Kristian S. StangelandKristian S. Stangeland
78b6a651dc4Add a way to skip the plugin verifier.
Kristian S. StangelandKristian S. Stangeland
f0fd904396aAdding support for retrieving the protocol version.
Kristian S. StangelandKristian S. Stangeland
b901f029d2e[TinyProtocol] Adding to Maven repository under version 0.1.0
Kristian S. StangelandKristian S. Stangeland
b68579bcb73Switch to yellow instead of blue, as its more readable in console.
Kristian S. StangelandKristian S. Stangeland
c443fc3da62Execute onPacketSending() on the main thread for monitor listeners.A special-case occurs when a plugin sends a packet to a client with filters set to FALSE (that is, bypassing most packet listeners) - a new packet event is constructed solely for all MONITOR listeners, as they are informed regardless of the value of FILTER. Unfortunately, the sending method may be invoked on a thread other than the main thread, which will invoke onPacketSending() asynchron...
Kristian S. StangelandKristian S. Stangeland
b3cda21fe50Correct the WrappedGameProfile unit test.
Kristian S. StangelandKristian S. Stangeland
4bd9a1f01ebWarn plugins that never call start/syncStart on AsyncListenerHandler.This is almost always incorrect as it will simply block the transmission or reception of every packet of a given type.
Kristian S. StangelandKristian S. Stangeland
ba88d292c00Last commit added to the API.Incrementing minor version to 3.5.0
Kristian S. StangelandKristian S. Stangeland
f378b7bbd99Added support for closing asynchronous listeners by packet listener.
Kristian S. StangelandKristian S. Stangeland
d717ff1586bHack for WrappedSignedProperty on Cauldron 1.7.10.FIXES #54
Kristian S. StangelandKristian S. Stangeland
4ccd8853c4fAllow any string in WrappedGameProfile(String, String).We now accept any string in this constructor, to preserve backwards compatibility. But, we depreciate its use, as WrappedGameProfile(UUID, String) can be used in every Minecraft version that supports a game profile. There's also a new warning system that will identify the plugin that is using the depreciated method, and print its name to the console (at most once every hour).
Kristian S. StangelandKristian S. Stangeland
09e45977f2cAdded support for Guava 11 (and later) in Spigot #1506-1508.Note that build #1509 reverted to Guava 10, so this is merely a future proof.
Kristian S. StangelandKristian S. Stangeland
7e5abecfe2cIncrement to 3.4.1-SNAPSHOT
Kristian S. StangelandKristian S. Stangeland
aaecb088922Added MassiveCore to the list of plugins exluded from the verifier.
Kristian S. StangelandKristian S. Stangeland
0375ad53913[TinyProtocol] Fix NULL player in the packet interception methods.
Kristian S. StangelandKristian S. Stangeland
0c940711acbIncrement version to 3.4.0.
Kristian S. StangelandKristian S. Stangeland
c50bc55f774Improve JavaDoc documentation of WrappedGameProfile.
Kristian S. StangelandKristian S. Stangeland
ce216d0371fAdd a way to retrieve the underlying UUID in WrappedGameProfile.
Kristian S. StangelandKristian S. Stangeland
5b21f4d61c3Don't cache equivalent converters in StructureModifier. This should hopefully fix a memory leak discovered by Stevenpcc (thanks).
Kristian S. StangelandKristian S. Stangeland
1141c0ba718Ignore NuSuchElementExceptions when removing channel handlers.
Kristian S. StangelandKristian S. Stangeland
80677993066MMerge pull request #48 from glen3b/patch-1Minor improvements to ClassLoader
Glen HusmanGlen Husman
1ee68d4e091attemptLoadFrom will throw IllegalArgumentException for arrays of length1 with a null element
Kristian S. StangelandKristian S. Stangeland
82be6bfecc0May solve a race condition in ticket 220 on BukkitDev.It is possible, though not confirmed, that ProtocolLib has not been fully cleaned up after a "reload" command and the next instance of ProtocolLib is loaded. In that case, it may be possible that a channel is injected in the main thread while its cleanup procedure is still running. This is an attempt to solve this problem. Though, it is not confirmed to work.
Glen HusmanGlen Husman
0f5be7f1f1fAdd ClassSource.empty, ClassSource.attemptLoadFrom will also nottolerate nulls
Kristian S. StangelandKristian S. Stangeland
b272322105aFix a bug preventing ClassSource.retry() from working correctly.We returned the class of the other ClassSource, instead of invoking its loadClass() method.
Kristian S. StangelandKristian S. Stangeland
bbaea894d4aMMerge pull request #49 from glen3b/patch-2Update sample code in readme
Kristian S. StangelandKristian S. Stangeland
d3e37df3438Added the ability to toggle whether or not a given player is injected.We also ensure we can run multiple instances of TinyProtocol without requiring implementers to override getHandlerName(). Also fixed a potential memory leak, as the channel map was set to weakKeys() instead of the correct weakValues().
glen3bglen3b
b2425dcc6b7Update sample code in readmeThe current sample code uses the magic packet IDs, which are deprecated in the current version of the library. This commit changes the sample code to use the non-deprecated enum-like packet identifiers, the sample code which is present on the BukkitDev page for this plugin (with some minor tweaks).
Glen HusmanGlen Husman
95087a5b9f0attemptLoadFrom now ignores null values properly
Glen HusmanGlen Husman
e0449b2db6cAdd ClassSource.attemptLoadFrom methodThis method is an alternative to chaining retry calls
Glen HusmanGlen Husman
324e6de2848Document new fromMap behavior
glen3bglen3b
ccecdf216fdThrow ClassNotFoundException when appropriateCurrently, the ClassSource returned by ClassSource.fromMap will return null if the Class cannot be found (as that is the behavior of maps). However, other ClassSources throw a ClassNotFoundException if the class cannot be loaded. This commit changes the behavior of ClassSource.fromMap to throw a ClassNotFoundException if the class was not found in the map (or was mapped to null). This commit al...
Kristian S. StangelandKristian S. Stangeland
818ac5cbdeeCorrect a bug that would lead to IllegalStateException in plugins.This was caused by the fact that "requireInputBuffer" used findLegacy(int) to get the correct PacketType, instead of findLegacy(int, Sender.CLIENT). The latter is justified by the fact that only client-side packets require an input buffer.
Kristian S. StangelandKristian S. Stangeland
d415bd76430Workaround for ServerConnection not being constructed yet.
Kristian S. StangelandKristian S. Stangeland
180caed6b9fAllow users to construct signed property instances.
Kristian S. StangelandKristian S. Stangeland
a6dfa60d79dMMerge pull request #47 from glen3b/patch-1Update MinecraftReflection exception messages
Kristian S. StangelandKristian S. Stangeland
8a2e696363cAdding partial support for MCPC-Plus 1.7.2.This doesn't include handling the different package names of net.minecraft.util.io.netty in MCPC.
glen3bglen3b
0c9f5e89921Update MinecraftReflection exception messagesThe messages incorrectly identified the minecraft server package as "net.mineraft.server" This commit fixes that Although it is only a minor spelling error, it is worth fixing
Kristian S. StangelandKristian S. Stangeland
71ce362c8e8Add support for reading and writing tile entities.
Kristian S. StangelandKristian S. Stangeland
f9cd2b3db43Fix JavaDoc of a copy-paste error.
Kristian S. StangelandKristian S. Stangeland
2244f986bb6Print a hex dump in the case of very large arrays.
Kristian S. StangelandKristian S. Stangeland
d8e8a88076bAdd the "compare" flag to the "packet add" command.This instructs ProtocolLib to fetch the original state of the packet, before its processed by any packet listeners above LOWEST. Then, it displays this state in the console, along with the final state as retrieved in MONITOR.
Kristian S. StangelandKristian S. Stangeland
1ef602416daAdded the ability to schedule packets after an event has succeeded.Also fixes post listeners and asynchronous packet listeners.
Kristian S. StangelandKristian S. Stangeland
f7c4fd4ec9cAdded support for "post packet events".NetworkMarker now contains a list of post listeners that are invoked (in no particular order) when a packet has been serialize and sent to a player, OR, when it has been enqueued for processing by the server. This works for both 1.7.2+ (Netty) and 1.6.4 and earlier, though the 1.6.4 version has a good deal more overhead.
Kristian S. StangelandKristian S. Stangeland
5185442f35fAdded support for retrieving the signed property map of a profile.In addition, we also allow WrappedGameProfile to be retrieved from a player.
Kristian S. StangelandKristian S. Stangeland
ce8d115b5a3Incrementing to 3.4.0-SNAPSHOT
Kristian S. StangelandKristian S. Stangeland
58e66b80da8Release of 3.3.1
Kristian S. StangelandKristian S. Stangeland
17dda7f032bBetter to fail updating the version number than crashing.If we update the number, we have to also use the "empty file" trick to remove the old file, which will crash ProtocolLib on the first reload. It takes a second reload for it to function at all. It's much better to take the hit on the version number, and avoid this issue altogether. The update method simply wasn't designed for plugins with version numbers in their file name.