Neler yeni

Foruma hoş geldin, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Türkiye'nin İlk ve tek FiveM forum adresi

Forum adresimize hoş geldin FiveMTürk olarak amacımız siz değerli kullanıcılarımıza en aktif fikir ve paylaşım platformu sunmak bir yana en güvenilir şekilde alışveriş yapabileceğiniz bir platform sunmaktır.
DF DF
DF DF
DF DF

Rehber Tüm Envanterlerdeki Dupe Sorunu Kesin Çözümü

exelds

Üye
FT Kullanıcı
Katılım
4 yıl 10 ay 12 gün
Mesajlar
245
Güncelleme: (06.05.2021)
Gelen yardım isteklerine bakılırsa bazı envanterlerdeki bazı eventler kendiliğinden aynı anda 1 den fazla tetikleniyor. İsterseniz bu birden fazla tetiklenen eventleri belirleyip sadece o eventlere uygulayabilir, isterseniz uğraşmayıp tüm eventleri aynı şekilde güncelleyebilirsiniz, ama hepsine yaparsanız belirlediğiniz değere göre 1 defa tetiklenen eventler için tek seferden daha fazla tetiklemeye imkan vermiş olursunuz (Her türlü log alırsınız, logları takip edip müdahale edecekseniz eğer bu size ciddi sorun teşkil etmeyecektir). Seçim size kalmış. Ben sadece çözümü paylaşıyorum.

En yukarı
local checkSource = {}
altına bir de aşağıdaki tanımı ekleyin
local toleransDegeri = 2 --(Buraya yazacağınız sayı o eventin arka arkaya tetiklenmesine izin verileceği sayıyı belirtir. Gereksiz log aldıkça sayıyı arttırabilirsiniz.)


Önceki kodlarda aşağıdaki gibi olan yerleri
Kod:
if checkSource[source] == nil then
        checkSource[source] = true
        TriggerEvent('ExeLds:resetCooldown', source)


Bu şekilde değiştirin:
Kod:
if checkSource[source] == nil then
        checkSource[source] = 1
    else
        checkSource[source] = checkSource[source] + 1
    end
    if checkSource[source] <= toleransDegeri then     
        TriggerEvent('ExeLds:resetCooldown', source)

else den sonrası önceki anlatımdaki gibi kalabilir.


AÇIKLAMA:
Önceki paylaşmış olduğum oyuncuların yapmış olduğu dupe işlemini kısmen engelleyip size log gönderiyordu. Bu paylaşacağım sorguları kendi envanter scriptiniz hangisiyse ona doğru bir şekilde uyguladığınızda modem fişini çekme veya arka arkaya çok hızlı işlem yapma vb. gibi yöntemlerle meydana gelen dupe ve daha bir çok açığı bu sorgular sayesinde %100 oranda engelleyeceksiniz, ek olarak dupe yapmaya çalışanların logunu alacaksınız. Kendi envanterinizde nasıl aktif edeceğiniz konusunda en alta bir kaç envanterin aktif edilmiş event örneklerini paylaşacağım.

51404



Script İndirme Linki:




NOT:
Burada paylaştığım script tek başına hazır start verip geçeceğiniz bir script değildir! Scriptin doğru çalışması için size kendi yazmış olduğum sorgu kodlarını kendi envanterinize doğru bir şekilde uygulamanız gerekmektedir. Mümkün olduğunca kodlardan anlamayan arkadaşlarımızın da anlayabileceği şekilde anlatmaya çalışacağım.

Bu tarz yararlı paylaşımların devamının gelmesini istiyorsanız kullanıp beğenenler en azından teşekkür yorumu atarak destek olabilirler. Sizler bu tarz ücretsiz/hayrına yapılan paylaşımlardan alacağınızı alıp yolunuza devam ettikçe bu tarz paylaşımların arkası gelmeyecektir.



DESTEK:
Paylaşmış olduğum scriptler/kodlar ile alakalı yaşadığınız sorunlarda ticket açarak benden veya #yardım kanalından diğer scriptlerimi kullanan arkadaşlardan yardım isteyebilirsiniz.




