Minecraft ve Oyun Sunucuları
Minecraft sunucusu için yazılım seçimi (Paper, Purpur, Fabric), yaklaşık RAM ihtiyacı, Java sürümü, Aikar bayrakları, görüş mesafesi ve dünya ön üretimi.
Minecraft sunucusunun performansını RAM kadar, hatta ondan fazla işlemcinin tek çekirdek hızı, sunucu yazılımı ve ayarlar belirler. Aşağıdaki değerler başlangıç noktasıdır; eklenti/mod sayısı ve oyuncu davranışına göre değişir.
Gereğinden fazla RAM ayırmak performansı artırmaz; çöp toplayıcı duraklamalarını uzatabilir. Daha doğru bir tahmin için Minecraft RAM hesaplayıcısını kullanabilirsiniz.
Güncel bayraklar için PaperMC belgelerini kontrol edin. -Xms ve -Xmx değerlerini eşit tutmak önerilir.
Sunucu yazılımı
- Vanilla: Mojang'ın resmi sunucusu; eklenti desteği yok, optimizasyon sınırlı.
- Paper: Spigot/Bukkit eklentileriyle uyumlu, performans iyileştirmeleri içeren en yaygın seçim.
- Purpur / Pufferfish: Paper tabanlı, ek ayar ve optimizasyonlar sunar.
- Fabric / NeoForge / Forge: Mod (modpack) sunucuları için. Performans modları (ör. Lithium) Fabric'te yaygındır.
- Velocity: Birden fazla sunucuyu tek ağda birleştiren modern proxy (BungeeCord'un halefi olarak önerilir).
Yaklaşık RAM ihtiyacı
| Senaryo | Başlangıç için |
|---|---|
| Arkadaş sunucusu, 1–10 oyuncu, az eklenti (Paper) | 2–4 GB |
| 10–40 oyuncu, orta eklenti sayısı | 4–8 GB |
| Hafif modpack (Fabric/NeoForge) | 6–8 GB |
| Büyük modpack | 8–12 GB ve üzeri |
Java sürümü
Minecraft 1.20.5 ve sonrası Java 21 gerektirir; 1.18–1.20.4 için Java 17 kullanılır. Sunucuda doğru sürümü kurduğunuzdan emin olun:
Bash:
java -version
Başlatma parametreleri (Aikar bayrakları)
PaperMC belgelerinde önerilen G1GC ayarları, çöp toplama duraklamalarını azaltır. Örnek (6 GB için):
Bash:
java -Xms6G -Xmx6G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 \
-XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch \
-XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M \
-XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 \
-XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 \
-XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem \
-XX:MaxTenuringThreshold=1 -jar paper.jar --nogui
Performans ayarları
- view-distance / simulation-distance (server.properties): Görüş mesafesini 6–8, simülasyon mesafesini 4–6 civarında tutmak yükü ciddi azaltır.
- Dünya ön üretimi: Chunky gibi eklentilerle haritayı önceden oluşturmak, oyuncular keşif yaparken yaşanan takılmaları önler. Bir dünya sınırı (world border) belirleyin.
- Varlık (entity) sınırları: Paper ve Spigot yapılandırmalarında mob/eşya sınırları ve birleştirme ayarları vardır.
- Ölçüm:
/tpsve/msptkomutlarıyla durumu izleyin; spark eklentisiyle hangi eklenti veya chunk'ın yük oluşturduğunu profilleyin. Hedef 20 TPS ve 50 ms altı MSPT'dir.