Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions aspaper-api/build.gradle.kts.patch
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
--- a/paper-api/build.gradle.kts
+++ b/paper-api/build.gradle.kts
@@ -39,6 +_,7 @@
@@ -41,6 +_,7 @@
}

dependencies {
+ api(project(":api")) //ASP
// api dependencies are listed transitively to API consumers
api("com.google.guava:guava:33.3.1-jre")
api("com.google.code.gson:gson:2.11.0")
@@ -89,7 +_,7 @@
@@ -91,7 +_,7 @@
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
}

Expand All @@ -17,7 +17,7 @@
idea {
module {
generatedSourceDirs.add(generatedDir.toFile())
@@ -99,6 +_,18 @@
@@ -101,6 +_,18 @@
main {
java {
srcDir(generatedDir)
Expand All @@ -36,7 +36,7 @@
}
}
}
@@ -165,7 +_,7 @@
@@ -183,7 +_,7 @@

tasks.withType<Javadoc>().configureEach {
val options = options as StandardJavadocDocletOptions
Expand All @@ -45,7 +45,7 @@
options.use()
options.isDocFilesSubDirs = true
options.links(
@@ -198,11 +_,11 @@
@@ -216,11 +_,11 @@
}

// workaround for https://github.com/gradle/gradle/issues/4046
Expand Down
10 changes: 5 additions & 5 deletions aspaper-server/build.gradle.kts.patch
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
--- a/paper-server/build.gradle.kts
+++ b/paper-server/build.gradle.kts
@@ -23,6 +_,17 @@
@@ -22,6 +_,17 @@
minecraftVersion = providers.gradleProperty("mcVersion")
gitFilePatches = false

Expand All @@ -17,7 +17,7 @@
+
spigot {
enabled = true
buildDataRef = "42d18d4c4653ffc549778dbe223f6994a031d69e"
buildDataRef = "17f77cee7117ab9d6175f088ae8962bfd04e61a9"
@@ -104,7 +_,19 @@
}
}
Expand Down Expand Up @@ -46,10 +46,10 @@
- implementation(project(":paper-api"))
+ implementation(project(":aspaper-api")) //ASP
+ implementation(project(":core")) //ASP
implementation("ca.spottedleaf:concurrentutil:0.0.7")
implementation("ca.spottedleaf:concurrentutil:0.0.8")
implementation("org.jline:jline-terminal-ffm:3.27.1") // use ffm on java 22+
implementation("org.jline:jline-terminal-jni:3.27.1") // fall back to jni on java 21
@@ -197,14 +_,14 @@
@@ -198,14 +_,14 @@
val gitBranch = git.exec(providers, "rev-parse", "--abbrev-ref", "HEAD").get().trim()
attributes(
"Main-Class" to "org.bukkit.craftbukkit.Main",
Expand All @@ -69,7 +69,7 @@
"Build-Number" to (build ?: ""),
"Build-Time" to buildTime.toString(),
"Git-Branch" to gitBranch,
@@ -263,7 +_,7 @@
@@ -264,7 +_,7 @@
jvmArgumentProviders.add(provider)
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@ Subject: [PATCH] Disable dragon battle


diff --git a/net/minecraft/server/level/ServerLevel.java b/net/minecraft/server/level/ServerLevel.java
index efd599c516d89ebc5f040413b7c17c5bf0ad796c..fe30353d28cf7e35e7ba7267a8a630f2cffccd4a 100644
index 24d3b1161cf45a915b37f510645500c5a45350eb..cd7aca9f76aef0824d94c73373a8f4536d05c4e8 100644
--- a/net/minecraft/server/level/ServerLevel.java
+++ b/net/minecraft/server/level/ServerLevel.java
@@ -707,7 +707,13 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe
@@ -715,7 +715,13 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe
);
this.structureManager = new StructureManager(this, this.serverLevelData.worldGenOptions(), this.structureCheck); // CraftBukkit
if (this.dimension() == Level.END && this.dimensionTypeRegistration().is(BuiltinDimensionTypes.END) || env == org.bukkit.World.Environment.THE_END) { // CraftBukkit - Allow to create EnderDragonBattle in default and custom END
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ Subject: [PATCH] Avoid IO call for UUID


diff --git a/net/minecraft/server/level/ServerLevel.java b/net/minecraft/server/level/ServerLevel.java
index 2c8e5d8bebb53c70c3180e72af738e87ec0f36f6..c394731283ee3344a8e21d3b2d0f75470e4f6bfd 100644
index cd7aca9f76aef0824d94c73373a8f4536d05c4e8..7893b71f81ae055512ec88415ebe388b7152cc5a 100644
--- a/net/minecraft/server/level/ServerLevel.java
+++ b/net/minecraft/server/level/ServerLevel.java
@@ -636,7 +636,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe
@@ -642,7 +642,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe
// CraftBukkit start
super(serverLevelData, dimension, server.registryAccess(), levelStem.type(), false, isDebug, biomeZoomSeed, server.getMaxChainedNeighborUpdates(), gen, biomeProvider, env, spigotConfig -> server.paperConfigurations.createWorldConfig(io.papermc.paper.configuration.PaperConfigurations.createWorldContextMap(levelStorageAccess.levelDirectory.path(), serverLevelData.getLevelName(), dimension.location(), spigotConfig, server.registryAccess(), serverLevelData.getGameRules())), dispatcher); // Paper - create paper world configs & Async-Anti-Xray: Pass executor
super(serverLevelData, dimension, server.registryAccess(), levelStem.type(), false, isDebug, biomeZoomSeed, server.getMaxChainedNeighborUpdates(), gen, biomeProvider, env, spigotConfig -> server.paperConfigurations.createWorldConfig(io.papermc.paper.configuration.PaperConfigurations.createWorldContextMap(levelStorageAccess.levelDirectory.path(), serverLevelData.getLevelName(), dimension.identifier(), spigotConfig, server.registryAccess(), serverLevelData.getGameRules())), dispatcher); // Paper - create paper world configs & Async-Anti-Xray: Pass executor
this.levelStorageAccess = levelStorageAccess;
- this.uuid = org.bukkit.craftbukkit.util.WorldUUID.getOrCreate(levelStorageAccess.levelDirectory.path().toFile());
+ this.uuid = bootstrap == null ? org.bukkit.craftbukkit.util.WorldUUID.getOrCreate(levelStorageAccess.levelDirectory.path().toFile()) : java.util.UUID.randomUUID(); //ASP - avoid IO calls
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,20 @@ Subject: [PATCH] Prevent config disk io on world load


diff --git a/net/minecraft/server/level/ServerLevel.java b/net/minecraft/server/level/ServerLevel.java
index c394731283ee3344a8e21d3b2d0f75470e4f6bfd..db13c732fdea20e28130a89b40bbe8662d4873da 100644
index 7893b71f81ae055512ec88415ebe388b7152cc5a..b43b7d06a7514da20a35a856d19eaef5670fc4af 100644
--- a/net/minecraft/server/level/ServerLevel.java
+++ b/net/minecraft/server/level/ServerLevel.java
@@ -634,7 +634,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe
@@ -640,7 +640,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe
) {
//ASP end
// CraftBukkit start
- super(serverLevelData, dimension, server.registryAccess(), levelStem.type(), false, isDebug, biomeZoomSeed, server.getMaxChainedNeighborUpdates(), gen, biomeProvider, env, spigotConfig -> server.paperConfigurations.createWorldConfig(io.papermc.paper.configuration.PaperConfigurations.createWorldContextMap(levelStorageAccess.levelDirectory.path(), serverLevelData.getLevelName(), dimension.location(), spigotConfig, server.registryAccess(), serverLevelData.getGameRules())), dispatcher); // Paper - create paper world configs & Async-Anti-Xray: Pass executor
+ super(serverLevelData, dimension, server.registryAccess(), levelStem.type(), false, isDebug, biomeZoomSeed, server.getMaxChainedNeighborUpdates(), gen, biomeProvider, env, spigotConfig -> bootstrap != null ? com.infernalsuite.asp.config.SlimePaperWorldConfig.initializeOrGet() : server.paperConfigurations.createWorldConfig(io.papermc.paper.configuration.PaperConfigurations.createWorldContextMap(levelStorageAccess.levelDirectory.path(), serverLevelData.getLevelName(), dimension.location(), spigotConfig, server.registryAccess(), serverLevelData.getGameRules())), dispatcher); // Paper - create paper world configs & Async-Anti-Xray: Pass executor //ASP - Optimize world config
- super(serverLevelData, dimension, server.registryAccess(), levelStem.type(), false, isDebug, biomeZoomSeed, server.getMaxChainedNeighborUpdates(), gen, biomeProvider, env, spigotConfig -> server.paperConfigurations.createWorldConfig(io.papermc.paper.configuration.PaperConfigurations.createWorldContextMap(levelStorageAccess.levelDirectory.path(), serverLevelData.getLevelName(), dimension.identifier(), spigotConfig, server.registryAccess(), serverLevelData.getGameRules())), dispatcher); // Paper - create paper world configs & Async-Anti-Xray: Pass executor
+ super(serverLevelData, dimension, server.registryAccess(), levelStem.type(), false, isDebug, biomeZoomSeed, server.getMaxChainedNeighborUpdates(), gen, biomeProvider, env, spigotConfig -> bootstrap != null ? com.infernalsuite.asp.config.SlimePaperWorldConfig.initializeOrGet() : server.paperConfigurations.createWorldConfig(io.papermc.paper.configuration.PaperConfigurations.createWorldContextMap(levelStorageAccess.levelDirectory.path(), serverLevelData.getLevelName(), dimension.identifier(), spigotConfig, server.registryAccess(), serverLevelData.getGameRules())), dispatcher); // Paper - create paper world configs & Async-Anti-Xray: Pass executor //ASP - Optimize world config
this.levelStorageAccess = levelStorageAccess;
this.uuid = bootstrap == null ? org.bukkit.craftbukkit.util.WorldUUID.getOrCreate(levelStorageAccess.levelDirectory.path().toFile()) : java.util.UUID.randomUUID(); //ASP - avoid IO calls
this.levelLoadListener = new net.minecraft.server.level.progress.LoggingLevelLoadListener(false, this);
diff --git a/net/minecraft/world/level/Level.java b/net/minecraft/world/level/Level.java
index d225267b1b07854b76c88ce461d7817a86d023a0..de152aca205954d33cf2997043cb8c91b9587cdf 100644
index 0df3a12f64f9c48561d64059289727b18239d6ce..25c2fe67019da8089107c2662c5813ff302485cc 100644
--- a/net/minecraft/world/level/Level.java
+++ b/net/minecraft/world/level/Level.java
@@ -844,7 +844,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,19 @@ Subject: [PATCH] Read only dimension data store


diff --git a/net/minecraft/server/level/ServerChunkCache.java b/net/minecraft/server/level/ServerChunkCache.java
index 413f0673557b9e3f9177d15e9bef61bded209e34..ebc9373bb3a48ef41d54d445c1aa02fe06d83cff 100644
index af67b07722bb0125acd081dab767d7e7b360623b..fc4f631f7d55ce67f348e3b6090095e6ef8445e8 100644
--- a/net/minecraft/server/level/ServerChunkCache.java
+++ b/net/minecraft/server/level/ServerChunkCache.java
@@ -210,7 +210,13 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon
@@ -208,7 +208,13 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon
LOGGER.error("Failed to create dimension data storage directory", (Throwable)var14);
}

- this.dataStorage = new DimensionDataStorage(new SavedData.Context(level), path, fixerUpper, level.registryAccess());
- this.dataStorage = new DimensionDataStorage(path, fixerUpper, level.registryAccess());
+ //ASP start - No dimension data storage
+ if(level instanceof com.infernalsuite.asp.level.SlimeLevelInstance) {
+ this.dataStorage = new com.infernalsuite.asp.level.ReadOnlyDimensionDataStorage(new SavedData.Context(level), path, fixerUpper, level.registryAccess());
+ this.dataStorage = new com.infernalsuite.asp.level.ReadOnlyDimensionDataStorage(path, fixerUpper, level.registryAccess());
+ } else {
+ this.dataStorage = new DimensionDataStorage(new SavedData.Context(level), path, fixerUpper, level.registryAccess());
+ this.dataStorage = new DimensionDataStorage(path, fixerUpper, level.registryAccess());
+ }
+ //ASP end - No dimension data storage
this.ticketStorage = this.dataStorage.computeIfAbsent(TicketStorage.TYPE);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
--- a/net/minecraft/server/level/ServerLevel.java
+++ b/net/minecraft/server/level/ServerLevel.java
@@ -592,7 +_,31 @@
@@ -598,7 +_,31 @@
}
// Paper end - chunk tick iteration