KURULUM:
1- Öncelikle exelds_antiDupeSystem scripti içindeki config dosyasındaki webhook linkini kendinizinkiyle değiştirin.
2- Sonrasında kendi envanter scriptinizin server dosyalarında "addInventoryItem" ve "removeInventoryItem" tetiklemeleri olan eventleri belirleyiniz.
3- Bu eventlerin bulunduğu ortak lua dosyasının en üstüne aşağıdaki kodu yapıştırın. Örneğin bu eventler server.lua da ise en üste aşağıdaki kodu ekleyin sonrasında eventleri düzenlemek için sonraki adıma geçin. (Bu uygulama tüm envanterlerde aynı)
Kod:
local checkSource = {}

AddEventHandler('ExeLds:resetCooldown', function(id)
    Citizen.Wait(500)
    checkSource[id] = nil
end)


Sonrasında aynı lua içinde "addInventoryItem" ve "removeInventoryItem" bulunan tüm eventleri aşağıdaki envanterlere göre örneklerde görebileceğiniz gibi düzenleyin. Ben ekran görüntülerinde sadece birer tane event örneği gösterdim. Sizin tüm içinde "addInventoryItem" ve "removeInventoryItem" bulunan eventlere bunu uygulamanız gerek.



m3_inventoryhud Örnek:
51406


qb-inventory Örnek:
51407


disc-inventoryhud Örnek:
51408


esx_inventoryhud Örnek:
51409



Özet olarak envanter scriptinizin server lua dosyasındaki düzenleme aşağıdaki gibi olacaktır:
Kod:
local checkSource = {}

AddEventHandler('ExeLds:resetCooldown', function(id)
    Citizen.Wait(500)
    checkSource[id] = nil
end)

RegisterServerEvent('ExeLds:ornekEvent')
AddEventHandler('ExeLds:ornekEvent', function(ornekData1, ornekData2, ...)
    if checkSource[source] == nil then
        checkSource[source] = true
        TriggerEvent('ExeLds:resetCooldown', source)
        --Event kodları burada
    else
        TriggerEvent('ExeLds:sendDupeLog', source)
    end
end)
 
DF
Son düzenleme:
Konu uygun kategoriye taşınmıştır, yararlı paylaşımınız için teşekkür ederiz♥
 
DF
+rep yararlı konu ellerine sağlık
 
DF
Rica ederim.
 
DF
Son düzenleme:
Discord linkini silin isterseniz yetkililer problem yaratabilir benim konumdan silmişlerdi discord linkimi.
 
DF
Discord linkini silin isterseniz yetkililer problem yaratabilir benim konumdan silmişlerdi discord linkimi.
Her şeyi buradan paylaşıyorum herhangi bir şey için discord şartı koymadım. Sorun olmaz diye düşünüyorum ama sorunsa eğer kaldırırım. Yetkili bi arkadaş uyarır sanırım.
 
DF
Güzel konular paylaşıyorsun eline sağlık devamını bekliyoruz :)
 
DF
Emeğine sağlık gerçekten çok fazla yararlı paylaşımlarda bulunuyorsun . Başarılarının devamını dilerim.
 
DF
Adamım sahalara geri dönmüş be :D
 
DF
Eline emeğine sağlık, çok yararlı paylaşımlar yapıyorsun. +rep
 
DF
Her şeyi buradan paylaşıyorum herhangi bir şey için discord şartı koymadım. Sorun olmaz diye düşünüyorum ama sorunsa eğer kaldırırım. Yetkili bi arkadaş uyarır sanırım.
Bende sart koymadim benimkini kaldirmislardi uyarayim dedim
 
DF

Forumdan daha fazla yararlanmak için giriş yapın yada üye olun!

Forumdan daha fazla yararlanmak için giriş yapın veya kayıt olun!

Kayıt ol

Forumda bir hesap oluşturmak tamamen ücretsizdir.

Şimdi kayıt ol
Giriş yap

Eğer bir hesabınız var ise lütfen giriş yapın

Giriş yap

Bu konuyu görüntüleyen kullanıcılar

Tema düzenleyici

Tema özelletirmeleri

Granit arka planlar

Lütfen Javascript'i etkinleştirin!Javascript'i etkinleştirin!