Tüm Blog Yazılarına Dön
Performans 2026 Güncel Rehber

FiveM Resmon Değerlerini 0.01ms Seviyesine Düşürme ve FPS Optimizasyonu Rehberi (2026)

Sunucunuzdaki ani FPS düşüşlerine ve kasmalara son verin. Resmon değerlerini nasıl analiz edeceğinizi ve Lua thread optimizasyonuyla ms değerlerini nasıl dibe çekeceğinizi adım adım öğrenin.

DX
Dexta Store Ekibi
5 Eylül 20266 dk okuma2 okuma
FiveM Resmon Değerlerini 0.01ms Seviyesine Düşürme ve FPS Optimizasyonu Rehberi (2026)

FiveM topluluğunda en sık karşılaşılan krizlerden biri, sunucuya 30-40 oyuncu girdiğinde başlayan ani FPS dropları ve gecikmelerdir (desync). Birçok sunucu sahibi sorunu hemen makine yetersizliğine bağlasa da, asıl suçlu genellikle optimize edilmemiş client-side döngüleridir.

Bu rehberde, FiveM sunucunuzdaki scriptlerin kaynak tüketimini (ms değerlerini) nasıl anlık olarak inceleyeceğinizi ve 0.15ms tüketen bir scripti nasıl 0.01ms seviyesine çekeceğinizi adım adım inceleyeceğiz.

1. Resmon Nedir ve Nasıl Okunur?

Resmon (Resource Monitor), FiveM istemcisinin (oyuncunun bilgisayarı) çalıştırdığı scriptlerin işlemci üzerinde harcadığı süreyi milisaniye (ms) cinsinden gösteren yerleşik bir paneldir.

Paneli açmak çok basittir:

  1. 1Oyun içinde F8 tuşuna basarak konsolu açın.
  2. 2resmon 1 yazıp Enter'a basın.
  3. 3Ekranın sağ üstünde tüm aktif scriptler ve karşısında anlık ms değerleri listelenir.
💡 İpucu: Sağlıklı bir FiveM sunucusunda toplam client-side Resmon tüketimi 1.0ms - 1.5ms aralığını geçmemelidir. Tek bir scriptin 0.10ms üzerinde seyretmesi, o scriptte ciddi bir optimizasyon hatası olduğuna işarettir.

2. En Yaygın Hata: Citizen.Wait(0) Tuzağı

Acemi geliştiricilerin yaptığı en büyük hata, oyuncunun bir noktaya yakın olup olmadığını kontrol ederken sonsuz döngü içinde Wait(0) bırakmaktır. Bu durum, bilgisayarın işlemcisini saniyede yüzlerce kez gereksiz yere meşgul eder.

❌ Hatalı ve Ağır Kod Örneği (0.12ms - 0.25ms Tüketir)

lua
-- resources/[scripts]/ornek_script/client.lua
Citizen.CreateThread(function()
    local marketNoktasi = vector3(25.0, -1345.0, 29.5)
    while true do
        Citizen.Wait(0) -- İşlemciyi her karede (frame) zorlar!
        local ped = PlayerPedId()
        local pCoords = GetEntityCoords(ped)
        local mesafe = #(pCoords - marketNoktasi)

        if mesafe < 2.0 then
            -- E tuşuna basma kontrolü
            if IsControlJustReleased(0, 38) then
                print("Markete girdiniz!")
            end
        end
    end
end)

Oyuncu haritanın diğer ucunda (Paleto Bay) olsa bile bu döngü her milisaniyede mesafe hesaplamaya devam eder. Bu da gereksiz ms artışına neden olur.

3. Profesyonel Çözüm: Dinamik Wait Mantığı

Modern FiveM geliştirme standartlarında değişken uyku süresi (sleep timer) kullanılır. Oyuncu hedefe uzaksa döngü 1.5 - 2 saniye uyur; sadece yaklaştığında 0 ms moduna geçer.

✅ Optimize Edilmiş Kod (0.00ms - 0.01ms Tüketir)

