9
0
mirror of https://github.com/SparklyPower/SparklyPaper.git synced 2025-12-30 12:29:07 +00:00

Add build without Parallel World Ticking

This commit is contained in:
MrPowerGamerBR
2023-11-22 11:29:05 -03:00
parent 8dbc519375
commit b4a0b43344
5 changed files with 33 additions and 8 deletions

View File

@@ -37,3 +37,14 @@ jobs:
with:
name: SparklyPaper Paperclip
path: "build/libs/SparklyPaper-paperclip-*.jar"
- name: Delete Parallel world ticking patch
run: rm patches/server/*-Parallel-world-ticking.patch
- name: Apply Patches
run: ./gradlew applyPatches
- name: Build
run: ./gradlew build
- name: Create reobf Paperclip JAR
run: ./gradlew -PsparklypaperImplementationVersionSuffix=without-pwt createReobfPaperclipJar
with:
name: SparklyPaper (without Parallel World Ticking) Paperclip
path: "build/libs/SparklyPaper-paperclip-*.jar"

View File

@@ -78,4 +78,6 @@ If you only care about some of the patches included in SparklyPaper, it is bette
## Downloads
You can download SparklyPaper's Paperclip JAR [here](https://github.com/SparklyPower/SparklyPaper/actions/workflows/build.yml). Click on a workflow run, scroll down to the Artifacts, and download!
You can download SparklyPaper's Paperclip JAR [here](https://github.com/SparklyPower/SparklyPaper/actions/workflows/build.yml). Click on a workflow run, scroll down to the Artifacts, and download!
There are two kinds of builds: One with the Parallel World Ticking feature, and another without it. If you don't want to risk using a very experimental feature that may lead to server crashes and corruption, or if you aren't a developer that can't fix plugin issues related to the feature, then use the version without Parallel World Ticking! (We do run Parallel World Ticking in production @ SparklyPower tho, we live on the edge :3)

View File

@@ -92,7 +92,7 @@ SparklyPaper was tailor-made for SparklyPower with features that we need, so...
I'm not even sure why this question is even here considering that the only real SparklyPaper user is myself. :3
*Theorically* if you really want to, you can set `parallel-world-ticking.threads` to 1, and it would work just like the good old days. None of the additional checks are removed, however.
But you can build, or download SparklyPaper builds, without the parallel world ticking added!
## Plugin Incompatibilities

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] new fork who dis - Rebrand to SparklyPaper and Build Changes
diff --git a/build.gradle.kts b/build.gradle.kts
index 79beac737c17412913983614bd478d33e3c6ed58..8adfd75d66cbd3e3afafc0ea167d1e6568c4adbe 100644
index 79beac737c17412913983614bd478d33e3c6ed58..5812c7056d11be2cc966728de6b07cd903e8d320 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -3,6 +3,8 @@ import io.papermc.paperweight.util.*
@@ -35,16 +35,28 @@ index 79beac737c17412913983614bd478d33e3c6ed58..8adfd75d66cbd3e3afafc0ea167d1e65
// Paper start
implementation("org.jline:jline-terminal-jansi:3.21.0")
implementation("net.minecrell:terminalconsoleappender:1.3.0")
@@ -70,7 +79,7 @@ tasks.jar {
@@ -64,13 +73,18 @@ tasks.jar {
manifest {
val git = Git(rootProject.layout.projectDirectory.path)
val gitHash = git("rev-parse", "--short=7", "HEAD").getText().trim()
- val implementationVersion = System.getenv("BUILD_NUMBER") ?: "\"$gitHash\""
+ // SparklyPaper start
+ var implementationVersion = System.getenv("BUILD_NUMBER") ?: "\"$gitHash\""
+ if (hasProperty("sparklypaperImplementationVersionSuffix")) {
+ implementationVersion += "/${property("sparklypaperImplementationVersionSuffix")}"
+ }
+ // SparklyPaper end
val date = git("show", "-s", "--format=%ci", gitHash).getText().trim() // Paper
val gitBranch = git("rev-parse", "--abbrev-ref", "HEAD").getText().trim() // Paper
attributes(
"Main-Class" to "org.bukkit.craftbukkit.Main",
"Implementation-Title" to "CraftBukkit",
- "Implementation-Version" to "git-Paper-$implementationVersion",
+ "Implementation-Version" to "git-SparklyPaper-$implementationVersion", // ForkTest
+ "Implementation-Version" to "git-SparklyPaper-$implementationVersion", // SparklyPaper
"Implementation-Vendor" to date, // Paper
"Specification-Title" to "Bukkit",
"Specification-Version" to project.version,
@@ -154,7 +163,7 @@ fun TaskContainer.registerRunTask(
@@ -154,7 +168,7 @@ fun TaskContainer.registerRunTask(
name: String,
block: JavaExec.() -> Unit
): TaskProvider<JavaExec> = register<JavaExec>(name) {

View File

@@ -30,10 +30,10 @@ index 17ba07cbd4792f63d88ce29d00da280f30c4abff..8e8aad958c96fa1df3d906ec120a89ad
final TrackedChunk chunk = this.byChunk.get(CoordinateUtils.getChunkKey(chunkX, chunkZ));
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
index 7088c8e8a7eba566fa91f5fa2995cd724705b8c4..33504d860c8ac8397863cee401b2718c13f99640 100644
index 8c33a12ca879c46893150d6adfb8aa4d397c6b4c..66d9358c30b827a1299e9d9b0d3793a0eb62d67b 100644
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
@@ -630,7 +630,7 @@ public class ServerChunkCache extends ChunkSource {
@@ -621,7 +621,7 @@ public class ServerChunkCache extends ChunkSource {
// Paper start - optimise chunk tick iteration
com.destroystokyo.paper.util.maplist.ReferenceList<ServerPlayer> playersNearby