simulation-distance verlagen is niet hetzelfde als view-distance verlagen. De ene wijzigt het rond de speler gecentreerde gebied dat de server simuleert; de andere bepaalt hoeveel terreingegevens naar spelers worden gestuurd. Een veraf gelegen landschap kan zichtbaar blijven, ook al gedraagt een farm daar zich niet meer zoals de eigenaar verwacht.
Dat onderscheid is belangrijker dan het vinden van een configuratie met het label “geoptimaliseerd”. Een rustiger server is nauwelijks een verbetering als villagers niet meer restocken of een gevestigde AFK-plek niet meer werkt. Het doel is werk te schrappen waar uw community buiten kan en daarna te controleren of de gameplay die u wilde behouden nog werkt.
Deze tutorial behandelt moderne Minecraft Java Edition-servers. De afstandsinstellingen gelden voor Vanilla, Spigot en Paper; plugin-opdrachten en YAML-instellingen worden apart aangeduid. Het is geen universeel recept voor Bedrock, modpacks of Folia. Controleer de documentatie aan de hand van de exacte versie van uw server: actuele referenties kunnen nieuwere releases beschrijven en standaardwaarden of bestandsindelingen blijven niet eeuwig gelijk.
1. Meet het probleem terwijl het zich voordoet
Noteer uw Minecraft-versie, serversoftware en build, het aantal spelers en wat spelers doen wanneer de vertraging optreedt. Een drukke handelshal en een groep die nieuw terrein verkent zijn verschillende workloads. Een lege server profileren verklaart geen van beide; de documentatie van Paper vereist uitdrukkelijk dat het probleem zich voordoet tijdens het verzamelen.
Op Paper is spark sinds versie 1.21 meegeleverd. Installeer op Spigot eerst een compatibele standalone spark-plugin; de volgende opdrachten zijn niet ingebouwd in een ongewijzigde Vanilla-server.
Voer deze in-game uit met de vereiste rechten:
/spark tps
/spark profiler start --timeout 600
De profiler-opdracht neemt tien minuten op en geeft een rapport-URL terug. Bewaar dat rapport samen met uw configuratie en workloadnotities.
Bij de normale tickrate mikt Minecraft op 20 TPS, wat 50 milliseconden per tick overlaat. MSPT beschrijft hoe lang ticks duren en onthult dus druk die een TPS-waarde alleen kan verbergen. Vergelijk de mediaan en het 95e percentiel van MSPT: het laatste helpt terugkerende trage ticks aan het licht te brengen, maar kan zeldzame pieken missen. Controleer ook het maximum, in plaats van een gezond percentiel als bewijs te zien dat er niets is vastgelopen.
Voor onregelmatige problemen kan de tickmonitor van spark ticks markeren die dat budget overschrijden:
/spark tickmonitor --threshold-tick 50
Noteer wat er op hetzelfde moment gebeurde. Blijven de ticktimings gezond tijdens de klacht, onderzoek dan eerst de framerate van de client of de netwerkomstandigheden voordat u servergameplay opoffert.
2. Maak een back-up en bepaal welke instellingen echt gelden
Stop de server voordat u gaat bewerken netjes en maak een back-up van de werelden, configuratiebestanden en plugingegevens. Bewaar de back-up buiten de map van de live server en controleer of u hem kunt terugzetten. Een kopie van de configuratie maakt terugdraaien gemakkelijk; een wereldback-up beschermt het werk erachter.
Gebruik een teksteditor, behoud de YAML-inspringing en wijzig één ding per experiment. Start de server daarna normaal op en controleer het opstartlog op configuratiefouten. Gebruik /reload of een plugin-hotloader niet als sluiproute; het herladen van plugins kan afhankelijkheden en status inconsistent achterlaten.
Begin voor Vanilla met server.properties. Bekijk voor Spigot en Paper ook spigot.yml: afstandsinstellingen per wereld kunnen het properties-bestand overschrijven.
Dit fragment toont overerving, geen prestatiepreset:
world-settings:
default:
view-distance: default
simulation-distance: default
Hier laat default deze opties server.properties gebruiken. Voeg de sleutels samen met de bestaande sectie; vervang niet het hele bestand en voeg geen tweede world-settings-blok toe. Controleer ook secties met een wereldnaam, want een wereldspecifieke waarde kan de gedeelde instelling overschrijven.
Als u numerieke overschrijvingen door overerving vervangt, behandel dat dan als een aparte wijziging en leg een nieuwe baseline vast. Anders wijzigt u mogelijk meerdere effectieve afstanden voordat u uw eerste gecontroleerde test doet.
3. Scheid zichtbaarheid van terrein van simulatie
Beide afstanden worden gemeten in chunks rond de speler, niet in blokken of als diameter.
- view-distance bepaalt de hoeveelheid wereldgegevens die naar de client wordt gestuurd. Verlagen ruilt zichtbaarheid van veraf gelegen terrein in voor minder werk om dat zicht beschikbaar te houden.
- simulation-distance bepaalt het rond de speler gecentreerde tickinggebied. Verlagen kan het simulatiewerk verminderen, maar verandert ook het gebied waarin nabije farms en entities werken.
View distance is niet gratis alleen omdat een deel van het terrein buiten de simulation distance valt. Evenzo is het verlagen ervan geen vervanging voor het oplossen van een dure plugin. Kies het eerste experiment op basis van het profiel en het gameplaycompromis dat u kunt accepteren.
Probeer één afstandswijziging
Stel dat uw bestaande server.properties het volgende bevat:
view-distance=10
simulation-distance=10
Wijst het profiel op tickingwerk in geladen gebieden, dan is één experiment om de view distance ongewijzigd te laten en de simulation distance iets te verlagen:
view-distance=10
simulation-distance=8
Deze getallen zijn illustratief, geen universele standaardwaarden of een geteste SharpHeberg-preset. Wijkt uw bestaande view distance af, laat uw eigen waarde dan ongemoeid. Herstart netjes, reproduceer de oorspronkelijke workload en verzamel een nieuw rapport voordat u verder verlaagt.
Suggereert het profiel in plaats daarvan dat het onderhouden of verzenden van veraf gelegen terrein het probleem is, test de view distance dan afzonderlijk. Verlaag niet beide instellingen tegelijk om daarna te gokken welke hielp.
Simulation distance is geen volledig regelboek voor farms. Chunk tickets, die chunks om specifieke redenen geladen houden, en vereisten voor spelersnabijheid verschillen per mechanisme en versie. “Geladen” garandeert niet dat spawning, gewasgroei, entities en block entities zich allemaal hetzelfde gedragen. Controleer de vereisten van uw specifieke farm in plaats van aan te nemen dat één afstand de werking garandeert.
Natuurlijke spawning en despawning hebben ook hun eigen afstandsregels; de mob-spawn-range van Spigot en de despawn-instellingen van Paper voegen extra regelmogelijkheden toe. Stopt een farm met werken na het experiment, herstel dan eerst de vorige afstand. Compenseer niet meteen door meerdere spawn-instellingen te wijzigen.
4. Inspecteer op Spigot of Paper het entitywerk voordat u bereiken inperkt
Wijst het profiel op entityverwerking, inspecteer dan het getroffen gebied. Zoek naar zich ophopende gedropte items, overvolle pennen of een handelshal die onnodig werk doet. Overleg met de eigenaren voordat u builds wijzigt. Een geïdentificeerde bron van overbodig werk verminderen is makkelijker te beoordelen dan entitygedrag overal verzwakken.
Twee gelijknamige spigot.yml-opties doen verschillend werk:
| Instelling | Eenheid | Wat het regelt |
|---|---|---|
entity-activation-range |
Blokken | Hoe dicht entities bij spelers moeten zijn om normaal te tickken; gedrag buiten het bereik wordt afgeremd. |
entity-tracking-range |
Blokken | Hoe ver weg entities naar spelers worden gestuurd, wat bepaalt wanneer ze zichtbaar worden. |
Dit zijn entity-instellingen, niet de op chunks gebaseerde afstanden hierboven. Een lager trackingbereik kan mobs abrupt laten verschijnen; het is niet gelijk aan het verminderen van hun AI-werklast.
Wijzigingen aan activatie vragen om extra zorg bij iron farms en villagers. Communitygidsen documenteren kapotte farms en restockproblemen door te agressieve activatie of wijzigingen aan inactieve villagers. Laat deze instellingen met rust tenzij profilering de afweging rechtvaardigt, en test dan de getroffen entitycategorie in plaats van een complete preset te kopiëren.
Dezelfde voorzichtigheid geldt voor nerf-spawner-mobs, hoppertiming en wijzigingen aan item-merging: ze veranderen gedrag en niet alleen het resourceverbruik. Maak geen algemene verlagingen van mob-caps en installeer geen geplande entityverwijdering als eerste reactie op lag.
5. Behandel Paper-instellingen als versiespecifieke instellingen
Paper heeft extra configuratielagen. De gedocumenteerde indeling omvat config/paper-global.yml voor globale instellingen en config/paper-world-defaults.yml voor gedeelde wereldinstellingen. De paper-world.yml van een wereld kan deze wereldstandaarden overschrijven.
Zoek dat overschrijvingsbestand op aan de hand van de documentatie voor uw build. Mapindelingen van werelden en dimensies verschillen; een pad uit een oudere tutorial kopiëren kan u naar de verkeerde plek leiden. Kopieer alleen de instellingen die u wilt overschrijven, niet het hele standaardbestand.
Paper biedt instellingen voor spawning, despawning, botsingen en hoppergedrag. Dat zijn opties voor een geïdentificeerd probleem, geen af te vinken checklist. Zo kan het uitschakelen van het hopper move event beschermingsplugins breken die ervan afhankelijk zijn. Een kleine timingwinst rechtvaardigt niet dat u stilzwijgend een serverregel omzeilt.
De aangehaalde spigot.yml-referentie wordt onderhouden door Paper en bevat Paper-specifiek gedrag. Ga er niet van uit dat elke geneste optie die hij documenteert bestaat of identiek werkt op pure Spigot. Raadpleeg de gegenereerde configuratie voor uw implementatie en versie voordat u een sleutel toevoegt.
6. Volg het profiel verder dan afstandsinstellingen
Onderzoek pluginwerk
Wijst het rapport naar een plugintaak, bewaar het rapport dan en controleer de configuratie, compatibiliteit en release notes van die plugin. Paper raadt uitdrukkelijk aan een relevant spark-rapport te delen met pluginontwikkelaars bij het onderzoeken van prestatieproblemen.
Reproduceer het probleem waar mogelijk op een geback-upte testkopie. Wijzig één functie of plugin tegelijk, met inachtneming van afhankelijkheden, en herhaal dan dezelfde activiteit. Schakel beschermings- of economieplugins niet uit op de live server alleen om te zien of de TPS stijgt.
Baseer ook Java- en geheugentuning op bewijs. Bekijk het garbage-collectiongedrag en de Java-vereisten voor uw exacte serverbuild voordat u opstartopties wijzigt. Een gekopieerde verzameling GC-vlaggen is geen universele optimalisatiestap.
Pregenereer alleen wanneer generatie het probleem is
Valt de vertraging samen met verkenning, vergelijk dan reizen door bestaand terrein met reizen naar nieuw terrein. Als profilering chunkgeneratie als bottleneck bevestigt, verplaatst pregeneratie dat generatiewerk naar vóór het normale spel. Chunky biedt hiervoor tools.
Kies het beoogde gebied en de dimensies, controleer de schijf- en back-upcapaciteit en plan het werk buiten de drukke uren. Test eerst een beperkt gebied. Pregeneratie neemt de kosten van het laden of verzenden van bestaande chunks, of van het draaien van farms daarin, niet weg.
Communitygidsen zijn het oneens over hoe breed pregeneratie voor moderne servers moet worden aanbevolen. Zie het als antwoord op gemeten generatiedruk, niet als verplicht onderhoud voor elke Paper-installatie.
7. Controleer de gameplay voordat u de wijziging behoudt
Herhaal de oorspronkelijke workload met een vergelijkbaar aantal en een vergelijkbare spreiding van spelers. Bewaar de spark-rapporten van voor en na, het configuratieverschil en de notities bij elkaar. Herhaal de vergelijking als de omstandigheden aanzienlijk zijn veranderd.
Test de server vervolgens zoals spelers hem gebruiken:
- Laat belangrijke farms draaien vanaf hun gebruikelijke AFK-posities, inclusief verzameling en transport.
- Controleer villagertrades en restocking over een normale werkcyclus.
- Laat hoppersorteerders en klokken lang genoeg draaien om gemiste items of gewijzigde timing te onthullen.
- Controleer de zichtbaarheid en het gedrag van mobs tijdens het reizen en test elke getroffen wereld.
Behoud een wijziging alleen als de gemeten verbetering nuttig is en het gameplaycompromis acceptabel. Is het voordeel onduidelijk, herstel dan de vorige waarde. Schakel nooit het opslaan uit om een prestatiegrafiek er beter uit te laten zien.
Lijkt de resterende bottleneck de hostingcapaciteit te zijn, gebruik het rapport dan als leidraad voor dat gesprek. U kunt de Minecraft-hosting van SharpHeberg bekijken naast uw workload en vereisten. Hostingkeuzes en configuratiewijzigingen verdienen dezelfde toets: draait de server beter terwijl de manier waarop uw community speelt behouden blijft?
Gerelateerde lectuur: De werkelijke kosten van een krachtige Minecraft-server in 2025. Beschouw eventuele prijzen in dat oudere artikel als historisch en niet als actuele tarieven.
Bronnen
Minecraft optimization — community guide