Expand Down Expand Up @@ -29,19 +29,19 @@
+ }
+
+ public ServerLevel(
+ @Nullable com.infernalsuite.asp.level.SlimeBootstrap bootstrap,
+ com.infernalsuite.asp.level.@Nullable SlimeBootstrap bootstrap,
MinecraftServer server,
Executor dispatcher,
LevelStorageSource.LevelStorageAccess levelStorageAccess,
@@ -608,6 +_,7 @@
@@ -614,6 +_,7 @@
org.bukkit.generator.ChunkGenerator gen, // CraftBukkit
org.bukkit.generator.BiomeProvider biomeProvider // CraftBukkit
) {
+ //ASP end
// CraftBukkit start
super(serverLevelData, dimension, server.registryAccess(), levelStem.type(), false, isDebug, biomeZoomSeed, server.getMaxChainedNeighborUpdates(), gen, biomeProvider, env, spigotConfig -> server.paperConfigurations.createWorldConfig(io.papermc.paper.configuration.PaperConfigurations.createWorldContextMap(levelStorageAccess.levelDirectory.path(), serverLevelData.getLevelName(), dimension.location(), spigotConfig, server.registryAccess(), serverLevelData.getGameRules())), dispatcher); // Paper - create paper world configs & Async-Anti-Xray: Pass executor
super(serverLevelData, dimension, server.registryAccess(), levelStem.type(), false, isDebug, biomeZoomSeed, server.getMaxChainedNeighborUpdates(), gen, biomeProvider, env, spigotConfig -> server.paperConfigurations.createWorldConfig(io.papermc.paper.configuration.PaperConfigurations.createWorldContextMap(levelStorageAccess.levelDirectory.path(), serverLevelData.getLevelName(), dimension.identifier(), spigotConfig, server.registryAccess(), serverLevelData.getGameRules())), dispatcher); // Paper - create paper world configs & Async-Anti-Xray: Pass executor
this.levelStorageAccess = levelStorageAccess;
@@ -635,6 +_,13 @@
@@ -641,6 +_,13 @@
chunkGenerator = new org.bukkit.craftbukkit.generator.CustomChunkGenerator(this, chunkGenerator, gen);
}
// CraftBukkit end
Expand All @@ -55,7 +55,7 @@
boolean flag = server.forceSynchronousWrites();
DataFixer fixerUpper = server.getFixerUpper();
// Paper - rewrite chunk system
@@ -713,6 +_,12 @@
@@ -723,6 +_,12 @@
public void setDragonFight(@Nullable EndDragonFight dragonFight) {
this.dragonFight = dragonFight;
}
Expand Down
Loading