mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-28 11:58:06 +01:00
18c3716c49
This enables us a fast reference to the entities current chunk instead of having to look it up by hashmap lookups. We also store counts by type to further enable other performance optimizations in later patches.
49 lines
2.3 KiB
Diff
49 lines
2.3 KiB
Diff
From fc0280fe1ab9b4a8eff7c35bb03792e00440b736 Mon Sep 17 00:00:00 2001
|
|
From: Zach Brown <zach.brown@destroystokyo.com>
|
|
Date: Sun, 11 Sep 2016 14:30:57 -0500
|
|
Subject: [PATCH] Configurable packet in spam threshold
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
index cf06f8ac3..2001175bf 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
@@ -235,4 +235,13 @@ public class PaperConfig {
|
|
private static void bungeeOnlineMode() {
|
|
bungeeOnlineMode = getBoolean("settings.bungee-online-mode", true);
|
|
}
|
|
+
|
|
+ public static int packetInSpamThreshold = 300;
|
|
+ private static void packetInSpamThreshold() {
|
|
+ if (version < 11) {
|
|
+ int oldValue = getInt("settings.play-in-use-item-spam-threshold", 300);
|
|
+ set("settings.incoming-packet-spam-threshold", oldValue);
|
|
+ }
|
|
+ packetInSpamThreshold = getInt("settings.incoming-packet-spam-threshold", 300);
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
index f5fb86414..16c343b54 100644
|
|
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
@@ -909,13 +909,14 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
|
|
// Spigot start - limit place/interactions
|
|
private int limitedPackets;
|
|
private long lastLimitedPacket = -1;
|
|
+ private static final int THRESHOLD = com.destroystokyo.paper.PaperConfig.packetInSpamThreshold; // Paper - Configurable threshold
|
|
|
|
private boolean checkLimit(long timestamp) {
|
|
- if (lastLimitedPacket != -1 && timestamp - lastLimitedPacket < 30 && limitedPackets++ >= 4) {
|
|
+ if (lastLimitedPacket != -1 && timestamp - lastLimitedPacket < THRESHOLD && limitedPackets++ >= 8) { // Paper - Use threshold, raise packet limit to 8
|
|
return false;
|
|
}
|
|
|
|
- if (lastLimitedPacket == -1 || timestamp - lastLimitedPacket >= 30) {
|
|
+ if (lastLimitedPacket == -1 || timestamp - lastLimitedPacket >= THRESHOLD) { // Paper
|
|
lastLimitedPacket = timestamp;
|
|
limitedPackets = 0;
|
|
return true;
|
|
--
|
|
2.18.0
|
|
|