lua
-- resources/[scripts]/ornek_script/client.lua
Citizen.CreateThread(function()
    local marketNoktasi = vector3(25.0, -1345.0, 29.5)
    
    while true do
        local sleep = 1500 -- Varsayılan olarak 1.5 saniye bekle
        local ped = PlayerPedId()
        local pCoords = GetEntityCoords(ped)
        local mesafe = #(pCoords - marketNoktasi)

        if mesafe < 10.0 then
            sleep = 0 -- Oyuncu yaklaştığında kare bazlı kontrol açılır
            
            if mesafe < 2.0 then
                -- E tuşuna basma kontrolü (38: INPUT_CONTEXT)
                if IsControlJustReleased(0, 38) then
                    print("Markete girdiniz!")
                end
            end
        end

        Citizen.Wait(sleep)
    end
end)

Bu basit değişiklik sayesinde scriptiniz arka planda neredeyse sıfır kaynak tüketir. Haritada 50 farklı dükkan veya etkileşim noktası olsa bile sunucunuz tereyağı gibi akar.

⚠️ Önemli Uyarı: Mesafeleri kontrol ederken eski GetDistanceBetweenCoords native fonksiyonu yerine Lua 5.4 ile gelen vektör çıkarma operatörünü (#(coordsA - coordsB)) kullanın. Bu yöntem native fonksiyon çağırma masrafını ortadan kaldırır ve performansı %40'a kadar artırır.

4. server.cfg Üzerinde Yapılması Gereken Temel Ayarlar

Sunucu tarafında (server-side) gereksiz yükleri engellemek için server.cfg dosyanıza şu parametreleri eklediğinizden emin olun:

cfg
# Sunucu bant genişliğini ve paket gecikmesini optimize eder
set sv_networkBacklog 128
set sv_netFilter true

# OneSync Infinity 2026 standartlarında zorunludur
set onesync on

Sıfırdan Uğraşmak İstemeyenler İçin Kestirme Yol

Sunucunuzdaki onlarca hatta yüzlerce eklentiyi tek tek açıp döngüleri optimize etmek haftalar sürebilir. Eğer bu teknik optimizasyonlarla, bug temizliğiyle ve ms düşürme işlemleriyle vakit kaybetmek istemiyorsanız; fabrikadan tamamen optimize çıkmış, 0.40ms total client tüketimine sahip DxAV1 - Roleplay Paketi çözümümüzü tercih edebilirsiniz.

Sıkça Sorulan Sorular (SSS)

1. Sunucum için ideal toplam Resmon değeri kaç olmalıdır?

İdeal bir FiveM sunucusunda, oyuncu hiçbir şey yapmazken toplam ms değeri 0.80ms - 1.20ms arasında olmalıdır. Ateş etme, araç sürme gibi yoğun anlarda bile 2.0ms aşılmamalıdır.

2. MLO ve Mapping paketleri Resmon'da ms artırır mı?

Ymap ve MLO dosyaları doğrudan Resmon listesinde milisaniye olarak görünmez; ancak aşırı poligon içeren veya dokuları (texture) 16MB sınırını aşan haritalar doğrudan VRAM şişmesine ve FPS düşüşlerine neden olur.

3. Tek bir script 0.50ms tüketiyorsa ne yapmalıyım?

O scriptin client.lua dosyalarını açıp içinde while true do veya Citizen.Wait(0) geçen döngüleri tespit edin. Yukarıdaki "Dinamik Wait" mantığını uygulayarak bu değeri saniyeler içinde 0.01ms'ye düşürebilirsiniz.

Bu Rehber İşinize Yaradı mı?

Fikrinizi belirterek içeriklerimizi geliştirmemize yardımcı olun.

Topluluk
DX
Teknik İçerik Ekibi

Dexta Store Geliştirici Grubu

FiveM sunucuları için yüksek FPS optimizasyonlu hazır paketler, özel scriptler, MLO haritaları ve DXA koruma mimarisi geliştiren teknik ekibimiz tarafından hazırlanmıştır.

Premium FiveM Çözümleri

Sunucunuzu Bir Üst Seviyeye Taşımaya Hazır Mısınız?

Sıfırdan uğraşmak yerine; test edilmiş, yüksek FPS garantili ve 7/24 anında teslim edilen hazır roleplay paketlerimizi keşfedin.

Tüm Paket ve Scriptleri İncele

İlginizi Çekebilecek Diğer Rehberler