Optimalizace
Tento průvodce je určen primárně pro verzi 1.21.x, ale většina informací platí i pro starší verze (1.18+).
1. Výběr Softwaru
Section titled “1. Výběr Softwaru”Volba serverového software (JAR) má největší vliv na výkon.
2. Předgenerování mapy
Section titled “2. Předgenerování mapy”Generace nového světa (1.18+) je extrémně náročná na procesor. Pokud hráč běží do neprozkoumaného území, server se začne sekat.
Řešení: Předgeneruj mapu pomocí pluginu Chunky.
- Nainstaluj Chunky.
- Nastav hranice světa (WorldBorder).
- Spusť generování příkazem
chunky start.
3. Konfigurace serveru
Section titled “3. Konfigurace serveru”Zde jsou nejdůležitější nastavení, která mají největší dopad na výkon.
server.properties
Section titled “server.properties”- server.properties
simulation-distance(Doporučeno: 4)- Určuje, jak daleko od hráče server “počítá fyziku” (růst obilí, pece, mobové).
- Toto je nejdůležitější nastavení pro výkon. Hodnota 3 nebo 4 je ideální pro většinu serverů.
view-distance(Doporučeno: 7-10)- Jak daleko hráči vidí. Tuto hodnotu nastav vyšší než
simulation-distance. Paper umí posílat chunky, aniž by je zatěžoval (tickoval). network-compression-threshold(Doporučeno: 256)- Velikost paketu pro kompresi. Pro veřejné servery nech 256. Pokud máš BungeeCord na stejném stroji, zvaž -1 (vypnuto).
spigot.yml
Section titled “spigot.yml”- spigot.yml
mob-spawn-range(Doporučeno: 3)- Okruh spawnování mobů. Musí být menší nebo rovno
simulation-distance. Snížení výrazně pomáhá s výkonem AI. entity-activation-range- Mobové mimo tuto vzdálenost nebudou mít aktivní AI (nebudou se hýbat).
animals: 16monsters: 24raiders: 48misc: 8tick-inactive-villagers: false # Pozor: Může rozbít farmy na železo.ignore-spectators: truemerge-radius(Doporučeno:item: 3.5,exp: 4.0)- Spojuje itemy na zemi do jednoho stacku. Méně entit = menší lagy.
config/paper-world-defaults.yml
Section titled “config/paper-world-defaults.yml”(Dříve paper.yml)
Adresářconfig/
- paper-world-defaults.yml
max-entity-collisions(Doporučeno: 2)- Kolik entit se může “strkat” najednou. Hodnota 2 stačí pro většinu farem a zabrání lagům při přemnožení mobů na jednom bloku.
despawn-ranges(Soft / Hard)- Monster: 32 / 96
- Mobové dále než Hard limit zmizí okamžitě. Hard limit by měl být mírně větší než
simulation-distance * 16. per-player-mob-spawns(Doporučeno: true)- Zajišťuje spravedlivé rozdělení mobů. Zabrání tomu, aby jeden hráč u mob farmy vyčerpal celý limit serveru.
redstone-implementation(Doporučeno: ALTERNATE_CURRENT)- Mnohem efektivnější algoritmus pro redstone. Snižuje lagy z velkých obvodů až o 80 %.
optimize-explosions(Doporučeno: true)- Rychlejší výpočet TNT.
treasure-maps.enabled(Doporučeno: false)- Hledání pokladů (mapy k vrakům) je častým důvodem zamrznutí serveru při generaci světa. Pokud nemáš svět 100% předgenerovaný, vypni to.
purpur.yml
Section titled “purpur.yml”(Pouze pro Purpur)
- purpur.yml
zombie.aggressive-towards-villager-when-lagging(Doporučeno: false)- Pokud TPS klesne, zombíci přestanou hledat vesničany.
villager.lobotomize.enabled(Doporučeno: true)- Vesničané, kteří nemohou najít cestu nebo jsou zavření v 1x1 prostoru, ztratí AI a přestanou zatěžovat server.
4. Java Flagy (Startovací argumenty)
Section titled “4. Java Flagy (Startovací argumenty)”⚠️ Důležité: Minecraft 1.21 vyžaduje Java 21.
Nepoužívej výchozí parametry. Používej Aikar’s Flags, které jsou průmyslovým standardem pro optimalizaci Garbage Collectoru (G1GC).
Podrobnější návod najdeš v sekci Java Flagy.
5. Měření výkonu (Lagy?)
Section titled “5. Měření výkonu (Lagy?)”Nehádej, co způsobuje lagy. Změř to.
/mspt- Příkaz Paperu. Ukáže průměrnou délku ticku.
- Pod 50ms = ✅ OK (20 TPS)
- Nad 50ms = ⚠️ Lagy (TPS klesá)
- Spark
- Spark je nejlepší nástroj na analýzu. Je součástí Paperu.
- Napiš
/spark profiler start, nech běžet cca 5 minut při lagách a pak/spark profiler stop. Dostaneš odkaz, kde přesně uvidíš, který plugin nebo entita “žere” výkon.
6. Mýty a nebezpečné “optimalizace”
Section titled “6. Mýty a nebezpečné “optimalizace””🚫 Pluginy na mazání itemů (ClearLag)
Zbytečné. Většinou způsobí více lagů skenováním světa, než kolik ušetří smazáním itemů. Použij raději nastavení alt-item-despawn-rate v configu Paperu (např. cobblestone zmizí po 30s).
🚫 Reload (/reload nebo PlugMan)
Nikdy nepoužívej /reload na produkčním serveru. Rozbíjí to pluginy, způsobuje úniky paměti (memory leaks) a chyby v datech. Vždy server restartujte.