Minecraft sunucusunda oyuncu istatistiklerini takip etmek için üç yol vardır: oyunun kendi tuttuğu vanilla istatistik dosyalarını okumak, scoreboard komutlarıyla bu sayaçları ekrana basmak ve Plan (Player Analytics) gibi bir analiz eklentisi kurup verileri tarayıcıdan grafiklerle izlemek. İlk ikisi hiçbir eklenti gerektirmez; üçüncüsü ise oturum süresi, eş zamanlı zirve ve geri dönüş oranı gibi sunucu büyütmede işinize yarayacak metrikleri size hazır sunar.
Sorunun asıl zor kısmı veriyi toplamak değil, hangi sayıya bakacağınıza karar vermek. Toplam kayıtlı oyuncu sayısı gurur okşar ama hiçbir şey anlatmaz; ortalama oturum süresi ile ertesi gün geri dönen oyuncu oranı ise sunucunuzun gerçekten iyi gidip gitmediğini söyler. Bu rehberde önce veriyi nereden alacağınızı, sonra onu nasıl yorumlayacağınızı göreceksiniz.
Minecraft Hangi İstatistikleri Kendisi Tutar?#
Minecraft, sunucuya giren her oyuncu için otomatik olarak yüzlerce sayaç tutar. Bu veriler dünya klasörünün içindeki stats klasöründe, oyuncunun UUID’sini taşıyan bir JSON dosyasında saklanır. Oyuncu istatistik ekranını oyun içinde Esc tuşuna basıp “Statistics” (İstatistikler) ekranından görebilir.
world/
stats/
069a79f4-44e9-4726-a5be-fca90e38aaf5.json
playerdata/
069a79f4-44e9-4726-a5be-fca90e38aaf5.dat
advancements/
dimensions/
Sayaçlar dokuz kategoriye ayrılır: minecraft:custom (genel sayaçlar), minecraft:mined (kırılan bloklar), minecraft:crafted (üretilen eşyalar), minecraft:used, minecraft:broken, minecraft:picked_up, minecraft:dropped, minecraft:killed ve minecraft:killed_by. Sunucu yönetimi açısından en değerlisi ilk kategoridir.
world/dimensions/minecraft/ altında duruyor. Eski rehberlerdeki world_nether/DIM-1/ yolları 26.1 ve sonrasında geçerli değildir. İstatistik ve oyuncu verisi klasörleri ise dünya klasörünün kökünde kalmaya devam ediyor.Oyun İçinden İstatistik Görüntüleme: Scoreboard Komutları#
Vanilla istatistikleri hiçbir eklenti kurmadan ekrana basabilirsiniz. Scoreboard sistemi, istatistik sayaçlarını doğrudan “kriter” (criteria) olarak kabul eder. Aşağıdaki komutları konsoldan ya da OP yetkisiyle oyun içinden çalıştırabilirsiniz.
/scoreboard objectives add sure minecraft.custom:minecraft.play_time
/scoreboard objectives add olum deathCount
/scoreboard objectives add oyuncukill playerKillCount
/scoreboard objectives setdisplay sidebar sure
/scoreboard players get Oyuncu sure
/scoreboard objectives remove sure
play_time değeri tick cinsindedir. Bir saniye 20 tick, bir dakika 1.200 tick, bir saat 72.000 tick eder. Yani sayaç 720.000 gösteriyorsa oyuncu on saat oynamış demektir.
| Ölçmek istediğiniz | Kriter | Birim |
|---|---|---|
| Toplam oynanma süresi | minecraft.custom:minecraft.play_time | tick |
| Ölüm sayısı | deathCount | adet |
| Oyuncu öldürme | playerKillCount | adet |
| Son ölümden beri geçen süre | minecraft.custom:minecraft.time_since_death | tick |
| Yürünen mesafe | minecraft.custom:minecraft.walk_one_cm | santimetre |
| Elle girilen serbest değer | dummy | — |
Bu değerleri oyuncuların sürekli görebileceği bir yan panelde göstermek isterseniz, sıralamayı biçimlendirmek için TAB ve scoreboard eklentilerinden yararlanın; vanilla sidebar biçimlendirme konusunda oldukça kısıtlıdır.
stats Klasöründeki JSON Dosyalarını Okuma#
Bir oyuncunun tüm sayaçlarını tek seferde görmek istiyorsanız JSON dosyasını doğrudan açabilirsiniz. Dosya adı UUID olduğu için önce hangi UUID’nin hangi oyuncuya ait olduğunu bulmanız gerekir; bu eşleşme sunucu klasöründeki usercache.json dosyasında durur.
{
"stats": {
"minecraft:custom": {
"minecraft:play_time": 1044000,
"minecraft:deaths": 12,
"minecraft:mob_kills": 347,
"minecraft:jump": 8921
},
"minecraft:mined": {
"minecraft:stone": 15320,
"minecraft:oak_log": 642
}
}
}
Loglardan Giriş-Çıkış Sayısı Çıkarma#
Eklenti kurmadan “bugün kaç kişi girdi?” sorusuna cevap almanın en hızlı yolu log dosyalarını saymaktır. Sunucu her bağlantıda Oyuncu joined the game, her çıkışta Oyuncu left the game satırını yazar. Log biçimi [HH:mm:ss] [Server thread/INFO]: ile başlar; tarih satırın içinde değil, dosya adında bulunur.
# Bugunku toplam giris sayisi
grep -c "joined the game" logs/latest.log
# Tekil oyuncu sayisi
grep "joined the game" logs/latest.log | awk '{print $4}' | sort -u | wc -l
# Arsivlenmis gunleri de tarayin
zgrep -h "joined the game" logs/*.log.gz | awk '{print $4}' | sort -u | wc -l
Windows üzerinde aynı sayımı PowerShell ile yapabilirsiniz:
(Select-String -Path logs\latest.log -Pattern "joined the game" | Measure-Object).Count
Bu yöntemin sınırı belli: loglar döner (rotate) ve eski dosyalar sıkıştırılır, ayrıca oturum süresini hesaplamak için giriş-çıkış çiftlerini eşleştirmeniz gerekir. Uzun vadeli takip için bir eklentiye geçmek daha mantıklıdır. Log satırlarını okumaya yeni başlıyorsanız sunucu logu okuma rehberi hangi satırın önemli olduğunu ayrıntısıyla anlatıyor.
Plan (Player Analytics) ve Analiz Eklentileri#
Plan, Minecraft dünyasında bu iş için en yaygın kullanılan eklentidir. Sunucunun yanında küçük bir web sunucusu açar ve tarayıcıdan erişilen bir panel sunar. Panelde oyuncu oturumları, günlük ve haftalık aktif oyuncu grafikleri, oturum uzunluğu dağılımı, geri dönüş oranı ve sunucu performansı yan yana görünür.
-
Eklentiyi doğru platform için indirin#
Paper/Purpur sunucusu için Bukkit yapısını, proxy üzerinde ağ geneli rapor istiyorsanız Velocity ya da BungeeCord yapısını indirin. Jar dosyasını
pluginsklasörüne kopyalayın. Ayrıntılar için plugin kurulum rehberine bakabilirsiniz. -
Sunucuyu bir kez başlatıp yapılandırmayı oluşturun#
İlk açılışta eklenti kendi klasörünü ve
config.ymldosyasını üretir. Sunucuyu durdurun, dosyayı açın ve web sunucusu bölümündeki port ile erişim adresini kendi kurulumunuza göre düzenleyin. -
Web panelinin portunu güvenlik duvarında açın#
Panel Minecraft portundan (25565/TCP) ayrı bir port dinler. Bu portu yalnızca kendi IP adresinize açın; tüm internete açmak zorunda değilsiniz.
-
Veritabanını seçin#
Tek sunucuda yerel depolama yeterlidir. Birden fazla sunucunun verisini tek panelde toplamak istiyorsanız MySQL kullanın; kurulumu MySQL bağlama rehberinde adım adım anlatılıyor.
-
Bir hafta veri biriktirin, sonra yorumlayın#
İlk günün grafiği yanıltıcıdır. Anlamlı bir taban çizgisi için en az yedi günlük veri bekleyin; hafta sonu ile hafta içi arasındaki fark tek başına birçok kararı değiştirir.
-
Plan (Player Analytics)Hangar’da arayınİndir
-
PlaceholderAPI 2.12.326.2 için zorunluİndir
-
spark 1.10.173İndir
Bağlantılar resmî kaynaklara gider. Üçüncü taraf sitelerden jar indirmeyin. PlaceholderAPI’nin 2.12.3 sürümü 26.2’ye çıkan sunucularda zorunludur; eski sürümler Paper’ın değişen sürüm dizgisini okuyamaz.
Eş Zamanlı Oyuncu Sayısını Dışarıdan İzleme#
Analiz eklentisi sunucunun içinden bakar; sunucu çöktüğünde grafik de durur. Dışarıdan bakan bir izleme kurmak hem kesintileri yakalar hem de eş zamanlı oyuncu grafiğini bağımsız olarak tutar. Minecraft bunun için iki hazır yol sunar.
Birincisi sorgu (query) protokolüdür. server.properties dosyasında etkinleştirilir ve UDP üzerinden anlık oyuncu sayısı ile listesini döndürür:
enable-query=true
query.port=25565
enable-status=true
İkincisi RCON’dur; komut çalıştırıp list çıktısını okuyarak sayım yapabilirsiniz. RCON protokolü şifresiz olduğu için portunu internete açmayın, SSH tüneli üzerinden kullanın. Kurulum ve güvenlik ayrıntıları RCON rehberinde yer alıyor. Ayarların tamamını görmek isterseniz server.properties tam liste sayfasına bakın.
Hangi Metrikler Gerçekten Önemli?#
Toplanabilecek veri sonsuzdur; karar değiştirenler ise birkaç tanedir. Aşağıdaki tablo, sunucu sahibinin haftalık olarak bakması gereken metrikleri ve bunların ne anlattığını özetliyor.
| Metrik | Nasıl ölçülür | Ne anlatır |
|---|---|---|
| Eş zamanlı zirve | Query veya analiz eklentisi grafiği | Donanım ihtiyacı ve gerçek popülerlik |
| Ortalama oturum süresi | Giriş-çıkış çiftlerinin ortalaması | İçeriğin oyuncuyu tutup tutmadığı |
| 1. gün geri dönüş oranı | Ertesi gün dönen yeni oyuncu / toplam yeni oyuncu | İlk izlenim ve başlangıç deneyimi |
| 7. gün geri dönüş oranı | Bir hafta sonra hâlâ giren oyuncu oranı | Uzun vadeli tutundurma |
| Yeni / dönen oyuncu dengesi | İlk kez girenler ile eskilerin oranı | Reklamın mı içeriğin mi çalıştığı |
| Saatlik dağılım | Giriş saatlerinin histogramı | Etkinlik ve yeniden başlatma saati seçimi |
Bu listede toplam kayıtlı oyuncu sayısının bulunmaması bilinçlidir. Bir yıl önce bir kez girip çıkmış üç bin oyuncu, bugünkü sunucunuz hakkında hiçbir şey söylemez. Sunucu tanıtım sayfalarında bu sayıyı yazmak yerine eş zamanlı zirveyi paylaşmak daha dürüst ve daha ikna edicidir.
Verileri Yorumlama: Sayılardan Karara#
Ölçmenin amacı rapor üretmek değil, bir sonraki hafta neyi değiştireceğinize karar vermek. Birkaç tipik örüntü ve karşılığı:
Giriş çok, oturum kısa#
Oyuncular geliyor ama on dakikada çıkıyorsa sorun tanıtımda değil, ilk deneyimde. Spawn bölgesini sadeleştirin, kuralları kısaltın, oyuncuyu ilk beş dakikada bir şey yaparken bulun.
Zirve var, taban yok#
Sadece etkinlik günleri dolan sunucu, etkinlik dışı içerik üretemiyordur. Günlük tekrarlanabilir hedefler ve ekonomi döngüsü ekleyin.
Geri dönüş oranı düşüyor#
Son değişikliklere bakın: yeni bir eklenti, yeni bir kural veya artan lag olabilir. TPS grafiğiyle geri dönüş eğrisini üst üste koyun.
Belirli saatte kopma#
Otomatik yeniden başlatma saatiniz oyuncuların en yoğun olduğu saate denk geliyor olabilir. Zamanlamayı en düşük yoğunluk saatine alın.
Aynı veriyi topluluk tarafında da kullanabilirsiniz: aylık zirve ve toplam oynanma süresi gibi rakamları Discord kanalınıza otomatik düşürmek katılımı artırır. Oyuncu çekme tarafındaki adımlar için sunucunuza oyuncu çekme rehberine, gelir tarafındaki dengeler için para kazanma rehberine göz atın.
Gizlilik, Saklama Süresi ve Donanım#
Analiz eklentileri varsayılan olarak oyuncu adı, UUID, giriş-çıkış zamanı ve çoğu zaman IP adresi kaydeder. IP adresi kişisel veridir; hile ve çoklu hesap tespiti dışında saklamanın somut bir faydası yoktur. Coğrafi konum özelliğini kapatmayı, saklama süresini kısaltmayı ve hangi verileri tuttuğunuzu sunucu kurallarınızda ya da sitenizde açıkça yazmayı alışkanlık hâline getirin.
Donanım tarafında analiz eklentisi büyük bir yük değildir ama web sunucusu, veritabanı ve geçmiş kayıtlar birikince RAM ve disk ister. Sunucu paketinizi seçerken şu alt sınırların altına inmeyin:
- RAM
- En az 8 GB; analiz + log eklentisi + MySQL birlikte çalışacaksa 12-16 GB
- İşlemci
- AMD Ryzen 9 7900X / 7950X sınıfı; ana tick döngüsü tek çekirdekte çalıştığı için saat hızı belirleyicidir
- Disk
- NVMe SSD, en az 50 GB; geçmiş oturum kayıtları zamanla büyür
- Java heap
- 8 GB paket için
-Xms6G -Xmx6G, 16 GB paket için-Xms14G -Xmx14G
Web paneli hazır gelen bir kurulum arıyorsanız web panelli sunucu paketlerini, kendi izleme yığınınızı kurmak istiyorsanız yüksek frekanslı Ryzen VDS paketlerini inceleyebilirsiniz.
Özetle#
Minecraft sunucusunda oyuncu istatistiklerini takip etmek için önce elinizde ne olduğunu bilin: vanilla sayaçlar world/stats klasöründe hazır bekliyor ve scoreboard komutlarıyla eklentisiz okunabiliyor. Günlük giriş sayısı için loglar yeterli; oturum süresi ve geri dönüş oranı gibi metrikler içinse Plan benzeri bir analiz eklentisi gerekiyor.
Veriyi topladıktan sonra sadece üç sayıya odaklanın: eş zamanlı zirve, ortalama oturum süresi ve ertesi gün geri dönen oyuncu oranı. Bu üçü yükseliyorsa doğru yoldasınız; yükselmiyorsa yeni oyuncu getirmeye harcadığınız çabayı, gelen oyuncuyu tutmaya kaydırma vaktidir. Kurulum sırasında takıldığınız bir nokta olursa destek talebi açabilirsiniz.