Skip to content
This repository was archived by the owner on Dec 29, 2023. It is now read-only.

Commit 220f48b

Browse files
authored
Patches cleanup & fixes (#112)
Changes: - Remove unnecessary patches - GH-89 Clean patches and their authors - GH-105 Fix invalid projectiles knockback - GH-109 Fix 1.7 not working properly - Remove `[Paper-0196] Fix block break desync` patch - it was implemented in really weird way - Add `[Tuinity-0051] Optimise non-flush packet sending` patch - it was listed as PandaSpigot patch, but it wasn't even implemented
1 parent 6f29a72 commit 220f48b

File tree

266 files changed

+3483
-6060
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

266 files changed

+3483
-6060
lines changed

README.md

+11-10
Original file line numberDiff line numberDiff line change
@@ -75,32 +75,37 @@ Titanium implements patches from other engines as well. **All credits go to the
7575
[Paper-0072] Fix Furnace cook time bug when lagging by Aikar
7676
[Paper-0072] Only process BlockPhysicsEvent if a plugin has a listener by Aikar
7777
[Paper-0076] Optimized light level comaprsions by Aikar
78+
[Paper-0077] Add World Util Methods by Aikar
7879
[Paper-0085] Use a Shared Random for Entities
7980
[Paper-0090] Improve Maps (in item frames) performance and bug fixes by Aikar
8081
[Paper-0101] Do not load chunks for light check by Aikar
8182
[Paper-0116] Fix Bugs with Spigot Mob Spawn Logic by Aikar
8283
[Paper-0118] Prevent Fire from loading chunks by Aikar
8384
[Paper-0121] Reduce IO ops opening a new region
8485
[Paper-0127] Do not load chunks for pathfinding by Aikar
86+
[Paper-0135] Avoid blocking on Network Manager creation by Aikar
87+
[Paper-0137] Faster redstone torch rapid clock removal by Martin Panzer
8588
[Paper-0144] Improve Minecraft Hopper Performance
8689
[Paper-0156] Auto Save Improvements by Aikar
8790
[Paper-0161] Disable Vanilla Chunk GC by Aikar
8891
[Paper-0168] Disable ticking of snow blocks
8992
[Paper-0168] Cache user authenticator threads by vemacs
9093
[Paper-0173] Optimize World.isLoaded(BlockPosition)
94+
[Paper-0175] Don't let fishinghooks use portals by Zach Brown
9195
[Paper-0180] Server Tick Events
9296
[Paper-0186] Prevent Pathfinding out of World Border by Aikar
9397
[Paper-0192] Make legacy ping handler more reliable by Minecrell
94-
[Paper-0196] Fix block break desync by Michael Himing
9598
[Paper-0201] Remove CraftScheduler Async Task Debugger by Aikar
9699
[Paper-0202] Shame on you Mojang moves chunk loading off https thread
100+
[Paper-0210] Use TerminalConsoleAppender for console improvements by Minecrell
97101
[Paper-0232] Fix MC-117075: TE Unload Lag Spike by mezz
98102
[Paper-0276] Improved Async Task Scheduler by Aikar
99103
[Paper-0088/0277] Ability to change PlayerProfile in AsyncPreLoginEvent by Aikar
100104
[Paper-0287] MC-124833 by Zach Brown
101105
[Paper-0302] Don't load chunks for villager door check by Aikar
102106
[Paper-0313] Optimized world time updates by Aikar
103107
[Paper-0321] Cleanup allocated favicon ByteBuf
108+
[Paper-0328] Optimize Network Manager and add advanced packet support by Aikar
104109
[Paper-0332] Add More information to Entity.toString() by Aikar
105110
[Paper-0342] Always process chunk removal in removeEntity by Aikar 2018
106111
[Paper-0344] [MC-111480] Start Entity ID's at 1
@@ -119,6 +124,7 @@ Titanium implements patches from other engines as well. **All credits go to the
119124
[Paper-0206/0432] Add Raw Byte ItemStack Serialization by Mariell Hoversholm
120125
[Paper-0451] Load Chunks for Login Asynchronously by Aikar
121126
[Paper-0242/0614] Player Chunk Load/Unload Events by ysl3000
127+
[Paper-0740] Add Unix domain socket support by Andrew Steinborn
122128
[Paper-0797] Use Velocity compression and cipher natives by Elier
123129
124130
[Taco-0006] Fix hopper lag by making entities look for hoppers by Techcable
@@ -172,24 +178,15 @@ Titanium implements patches from other engines as well. **All credits go to the
172178
[PandaSpigot-0005] Add internal setMaxStackSize method for materials by hpfxd
173179
[PandaSpigot-0004/0005] Backport PlayerHandshakeEvent from Paper by hpfxd
174180
[PandaSpigot-0006] Update to Netty 4.1.x by hpfxd
175-
[PandaSpigot-0007] Add Unix domain socket support by hpfxd
176181
[PandaSpigot-0008] Remove hacky stackable buckets code by hpfxd
177182
[PandaSpigot-0009] Improved plugins command by hpfxd
178-
[PandaSpigot-0010] Optimize Network Manager and add advanced packet support by hpfxd
179-
[PandaSpigot-0011] Allow controlled flushing for network manager by hpfxd
180-
[PandaSpigot-0012] Consolidate flush calls for entity tracker packets by hpfxd
181-
[PandaSpigot-0013] Optimise non-flush packet sending by hpfxd
182-
[PandaSpigot-0028] Avoid blocking on Network Manager creation by hpfxd
183183
[PandaSpigot-0033] Configurable arrow trajectory by hpfxd
184-
[PandaSpigot-0034] Prevent fishing hooks from using portals by hpfxd
185184
[PandaSpigot-0010/0037] Backport PlayerProfile API by hpfxd
186185
[PandaSpigot-0039] Optimize VarInt reading and writing by hpfxd
187186
[PandaSpigot-0040] Various micro-optimizations for PacketDataSerializer by hpfxd
188-
[PandaSpigot-0041] Use TerminalConsoleAppender for console improvements by hpfxd
189187
[PandaSpigpt-0049] Add setting for proxy online mode status by hpfxd
190188
[PandaSpigot-0050] Metrics by hpfxd
191189
[PandaSpigot-0054] Disconnect for payload errors by uRyanxD
192-
[PandaSpigot-0056] Faster redstone torch rapid clock removal by uRyanxD
193190
[PandaSpigot-0060] Optimise removeQueue by hpfxd
194191
195192
[IonSpigot-0003] Explosion Improvements by SuicidalKids
@@ -221,6 +218,10 @@ Titanium implements patches from other engines as well. **All credits go to the
221218
[Purpur-0049/0290] Remove Timings by BillyGalbreath
222219
[Purpur-0291] Remove Mojang Profiler by BillyGalbreath
223220
221+
[Tuinity-0008] Allow controlled flushing for network manager by Spottedleaf
222+
[Tuinity-0046] Consolidate flush calls for entity tracker packets by Spottedleaf
223+
[Tuinity-0051] Optimise non-flush packet sending by Spottedleaf
224+
224225
[Yatopia-0030] Don't save Fireworks and Arrows by tr7zw
225226
[Yatopia-0047] Smarter statistics ticking
226227

build.gradle

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ allprojects {
1616
}
1717

1818
repositories {
19+
mavenCentral()
1920
maven { url 'https://libraries.minecraft.net' }
2021
maven { url 'https://repo.titanvale.net/releases' }
2122
maven { url 'https://repo.titanvale.net/snapshots' }

patches/api/0011-Setup-Gradle-project.patch renamed to patches/api/0001-Setup-Gradle-project.patch

+52-79
Original file line numberDiff line numberDiff line change
@@ -20,29 +20,28 @@ index edf9e5c3afdfcb9e357974d6536d25bd828d67b0..dfa15b1d499bd8bf1cb6b81441d0d409
2020

2121
diff --git a/build.gradle b/build.gradle
2222
new file mode 100644
23-
index 0000000000000000000000000000000000000000..45aafcce4ef6ae0e0fa01eba5f174a501f1a3ca0
23+
index 0000000000000000000000000000000000000000..a9a3e5af8057128b24b51fe07a7cd2914b205991
2424
--- /dev/null
2525
+++ b/build.gradle
26-
@@ -0,0 +1,45 @@
26+
@@ -0,0 +1,56 @@
2727
+dependencies {
2828
+ // Minecraft libraries start
29-
+ api 'commons-lang:commons-lang:2.6'
30-
+ api 'com.googlecode.json-simple:json-simple:1.1.1'
31-
+ api 'org.avaje:ebean:2.8.1'
32-
+ api 'org.yaml:snakeyaml:1.15'
33-
+ api 'net.md-5:bungeecord-chat:1.8-SNAPSHOT'
34-
+
35-
+ // bundled with Minecraft, should be kept in sync
3629
+ api 'com.google.guava:guava:17.0'
3730
+ api 'com.google.code.gson:gson:2.2.4'
31+
+ api 'net.md-5:bungeecord-chat:1.8-SNAPSHOT'
32+
+ api 'org.yaml:snakeyaml:1.15'
33+
+ api ('com.googlecode.json-simple:json-simple:1.1.1') {
34+
+ transitive = false
35+
+ }
36+
+ api 'org.avaje:ebean:2.8.1'
37+
+ api 'commons-lang:commons-lang:2.6'
3838
+
3939
+ compileOnlyApi 'net.sf.trove4j:trove4j:3.0.3' // provided by CraftBukkit
4040
+ // Minecraft libraries end
4141
+
42-
+ // Titanium start - Use okaeri-configs for server configuration
43-
+ api 'eu.okaeri:okaeri-configs-yaml-bukkit:4.0.6'
44-
+ api 'eu.okaeri:okaeri-configs-serdes-commons:4.0.6'
45-
+ // Titanium end
42+
+ // Titanium libraries start
43+
+ api 'org.apache.commons:commons-lang3:3.12.0' // Titanium - updated commons-lang3 to 3.12.0 // Titanium - Add commons-lang3 to API
44+
+ // Titanium libraries end
4645
+
4746
+ testImplementation 'junit:junit:4.13.2' // Titanium - Updated junit to 4.13.2
4847
+ testImplementation 'org.hamcrest:hamcrest-library:1.3'
@@ -57,6 +56,18 @@ index 0000000000000000000000000000000000000000..45aafcce4ef6ae0e0fa01eba5f174a50
5756
+ file.write "version=${project.version}"
5857
+}
5958
+
59+
+shadowJar {
60+
+ dependsOn generateApiVersioningFile
61+
+ from(layout.buildDirectory.file("pom.properties")) {
62+
+ into("META-INF/maven/${project.group}/${project.name.toLowerCase()}")
63+
+ }
64+
+
65+
+ manifest {
66+
+ attributes(
67+
+ "Automatic-Module-Name": "org.bukkit"
68+
+ )
69+
+ }
70+
+}
6071
+jar {
6172
+ dependsOn generateApiVersioningFile
6273
+ from(layout.buildDirectory.file("pom.properties")) {
@@ -72,42 +83,49 @@ index 0000000000000000000000000000000000000000..45aafcce4ef6ae0e0fa01eba5f174a50
7283
\ No newline at end of file
7384
diff --git a/pom.xml b/pom.xml
7485
deleted file mode 100644
75-
index 2ff99a888a04e285fb9bf10cb5cf5560a60227ba..0000000000000000000000000000000000000000
86+
index fe9d6d265b686ae1c373e4fdcd202b16673366f1..0000000000000000000000000000000000000000
7687
--- a/pom.xml
7788
+++ /dev/null
78-
@@ -1,187 +0,0 @@
89+
@@ -1,161 +0,0 @@
7990
-
8091
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8192
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
8293
- <modelVersion>4.0.0</modelVersion>
8394
-
8495
- <parent>
85-
- <groupId>net.titanvale</groupId>
86-
- <artifactId>titanium-parent</artifactId>
87-
- <version>1.8.8-SNAPSHOT</version>
96+
- <groupId>org.github.paperspigot</groupId>
97+
- <artifactId>paperspigot-parent</artifactId>
98+
- <version>dev-SNAPSHOT</version>
8899
- </parent>
89100
-
90-
- <name>Titanium-API</name>
91-
- <artifactId>titanium-api</artifactId>
101+
- <groupId>org.github.paperspigot</groupId>
102+
- <artifactId>paperspigot-api</artifactId>
92103
- <version>1.8.8-R0.1-SNAPSHOT</version>
93104
- <packaging>jar</packaging>
94105
-
106+
- <name>PaperSpigot-API</name>
107+
- <url>https://hub.spigotmc.org/stash/projects/PAPER/</url>
108+
- <description>An enhanced plugin API for Minecraft servers.</description>
109+
-
95110
- <properties>
96111
- <!--PaperSpigot - Bump to 1.8 - This will haunt me -->
97112
- <additionalparam>-Xdoclint:none</additionalparam>
98113
- <maven.compiler.source>1.8</maven.compiler.source>
99114
- <maven.compiler.target>1.8</maven.compiler.target>
100115
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
101-
- <!-- Titanium - since submodules inherit this from titanium-parent -->
102-
- <maven.deploy.skip>false</maven.deploy.skip>
103116
- </properties>
104117
-
105-
- <repositories>
118+
- <!-- just until we get deployment to central approved -->
119+
- <distributionManagement>
106120
- <repository>
107-
- <id>jitpack-io</id>
108-
- <url>https://jitpack.io</url>
121+
- <id>destroystokyo-releases</id>
122+
- <url>https://repo.destroystokyo.com/content/repositories/releases/</url>
109123
- </repository>
110-
- </repositories>
124+
- <snapshotRepository>
125+
- <id>destroystokyo-snapshots</id>
126+
- <url>https://repo.destroystokyo.com/content/repositories/snapshots/</url>
127+
- </snapshotRepository>
128+
- </distributionManagement>
111129
-
112130
- <!-- required until fixed plexus-compiler-eclipse is deployed -->
113131
- <pluginRepositories>
@@ -119,11 +137,6 @@ index 2ff99a888a04e285fb9bf10cb5cf5560a60227ba..00000000000000000000000000000000
119137
-
120138
- <dependencies>
121139
- <dependency>
122-
- <groupId>com.google.code.findbugs</groupId>
123-
- <artifactId>jsr305</artifactId>
124-
- <version>3.0.2</version>
125-
- </dependency>
126-
- <dependency>
127140
- <groupId>net.sf.trove4j</groupId>
128141
- <artifactId>trove4j</artifactId>
129142
- <version>3.0.3</version>
@@ -154,7 +167,7 @@ index 2ff99a888a04e285fb9bf10cb5cf5560a60227ba..00000000000000000000000000000000
154167
- <dependency>
155168
- <groupId>com.google.code.gson</groupId>
156169
- <artifactId>gson</artifactId>
157-
- <version>2.2.4</version>
170+
- <version>2.2.4</version>
158171
- </dependency>
159172
- <dependency>
160173
- <groupId>org.avaje</groupId>
@@ -169,27 +182,18 @@ index 2ff99a888a04e285fb9bf10cb5cf5560a60227ba..00000000000000000000000000000000
169182
- <scope>compile</scope>
170183
- </dependency>
171184
- <dependency>
172-
- <groupId>com.github.Electroid</groupId>
173-
- <artifactId>BungeeCord</artifactId>
174-
- <version>master</version>
185+
- <groupId>net.md-5</groupId>
186+
- <artifactId>bungeecord-chat</artifactId>
187+
- <version>1.8-SNAPSHOT</version>
175188
- <type>jar</type>
176189
- <scope>compile</scope>
177190
- </dependency>
178-
- <dependency>
179-
- <groupId>eu.okaeri</groupId>
180-
- <artifactId>okaeri-configs-yaml-bukkit</artifactId>
181-
- <version>4.0.0-beta18</version>
182-
- </dependency>
183-
- <dependency>
184-
- <groupId>eu.okaeri</groupId>
185-
- <artifactId>okaeri-configs-serdes-commons</artifactId>
186-
- <version>4.0.0-beta18</version>
187-
- </dependency>
191+
-
188192
- <!-- testing -->
189193
- <dependency>
190194
- <groupId>junit</groupId>
191195
- <artifactId>junit</artifactId>
192-
- <version>4.13.2</version>
196+
- <version>4.12</version>
193197
- <scope>test</scope>
194198
- </dependency>
195199
- <dependency>
@@ -206,7 +210,7 @@ index 2ff99a888a04e285fb9bf10cb5cf5560a60227ba..00000000000000000000000000000000
206210
- <groupId>org.apache.maven.plugins</groupId>
207211
- <artifactId>maven-compiler-plugin</artifactId>
208212
- <!-- versions after this appear to be broken -->
209-
- <version>3.10.1</version>
213+
- <version>3.1</version>
210214
- <configuration>
211215
- <!-- we use the Eclipse compiler as it doesn't need a JDK -->
212216
- <compilerId>eclipse</compilerId>
@@ -225,7 +229,7 @@ index 2ff99a888a04e285fb9bf10cb5cf5560a60227ba..00000000000000000000000000000000
225229
- <plugin>
226230
- <groupId>org.apache.maven.plugins</groupId>
227231
- <artifactId>maven-shade-plugin</artifactId>
228-
- <version>3.3.0</version>
232+
- <version>2.3</version>
229233
- <executions>
230234
- <execution>
231235
- <phase>package</phase>
@@ -241,25 +245,6 @@ index 2ff99a888a04e285fb9bf10cb5cf5560a60227ba..00000000000000000000000000000000
241245
- <shadedArtifactAttached>true</shadedArtifactAttached>
242246
- </configuration>
243247
- </plugin>
244-
- <plugin>
245-
- <groupId>org.apache.maven.plugins</groupId>
246-
- <artifactId>maven-source-plugin</artifactId>
247-
- <version>3.2.0</version>
248-
- <executions>
249-
- <execution>
250-
- <id>attach-sources</id>
251-
- <phase>verify</phase>
252-
- <goals>
253-
- <goal>jar-no-fork</goal>
254-
- </goals>
255-
- </execution>
256-
- </executions>
257-
- </plugin>
258-
- <plugin>
259-
- <groupId>org.apache.maven.plugins</groupId>
260-
- <artifactId>maven-deploy-plugin</artifactId>
261-
- <version>3.0.0-M2</version>
262-
- </plugin>
263248
- </plugins>
264249
- </build>
265250
-</project>
@@ -284,15 +269,3 @@ index 7e89b97b60d547c75bde6d54f1512b0277099034..56e932b84ee8cde6a86d7a4f4cc562dd
284269
} catch (Exception ignored) {}
285270

286271
new AuthorNagException("Deprecated use of CustomTimingsHandler. Please Switch to Timings.of ASAP").printStackTrace();
287-
diff --git a/src/test/java/org/bukkit/DifficultyTest.java b/src/test/java/org/bukkit/DifficultyTest.java
288-
index 293e283a22fdc2abb387c29239cc3391f7cb6a4f..9ef39817d0df126e74c121073b71b3a881e949f8 100644
289-
--- a/src/test/java/org/bukkit/DifficultyTest.java
290-
+++ b/src/test/java/org/bukkit/DifficultyTest.java
291-
@@ -2,6 +2,7 @@ package org.bukkit;
292-
293-
import static org.hamcrest.CoreMatchers.is;
294-
import static org.junit.Assert.assertThat;
295-
+import static org.junit.Assert.assertTrue;
296-
297-
import org.junit.Test;
298-

0 commit comments

Comments
 (0)