diff --git a/Examples/ItemDisguise/.gitignore b/Examples/ItemDisguise/.gitignore
deleted file mode 100644
index 71db6a9a..00000000
--- a/Examples/ItemDisguise/.gitignore
+++ /dev/null
@@ -1,165 +0,0 @@
-#################
-## Eclipse
-#################
-
-*.pydevproject
-.project
-.metadata
-bin/
-tmp/
-*.tmp
-*.bak
-*.swp
-*~.nib
-local.properties
-.classpath
-.settings/
-.loadpath
-target/
-.gitignore
-
-# External tool builders
-.externalToolBuilders/
-
-# Locally stored "Eclipse launch configurations"
-*.launch
-
-# CDT-specific
-.cproject
-
-# PDT-specific
-.buildpath
-
-
-#################
-## Visual Studio
-#################
-
-## Ignore Visual Studio temporary files, build results, and
-## files generated by popular Visual Studio add-ons.
-
-# User-specific files
-*.suo
-*.user
-*.sln.docstates
-
-# Build results
-[Dd]ebug/
-[Rr]elease/
-*_i.c
-*_p.c
-*.ilk
-*.meta
-*.obj
-*.pch
-*.pdb
-*.pgc
-*.pgd
-*.rsp
-*.sbr
-*.tlb
-*.tli
-*.tlh
-*.tmp
-*.vspscc
-.builds
-*.dotCover
-
-## TODO: If you have NuGet Package Restore enabled, uncomment this
-#packages/
-
-# Visual C++ cache files
-ipch/
-*.aps
-*.ncb
-*.opensdf
-*.sdf
-
-# Visual Studio profiler
-*.psess
-*.vsp
-
-# ReSharper is a .NET coding add-in
-_ReSharper*
-
-# Installshield output folder
-[Ee]xpress
-
-# DocProject is a documentation generator add-in
-DocProject/buildhelp/
-DocProject/Help/*.HxT
-DocProject/Help/*.HxC
-DocProject/Help/*.hhc
-DocProject/Help/*.hhk
-DocProject/Help/*.hhp
-DocProject/Help/Html2
-DocProject/Help/html
-
-# Click-Once directory
-publish
-
-# Others
-[Bb]in
-[Oo]bj
-sql
-TestResults
-*.Cache
-ClientBin
-stylecop.*
-~$*
-*.dbmdl
-Generated_Code #added for RIA/Silverlight projects
-
-# Backup & report files from converting an old project file to a newer
-# Visual Studio version. Backup files are not needed, because we have git ;-)
-_UpgradeReport_Files/
-Backup*/
-UpgradeLog*.XML
-
-
-
-############
-## Windows
-############
-
-# Windows image file caches
-Thumbs.db
-
-# Folder config file
-Desktop.ini
-
-
-#############
-## Python
-#############
-
-*.py[co]
-
-# Packages
-*.egg
-*.egg-info
-dist
-build
-eggs
-parts
-bin
-var
-sdist
-develop-eggs
-.installed.cfg
-
-# Installer logs
-pip-log.txt
-
-# Unit test / coverage reports
-.coverage
-.tox
-
-#Translations
-*.mo
-
-#Mr Developer
-.mr.developer.cfg
-
-# Mac crap
-.DS_Store
diff --git a/Examples/TinyProtocol/.gitignore b/Examples/TinyProtocol/.gitignore
deleted file mode 100644
index 71db6a9a..00000000
--- a/Examples/TinyProtocol/.gitignore
+++ /dev/null
@@ -1,165 +0,0 @@
-#################
-## Eclipse
-#################
-
-*.pydevproject
-.project
-.metadata
-bin/
-tmp/
-*.tmp
-*.bak
-*.swp
-*~.nib
-local.properties
-.classpath
-.settings/
-.loadpath
-target/
-.gitignore
-
-# External tool builders
-.externalToolBuilders/
-
-# Locally stored "Eclipse launch configurations"
-*.launch
-
-# CDT-specific
-.cproject
-
-# PDT-specific
-.buildpath
-
-
-#################
-## Visual Studio
-#################
-
-## Ignore Visual Studio temporary files, build results, and
-## files generated by popular Visual Studio add-ons.
-
-# User-specific files
-*.suo
-*.user
-*.sln.docstates
-
-# Build results
-[Dd]ebug/
-[Rr]elease/
-*_i.c
-*_p.c
-*.ilk
-*.meta
-*.obj
-*.pch
-*.pdb
-*.pgc
-*.pgd
-*.rsp
-*.sbr
-*.tlb
-*.tli
-*.tlh
-*.tmp
-*.vspscc
-.builds
-*.dotCover
-
-## TODO: If you have NuGet Package Restore enabled, uncomment this
-#packages/
-
-# Visual C++ cache files
-ipch/
-*.aps
-*.ncb
-*.opensdf
-*.sdf
-
-# Visual Studio profiler
-*.psess
-*.vsp
-
-# ReSharper is a .NET coding add-in
-_ReSharper*
-
-# Installshield output folder
-[Ee]xpress
-
-# DocProject is a documentation generator add-in
-DocProject/buildhelp/
-DocProject/Help/*.HxT
-DocProject/Help/*.HxC
-DocProject/Help/*.hhc
-DocProject/Help/*.hhk
-DocProject/Help/*.hhp
-DocProject/Help/Html2
-DocProject/Help/html
-
-# Click-Once directory
-publish
-
-# Others
-[Bb]in
-[Oo]bj
-sql
-TestResults
-*.Cache
-ClientBin
-stylecop.*
-~$*
-*.dbmdl
-Generated_Code #added for RIA/Silverlight projects
-
-# Backup & report files from converting an old project file to a newer
-# Visual Studio version. Backup files are not needed, because we have git ;-)
-_UpgradeReport_Files/
-Backup*/
-UpgradeLog*.XML
-
-
-
-############
-## Windows
-############
-
-# Windows image file caches
-Thumbs.db
-
-# Folder config file
-Desktop.ini
-
-
-#############
-## Python
-#############
-
-*.py[co]
-
-# Packages
-*.egg
-*.egg-info
-dist
-build
-eggs
-parts
-bin
-var
-sdist
-develop-eggs
-.installed.cfg
-
-# Installer logs
-pip-log.txt
-
-# Unit test / coverage reports
-.coverage
-.tox
-
-#Translations
-*.mo
-
-#Mr Developer
-.mr.developer.cfg
-
-# Mac crap
-.DS_Store
diff --git a/ProtocolLib/pom.xml b/ProtocolLib/pom.xml
index 82b115fa..5a25cc3d 100644
--- a/ProtocolLib/pom.xml
+++ b/ProtocolLib/pom.xml
@@ -12,7 +12,7 @@
com.comphenix.protocol
ProtocolLib-Parent
- dev-SNAPSHOT
+ v3-SNAPSHOT
../
diff --git a/ProtocolLib/src/main/java/com/comphenix/protocol/metrics/Metrics.java b/ProtocolLib/src/main/java/com/comphenix/protocol/metrics/Metrics.java
index 1e0cfb74..e22d5f75 100644
--- a/ProtocolLib/src/main/java/com/comphenix/protocol/metrics/Metrics.java
+++ b/ProtocolLib/src/main/java/com/comphenix/protocol/metrics/Metrics.java
@@ -535,7 +535,7 @@ public class Metrics {
}
// Appends a json encoded key/value pair to the given string builder.
- private static void appendJSONPair(StringBuilder json, String key, String value) throws UnsupportedEncodingException {
+ private static void appendJSONPair(StringBuilder json, String key, String value) {
boolean isValueNumeric = false;
try {
diff --git a/ProtocolLib/src/test/java/com/comphenix/protocol/PacketTypeTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/PacketTypeTest.java
index 106c2cf7..33803e04 100644
--- a/ProtocolLib/src/test/java/com/comphenix/protocol/PacketTypeTest.java
+++ b/ProtocolLib/src/test/java/com/comphenix/protocol/PacketTypeTest.java
@@ -16,7 +16,7 @@ import com.comphenix.protocol.injector.netty.NettyProtocolRegistry;
public class PacketTypeTest {
@BeforeClass
- public static void initializeReflection() throws IllegalAccessException {
+ public static void initializeReflection() {
BukkitInitialization.initializePackage();
}
diff --git a/ProtocolLib/src/test/java/com/comphenix/protocol/reflect/cloning/AggregateClonerTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/reflect/cloning/AggregateClonerTest.java
index d8b0925c..a6dbb0f2 100644
--- a/ProtocolLib/src/test/java/com/comphenix/protocol/reflect/cloning/AggregateClonerTest.java
+++ b/ProtocolLib/src/test/java/com/comphenix/protocol/reflect/cloning/AggregateClonerTest.java
@@ -11,8 +11,9 @@ import org.junit.Test;
import com.comphenix.protocol.BukkitInitialization;
public class AggregateClonerTest {
+
@BeforeClass
- public static void initializeBukkit() throws IllegalAccessException {
+ public static void initializeBukkit() {
BukkitInitialization.initializePackage();
}
diff --git a/ProtocolLib/src/test/java/com/comphenix/protocol/utility/MinecraftMethodsTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/utility/MinecraftMethodsTest.java
index c3fc6a3b..013ea076 100644
--- a/ProtocolLib/src/test/java/com/comphenix/protocol/utility/MinecraftMethodsTest.java
+++ b/ProtocolLib/src/test/java/com/comphenix/protocol/utility/MinecraftMethodsTest.java
@@ -8,8 +8,9 @@ import org.junit.Test;
import com.comphenix.protocol.BukkitInitialization;
public class MinecraftMethodsTest {
+
@BeforeClass
- public static void initializeReflection() throws IllegalAccessException {
+ public static void initializeReflection() {
BukkitInitialization.initializePackage();
}
diff --git a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/ChunkCoordIntPairTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/ChunkCoordIntPairTest.java
index 5776924b..1463602f 100644
--- a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/ChunkCoordIntPairTest.java
+++ b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/ChunkCoordIntPairTest.java
@@ -8,8 +8,9 @@ import org.junit.Test;
import com.comphenix.protocol.BukkitInitialization;
public class ChunkCoordIntPairTest {
+
@BeforeClass
- public static void initializeBukkit() throws IllegalAccessException {
+ public static void initializeBukkit() {
BukkitInitialization.initializePackage();
}
diff --git a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/CloningTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/CloningTest.java
index 917a9a9e..493f6476 100644
--- a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/CloningTest.java
+++ b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/CloningTest.java
@@ -9,8 +9,9 @@ import com.comphenix.protocol.BukkitInitialization;
import com.comphenix.protocol.reflect.cloning.AggregateCloner;
public class CloningTest {
+
@BeforeClass
- public static void initializeBukkit() throws IllegalAccessException {
+ public static void initializeBukkit() {
BukkitInitialization.initializePackage();
}
diff --git a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/EnumWrappersTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/EnumWrappersTest.java
index a272bbd5..90be6d06 100644
--- a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/EnumWrappersTest.java
+++ b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/EnumWrappersTest.java
@@ -27,7 +27,7 @@ public class EnumWrappersTest {
}
@BeforeClass
- public static void initializeBukkit() throws IllegalAccessException {
+ public static void initializeBukkit() {
BukkitInitialization.initializePackage();
}
diff --git a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedAttributeTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedAttributeTest.java
index 6e5e96d2..5f046462 100644
--- a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedAttributeTest.java
+++ b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedAttributeTest.java
@@ -26,7 +26,7 @@ public class WrappedAttributeTest {
private WrappedAttribute attribute;
@BeforeClass
- public static void initializeBukkit() throws IllegalAccessException {
+ public static void initializeBukkit() {
BukkitInitialization.initializePackage();
}
diff --git a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedBlockDataTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedBlockDataTest.java
index 2b5e8320..79148a00 100644
--- a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedBlockDataTest.java
+++ b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedBlockDataTest.java
@@ -32,7 +32,7 @@ import com.comphenix.protocol.utility.MinecraftReflection;
public class WrappedBlockDataTest {
@BeforeClass
- public static void initializeBukkit() throws IllegalAccessException {
+ public static void initializeBukkit() {
BukkitInitialization.initializePackage();
}
diff --git a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedChatComponentTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedChatComponentTest.java
index ebd58442..c71ebd33 100644
--- a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedChatComponentTest.java
+++ b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedChatComponentTest.java
@@ -8,8 +8,9 @@ import org.junit.Test;
import com.comphenix.protocol.BukkitInitialization;
public class WrappedChatComponentTest {
+
@BeforeClass
- public static void initializeBukkit() throws IllegalAccessException {
+ public static void initializeBukkit() {
BukkitInitialization.initializePackage();
}
diff --git a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedGameProfileTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedGameProfileTest.java
index 45d3d955..317b5815 100644
--- a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedGameProfileTest.java
+++ b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedGameProfileTest.java
@@ -11,8 +11,9 @@ import com.comphenix.protocol.BukkitInitialization;
import com.google.common.base.Charsets;
public class WrappedGameProfileTest {
+
@BeforeClass
- public static void initializeBukkit() throws IllegalAccessException {
+ public static void initializeBukkit() {
BukkitInitialization.initializePackage();
}
diff --git a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedIntHashMapTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedIntHashMapTest.java
index 8cd34366..ea2d5ef1 100644
--- a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedIntHashMapTest.java
+++ b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedIntHashMapTest.java
@@ -9,8 +9,9 @@ import org.junit.Test;
import com.comphenix.protocol.BukkitInitialization;
public class WrappedIntHashMapTest {
+
@BeforeClass
- public static void initializeBukkit() throws IllegalAccessException {
+ public static void initializeBukkit() {
BukkitInitialization.initializePackage();
}
diff --git a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedServerPingTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedServerPingTest.java
index af9ee9e1..3301c199 100644
--- a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedServerPingTest.java
+++ b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/WrappedServerPingTest.java
@@ -13,8 +13,9 @@ import com.comphenix.protocol.wrappers.WrappedServerPing.CompressedImage;
import com.google.common.io.Resources;
public class WrappedServerPingTest {
+
@BeforeClass
- public static void initializeBukkit() throws IllegalAccessException {
+ public static void initializeBukkit() {
BukkitInitialization.initializePackage();
}
diff --git a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/nbt/NbtCompoundTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/nbt/NbtCompoundTest.java
index d5cc001a..32e5cbf8 100644
--- a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/nbt/NbtCompoundTest.java
+++ b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/nbt/NbtCompoundTest.java
@@ -25,8 +25,9 @@ import org.junit.Test;
import com.comphenix.protocol.BukkitInitialization;
public class NbtCompoundTest {
+
@BeforeClass
- public static void initializeBukkit() throws IllegalAccessException {
+ public static void initializeBukkit() {
BukkitInitialization.initializePackage();
}
diff --git a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/nbt/io/NbtConfigurationSerializerTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/nbt/io/NbtConfigurationSerializerTest.java
index a1fa8495..8a2232bd 100644
--- a/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/nbt/io/NbtConfigurationSerializerTest.java
+++ b/ProtocolLib/src/test/java/com/comphenix/protocol/wrappers/nbt/io/NbtConfigurationSerializerTest.java
@@ -11,8 +11,9 @@ import com.comphenix.protocol.wrappers.nbt.NbtCompound;
import com.comphenix.protocol.wrappers.nbt.NbtFactory;
public class NbtConfigurationSerializerTest {
+
@BeforeClass
- public static void initializeBukkit() throws IllegalAccessException {
+ public static void initializeBukkit() {
BukkitInitialization.initializePackage();
}
diff --git a/Examples/ItemDisguise/pom.xml b/modules/ItemDisguise/pom.xml
similarity index 100%
rename from Examples/ItemDisguise/pom.xml
rename to modules/ItemDisguise/pom.xml
diff --git a/Examples/ItemDisguise/src/main/java/com/comphenix/itemdisguise/HideEnchantmentsListener.java b/modules/ItemDisguise/src/main/java/com/comphenix/itemdisguise/HideEnchantmentsListener.java
similarity index 100%
rename from Examples/ItemDisguise/src/main/java/com/comphenix/itemdisguise/HideEnchantmentsListener.java
rename to modules/ItemDisguise/src/main/java/com/comphenix/itemdisguise/HideEnchantmentsListener.java
diff --git a/Examples/ItemDisguise/src/main/java/com/comphenix/itemdisguise/ItemDisguiseMod.java b/modules/ItemDisguise/src/main/java/com/comphenix/itemdisguise/ItemDisguiseMod.java
similarity index 100%
rename from Examples/ItemDisguise/src/main/java/com/comphenix/itemdisguise/ItemDisguiseMod.java
rename to modules/ItemDisguise/src/main/java/com/comphenix/itemdisguise/ItemDisguiseMod.java
diff --git a/Examples/ItemDisguise/src/main/java/plugin.yml b/modules/ItemDisguise/src/main/java/plugin.yml
similarity index 100%
rename from Examples/ItemDisguise/src/main/java/plugin.yml
rename to modules/ItemDisguise/src/main/java/plugin.yml
diff --git a/Examples/TinyProtocol/pom.xml b/modules/TinyProtocol/pom.xml
similarity index 73%
rename from Examples/TinyProtocol/pom.xml
rename to modules/TinyProtocol/pom.xml
index e6167cf3..e08b0248 100644
--- a/Examples/TinyProtocol/pom.xml
+++ b/modules/TinyProtocol/pom.xml
@@ -3,10 +3,17 @@
4.0.0
com.comphenix.tinyprotocol
TinyProtocol
- 0.2.0
+ 1.0.0-SNAPSHOT
TinyProtocol
Intercept packets without ProtocolLib.
+
+ com.comphenix.protocol
+ ProtocolLib-Parent
+ v3-SNAPSHOT
+ ../
+
+
spigot-repo
@@ -35,6 +42,34 @@
1.6
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+ 2.5
+
+
+ false
+
+ TinyProtocol
+ ../../target/
+
+
+
+
+ maven-javadoc-plugin
+ 2.7
+
+
+ package
+ attach-javadocs
+
+
+
+ true
+
+
+
@@ -42,12 +77,12 @@
org.spigotmc
spigot-api
- 1.8.6-R0.1-SNAPSHOT
+ 1.8.7-R0.1-SNAPSHOT
org.spigotmc
spigot
- 1.8.6-R0.1-SNAPSHOT
+ 1.8.7-R0.1-SNAPSHOT
provided
diff --git a/Examples/TinyProtocol/src/main/java/com/comphenix/tinyprotocol/ExamplePlugin.java b/modules/TinyProtocol/src/main/java/com/comphenix/tinyprotocol/ExamplePlugin.java
similarity index 100%
rename from Examples/TinyProtocol/src/main/java/com/comphenix/tinyprotocol/ExamplePlugin.java
rename to modules/TinyProtocol/src/main/java/com/comphenix/tinyprotocol/ExamplePlugin.java
diff --git a/Examples/TinyProtocol/src/main/java/com/comphenix/tinyprotocol/Reflection.java b/modules/TinyProtocol/src/main/java/com/comphenix/tinyprotocol/Reflection.java
similarity index 100%
rename from Examples/TinyProtocol/src/main/java/com/comphenix/tinyprotocol/Reflection.java
rename to modules/TinyProtocol/src/main/java/com/comphenix/tinyprotocol/Reflection.java
diff --git a/Examples/TinyProtocol/src/main/java/com/comphenix/tinyprotocol/TinyProtocol.java b/modules/TinyProtocol/src/main/java/com/comphenix/tinyprotocol/TinyProtocol.java
similarity index 100%
rename from Examples/TinyProtocol/src/main/java/com/comphenix/tinyprotocol/TinyProtocol.java
rename to modules/TinyProtocol/src/main/java/com/comphenix/tinyprotocol/TinyProtocol.java
diff --git a/Examples/TinyProtocol/src/main/resources/plugin.yml b/modules/TinyProtocol/src/main/resources/plugin.yml
similarity index 100%
rename from Examples/TinyProtocol/src/main/resources/plugin.yml
rename to modules/TinyProtocol/src/main/resources/plugin.yml
diff --git a/Modules/ProtocolLib-ShadedNetty/pom.xml b/modules/v1_7_R4/pom.xml
similarity index 89%
rename from Modules/ProtocolLib-ShadedNetty/pom.xml
rename to modules/v1_7_R4/pom.xml
index 5399c75d..7bf1c2ec 100644
--- a/Modules/ProtocolLib-ShadedNetty/pom.xml
+++ b/modules/v1_7_R4/pom.xml
@@ -1,9 +1,9 @@
4.0.0
- ShadedNetty
+ ProtocolLib-v1_7_R4
+ ProtocolLib-v1_7_R4
3.6.4-SNAPSHOT
- ShadedNetty
Provides read/write access to the Minecraft protocol.
http://www.spigotmc.org/resources/protocollib.1997/
@@ -12,7 +12,7 @@
com.comphenix.protocol
ProtocolLib-Parent
- dev-SNAPSHOT
+ v3-SNAPSHOT
../../
@@ -87,6 +87,21 @@
false
ProtocolLib
+ ../../target/
+
+
+
+
+ maven-javadoc-plugin
+ 2.7
+
+
+ package
+ attach-javadocs
+
+
+
+ true
@@ -218,8 +233,7 @@
com.comphenix.protocol
ProtocolLib
- ${project.version}
- compile
+ 3.6.4-SNAPSHOT
cglib
diff --git a/Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/guava/Guava10.java b/modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/guava/Guava10.java
similarity index 100%
rename from Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/guava/Guava10.java
rename to modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/guava/Guava10.java
diff --git a/Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedBootstrapList.java b/modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedBootstrapList.java
similarity index 100%
rename from Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedBootstrapList.java
rename to modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedBootstrapList.java
diff --git a/Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedByteBuf.java b/modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedByteBuf.java
similarity index 100%
rename from Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedByteBuf.java
rename to modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedByteBuf.java
diff --git a/Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedByteBufAdapter.java b/modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedByteBufAdapter.java
similarity index 100%
rename from Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedByteBufAdapter.java
rename to modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedByteBufAdapter.java
diff --git a/Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedChannel.java b/modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedChannel.java
similarity index 100%
rename from Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedChannel.java
rename to modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedChannel.java
diff --git a/Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedChannelInjector.java b/modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedChannelInjector.java
similarity index 100%
rename from Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedChannelInjector.java
rename to modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedChannelInjector.java
diff --git a/Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedChannelProxy.java b/modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedChannelProxy.java
similarity index 100%
rename from Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedChannelProxy.java
rename to modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedChannelProxy.java
diff --git a/Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedEventLoopProxy.java b/modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedEventLoopProxy.java
similarity index 100%
rename from Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedEventLoopProxy.java
rename to modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedEventLoopProxy.java
diff --git a/Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedInjectionFactory.java b/modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedInjectionFactory.java
similarity index 100%
rename from Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedInjectionFactory.java
rename to modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedInjectionFactory.java
diff --git a/Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedNetty.java b/modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedNetty.java
similarity index 100%
rename from Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedNetty.java
rename to modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedNetty.java
diff --git a/Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedPipelineProxy.java b/modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedPipelineProxy.java
similarity index 100%
rename from Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedPipelineProxy.java
rename to modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedPipelineProxy.java
diff --git a/Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedProtocolInjector.java b/modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedProtocolInjector.java
similarity index 100%
rename from Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedProtocolInjector.java
rename to modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedProtocolInjector.java
diff --git a/Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedSocketAdapter.java b/modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedSocketAdapter.java
similarity index 100%
rename from Modules/ProtocolLib-ShadedNetty/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedSocketAdapter.java
rename to modules/v1_7_R4/src/main/java/com/comphenix/protocol/compat/netty/shaded/ShadedSocketAdapter.java
diff --git a/pom.xml b/pom.xml
index 788f1fb9..3c16b93f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,12 +3,13 @@
4.0.0
com.comphenix.protocol
ProtocolLib-Parent
- dev-SNAPSHOT
+ v3-SNAPSHOT
ProtocolLib-Parent
ProtocolLib
- Modules/ProtocolLib-ShadedNetty
+ modules/v1_7_R4
+ modules/TinyProtocol
Provides read/write access to the Minecraft protocol.