Skip to content

Commit 9546d5e

Browse files
committed
Readme, fix enable.
1 parent 75907df commit 9546d5e

File tree

2 files changed

+22
-1
lines changed

2 files changed

+22
-1
lines changed

README.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Lag Generator
2+
3+
This is a simple, brute-force "lag" generator for Minecraft servers.
4+
5+
It is configured via game rules.
6+
7+
- lag_generator_enableLag, true or false (false by default)
8+
- lag_generator_serverPreTickLag, integer value of lag (in milliseconds) that should be created in each server pre-tick (default 80)
9+
- lag_generator_serverPostTickLag, integer value of lag (in milliseconds) that should be created in each server post-tick (default 80)
10+
- lag_generator_entityTickLag, integer value of lag (in milliseconds) that should be created in each entity base tick (default 10)
11+
12+
Lag comes in three flavours:
13+
14+
- Server Pre-Tick lag is added with `Thread.sleep` at the start of each server tick (after the tick count has been incremented)
15+
- Server Post-Tick lag is added with `Thread.sleep` at the end of each server tick (after the profiler has been popped)
16+
17+
Both of these types of lag statically decrease TPS.
18+
19+
- Entity tick lag is added with `Thread.sleep` in the `Entity::baseTick` method.
20+
21+
This type of lag is cumulative depending on the number of loaded entities.

common/src/main/java/noobanidus/mods/laggenerator/common/rules/LagGameRules.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,6 @@ public static void init () {
2424
SERVER_PRE_TICK_LAG = AccessorMixinGameRules.LagGenerator$invokeRegister("lag_generator_serverPreTickLag", GameRules.Category.UPDATES, AccessorMixinGameRules$IntegerValue.LagGenerator$invokeCreate(80, 0, Integer.MAX_VALUE, (a, b) -> {}));
2525
SERVER_POST_TICK_LAG = AccessorMixinGameRules.LagGenerator$invokeRegister("lag_generator_serverPostTickLag", GameRules.Category.UPDATES, AccessorMixinGameRules$IntegerValue.LagGenerator$invokeCreate(80, 0, Integer.MAX_VALUE, (a, b) -> {}));
2626
ENTITY_TICK_LAG = AccessorMixinGameRules.LagGenerator$invokeRegister("lag_generator_entityTickLag", GameRules.Category.UPDATES, AccessorMixinGameRules$IntegerValue.LagGenerator$invokeCreate(10, 0, Integer.MAX_VALUE, (a, b) -> {}));
27-
ENABLE_LAG_GENERATOR = AccessorMixinGameRules.LagGenerator$invokeRegister("enable_lag_generator", GameRules.Category.UPDATES, AccessorMixinGameRules$BooleanValue.LagGenerator$invokeCreate(false, (a, b) -> {}));
27+
ENABLE_LAG_GENERATOR = AccessorMixinGameRules.LagGenerator$invokeRegister("lag_generator_enableLag", GameRules.Category.UPDATES, AccessorMixinGameRules$BooleanValue.LagGenerator$invokeCreate(false, (a, b) -> {}));
2828
}
2929
}

0 commit comments

Comments
 (0)