THE ORB
Studio başlatılıyor

State bag hız sınırı / state bag'ler çoğaltılmıyor

Bir script paylaşılan bilgiyi fazlasıyla sık güncelliyor, o yüzden o güncellemelerin bir kısmı çöpe atılıyor.

groupsDeğerler yanlış ya da geride görünüyorcodeGeliştirici gerektirir

Önce şunu yap

Bunun için script'te bir değişiklik gerekiyor — sürekli değil, bir şey değiştiğinde güncellemeli.

bug_reportBunun yerine tüm konsolunu yapıştır

Ne anlama gelir

State bag'ler varlık başına hız sınırlıdır. Sınırdan hızlı yazmak, güncellemelerin düşürülmesi, kısılması, ya da kötü durumlarda sunucunun tüm zamanını çoğaltmaya harcaması demektir. Hiçbir şey hata vermez — değer basitçe istemciye ulaşmaz, ya da geç ulaşır.

Neden olur

Ne sıklıkla doğru cevap olduğuna göre sıralı.

  1. 1

    Her tick'te bir state bag yazmak

    Sınır tam da bunu durdurmak için vardır. Her karede yazılan yakıt, hız ve konum kısılacaktır.

  2. 2

    Çok büyük değerler

    Bir state bag'deki komple envanter, her değişimde kapsamdaki herkese çoğaltılır. O boyutta bir yük, hangi sıklıkta olursa olsun bir sorundur.

  3. 3

    Tek varlıkta çok sayıda bag

    Aynı varlıkta düzinelerce anahtar, her biri ayrı ayrı çoğaltılıyor.

  4. 4

    Gerek yokken çoğaltılmış

    :set(key, value, true) çoğaltır. Yalnızca yerel olan durum false geçmeli.

  5. 5

    Varlığı göremeyen bir istemcide bag okumak

    Kapsam dışı olmak, bag olmaması demektir. Bir hız sınırı değil, ama aynı "değer orada yok" belirtisi.

Hangisinin seninki olduğu nasıl anlaşılır

Bir kez yaz ve oku: tek bir yazma ulaşıyor ve bir yazma döngüsü ulaşmıyorsa, sorun hız sınırıdır. İkisi de ulaşmıyorsa, varlık kapsam dışındadır.

Nereye bakmalı

Kaynaktaki her .state:set, ve ne sıklıkta çalıştığı.

Nasıl düzeltilir

Yalnızca değiştiğinde yaz, ve yalnızca ağı geçmesi gerekeni:

local last
CreateThread(function()
    while true do
        Wait(1000)                          -- 0 değil
        local fuel = math.floor(GetFuel(veh))
        if fuel ~= last then                -- yalnızca değişimde
            last = fuel
            Entity(veh).state:set('fuel', fuel, true)
        end
    end
end)

Hâlâ kendi kodunda mı takıldın?

Bu sayfa, bu hatanın genelde ne anlama geldiğini anlatır. Konsolunu Server Fixer'a yapıştır; içindeki her şeyi sıraya dizer ve önce ne yapman gerektiğini söyler. Kendin uğraşmak istemiyorsan ORBIE script'i onarır ve kaynağı sunucuna atmaya hazır geri verir.

bug_reportServer Fixer'ı aç

Bu tür bir hata için Güvenlik Tarayıcısı buraya götüren olay işleme biçimini işaretler.

Bununla birlikte gelen hatalar