Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d78112453c | ||
|
|
42d7d8a151 | ||
|
|
f936afbdfd | ||
|
|
e611832cb7 | ||
|
|
62951f0d92 | ||
|
|
73ab029e4c | ||
|
|
47b4ce394c | ||
|
|
6275320901 | ||
|
|
a113654b36 |
20
README.md
20
README.md
@@ -24,25 +24,27 @@
|
||||
|
||||
```yaml
|
||||
verbose: false
|
||||
gameplay:
|
||||
server-mod-name: Kaiiju
|
||||
region-format:
|
||||
debug: false
|
||||
network:
|
||||
send-null-entity-packets: true
|
||||
alternate-keepalive: false
|
||||
region-format:
|
||||
debug: false
|
||||
gameplay:
|
||||
server-mod-name: Kaiiju
|
||||
shared-random-for-players: true
|
||||
world-settings:
|
||||
default:
|
||||
gameplay:
|
||||
shulker-box-drop-contents-when-destroyed: true
|
||||
fix-void-trading: true
|
||||
optimize-hoppers: true
|
||||
tick-when-empty: true
|
||||
region-format:
|
||||
format: ANVIL
|
||||
linear:
|
||||
compression-level: 1
|
||||
crash-on-broken-symlink: true
|
||||
gameplay:
|
||||
shulker-box-drop-contents-when-destroyed: true
|
||||
fix-void-trading: true
|
||||
optimize-hoppers: true
|
||||
tick-when-empty: true
|
||||
break-redstone-on-top-of-trap-doors-early: true
|
||||
config-version: 1
|
||||
```
|
||||
Documentation: [Kaiiju Wiki](https://github.com/KaiijuMC/Kaiiju/wiki/Configuration)
|
||||
|
||||
@@ -2,7 +2,7 @@ group = dev.kaiijumc.kaiiju
|
||||
version = 1.19.4-R0.1-SNAPSHOT
|
||||
mcVersion = 1.19.4
|
||||
|
||||
foliaRef = 47105ea28e71d337c2683c7b7ae8228e61901cbb
|
||||
foliaRef = 7595ff6bb2b952f2a1d9c866ef892f9c1a0b759c
|
||||
|
||||
org.gradle.caching=true
|
||||
org.gradle.parallel=true
|
||||
|
||||
@@ -4,28 +4,23 @@ Date: Thu, 11 May 2023 17:12:34 +0300
|
||||
Subject: [PATCH] Toggle shared random for players
|
||||
|
||||
|
||||
diff --git a/src/main/java/dev/kaiijumc/kaiiju/KaiijuWorldConfig.java b/src/main/java/dev/kaiijumc/kaiiju/KaiijuWorldConfig.java
|
||||
index 43c8e95454cfe831f69858eb3b520f9958280b54..70b86b1ffb45d0288a44905a7f13c3a439a73eb6 100644
|
||||
--- a/src/main/java/dev/kaiijumc/kaiiju/KaiijuWorldConfig.java
|
||||
+++ b/src/main/java/dev/kaiijumc/kaiiju/KaiijuWorldConfig.java
|
||||
@@ -151,6 +151,7 @@ public class KaiijuWorldConfig {
|
||||
public boolean optimizeHoppers = true;
|
||||
public boolean tickWhenEmpty = true;
|
||||
public boolean breakRedstoneOnTopOfTrapDoorsEarly = true;
|
||||
+ public boolean sharedRandomForPlayers = true;
|
||||
diff --git a/src/main/java/dev/kaiijumc/kaiiju/KaiijuConfig.java b/src/main/java/dev/kaiijumc/kaiiju/KaiijuConfig.java
|
||||
index f1fe094c4b4c5932ba656165bb1671020c1277a5..d3f6e5c873255d00160cf792898204a82a0ec5e8 100644
|
||||
--- a/src/main/java/dev/kaiijumc/kaiiju/KaiijuConfig.java
|
||||
+++ b/src/main/java/dev/kaiijumc/kaiiju/KaiijuConfig.java
|
||||
@@ -208,8 +208,10 @@ public class KaiijuConfig {
|
||||
}
|
||||
|
||||
private void gameplaySettings() {
|
||||
shulkerBoxDropContentsWhenDestroyed = getBoolean("gameplay.shulker-box-drop-contents-when-destroyed", shulkerBoxDropContentsWhenDestroyed);
|
||||
@@ -158,5 +159,6 @@ public class KaiijuWorldConfig {
|
||||
optimizeHoppers = getBoolean("gameplay.optimize-hoppers", optimizeHoppers);
|
||||
tickWhenEmpty = getBoolean("gameplay.tick-when-empty", tickWhenEmpty);
|
||||
breakRedstoneOnTopOfTrapDoorsEarly = getBoolean("gameplay.break-redstone-on-top-of-trap-doors-early", breakRedstoneOnTopOfTrapDoorsEarly);
|
||||
public static String serverModName = "Kaiiju";
|
||||
+ public static boolean sharedRandomForPlayers = true;
|
||||
|
||||
private static void gameplaySettings() {
|
||||
serverModName = getString("gameplay.server-mod-name", serverModName);
|
||||
+ sharedRandomForPlayers = getBoolean("gameplay.shared-random-for-players", sharedRandomForPlayers);
|
||||
}
|
||||
}
|
||||
\ No newline at end of file
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 08e61a8940c142c68ed93359084ea46c7fd52310..7d01c6713c758f3ebb1f0fcc90a52c783b31282f 100644
|
||||
index 08e61a8940c142c68ed93359084ea46c7fd52310..f22b4ad629845462656834abb3e28d2c2588ace6 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -560,6 +560,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -33,7 +28,7 @@ index 08e61a8940c142c68ed93359084ea46c7fd52310..7d01c6713c758f3ebb1f0fcc90a52c78
|
||||
this.stuckSpeedMultiplier = Vec3.ZERO;
|
||||
this.nextStep = 1.0F;
|
||||
+ // Kaiiju start - Toggle shared random for players
|
||||
+ if (this.level.kaiijuConfig.sharedRandomForPlayers && this instanceof Player)
|
||||
+ if (!dev.kaiijumc.kaiiju.KaiijuConfig.sharedRandomForPlayers && this instanceof Player)
|
||||
+ this.random = RandomSource.create();
|
||||
+ else
|
||||
+ // Kaiiju end
|
||||
|
||||
42
patches/server/0021-Kick-player-instead-of-crashing.patch
Normal file
42
patches/server/0021-Kick-player-instead-of-crashing.patch
Normal file
@@ -0,0 +1,42 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: "Sofiane H. Djerbi" <46628754+kugge@users.noreply.github.com>
|
||||
Date: Sun, 14 May 2023 18:50:57 +0300
|
||||
Subject: [PATCH] Kick player instead of crashing
|
||||
|
||||
|
||||
diff --git a/src/main/java/io/papermc/paper/chunk/system/RegionizedPlayerChunkLoader.java b/src/main/java/io/papermc/paper/chunk/system/RegionizedPlayerChunkLoader.java
|
||||
index d52a522fe6d5c4375862691fa32450bc458ca38b..648aff395887d2f13846b1bbe59f4115206ad7cf 100644
|
||||
--- a/src/main/java/io/papermc/paper/chunk/system/RegionizedPlayerChunkLoader.java
|
||||
+++ b/src/main/java/io/papermc/paper/chunk/system/RegionizedPlayerChunkLoader.java
|
||||
@@ -486,7 +486,12 @@ public class RegionizedPlayerChunkLoader {
|
||||
new ChunkPos(chunkX, chunkZ), new MutableObject<>(), false, true); // unloaded, loaded
|
||||
return;
|
||||
}
|
||||
- throw new IllegalStateException();
|
||||
+ // Kaiiju - Kick player instead of crashing
|
||||
+ String errorMsg = "Already sent chunk [" + chunkX + ", " + chunkZ + "] in world " + this.world;
|
||||
+ this.player.getBukkitEntity().kickPlayer(errorMsg);
|
||||
+ org.bukkit.Bukkit.getLogger().severe(errorMsg);
|
||||
+ // throw new IllegalStateException();
|
||||
+ // Kaiiju end
|
||||
}
|
||||
|
||||
private void sendUnloadChunk(final int chunkX, final int chunkZ) {
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ChunkHolder.java b/src/main/java/net/minecraft/server/level/ChunkHolder.java
|
||||
index 5ccfc95f51a899b1cd3f34af5e5bb05d902016b8..9c20bd199454b6032a6a90676d12526168b8dd0b 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ChunkHolder.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ChunkHolder.java
|
||||
@@ -133,7 +133,12 @@ public class ChunkHolder {
|
||||
|
||||
public void addPlayer(ServerPlayer player) {
|
||||
if (!this.playersSentChunkTo.add(player)) {
|
||||
- throw new IllegalStateException("Already sent chunk " + this.pos + " in world '" + this.chunkMap.level.getWorld().getName() + "' to player " + player);
|
||||
+ // Kaiiju start - Kick player instead of crashing
|
||||
+ String errorMsg = "Already sent chunk " + this.pos + " in world " + this.chunkMap.level.getWorld().getName();
|
||||
+ player.getBukkitEntity().kickPlayer(errorMsg);
|
||||
+ org.bukkit.Bukkit.getLogger().severe(errorMsg);
|
||||
+ //throw new IllegalStateException("Already sent chunk " + this.pos + " in world '" + this.chunkMap.level.getWorld().getName() + "' to player " + player);
|
||||
+ // Kaiiju end
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user