Merhaba, Hoşgeldin!

VSRO.org, Silkroad Online, Knight Online, Metin2 ve diğer çevrimiçi oyunlar için öncü bir yardım ve geliştirme platformudur. Misyonumuz, bilgi ve deneyim sahibi bireyleri, bilgiye ihtiyaç duyanlarla bir araya getirerek, zengin bir etkileşim ortamı yaratmak ve farklı bakış açılarını birleştirmektir. Topluluğumuzda güçlü bir işbirliği ve öğrenme kültürü oluşturarak, herkesin değerli katkılarda bulunmasını sağlıyoruz.

vSRO - Kale Vergi İle Gold Bug Sebebi Çözümü!

Katılım
3 Tem 2018
Mesajlar
24
Tepkime puanı
128
Puanları
13
Yaş
29
Konum
İstanbul
Türk Lirası
0.00₺
Merhaba arkadaşlar kale vergisinin -%20 'ye (Eksik yüzde yirmi) çekilmesi ile gold bugu yapılabilir. Standart bir bugdur. Bu bug alım/satım değeri birbirine yakın yada aynı olan itemlerde rahatlıkla yapılır. Mesela oyunda GOLD BAR varsa ve alımı 2b satımı 2b ise oyuncular bu itemi yanılmıyorsam 1.8B'ye satın alıp 2.2B'ye falan satıyor. yada 2B'ye satıyor. Yani kesinlikle ucuza alıyorlar. Dolayısı ile al sat bugu oluşuyor. Çözüm için serverinizi hemen kapatın ve aşağıdaki iki kodu okutun (Açıklamalarınada bakın). Ardından Server'i online edin ve sorun ortadan komple kalkmış olacak.
Kale vergi ayarını sınırlayan kod;
OKUTMADAN ÖNCE ! : "IF @TaxRatio between '0' and '20'" yazan kısımlar, oyuncunun ratioyu 0 ve 20 arasında belirlediğinde çalışmasına olanak sağlar. Yani oyuncu tax rate'yi -1 ile -20 arasında bir değer yaptığında kod çalışmayacağı için işlev göstermez. Eğer siz oyuncunun tax rate'yi değiştirmesini istemiyorsanız "IF @TaxRatio between '30' and '30' " yapabilirsiniz. Çünkü hiçbir zaman %30 seçemeyecektir. Yada %0 %10 arası ayarlasın istiyorsanız 0 ile 10 yazabilisiniz. Aşağıdaki kodda bu ayardan 2 tane var. 2'sinede gerekli ayarı yapın ! Ardından okutun.


USE [SRO_VT_SHARD]
GO
/** Object: StoredProcedure [dbo].[_UpdateSiegeFortressTaxRatio] Script Date: 25.01.2018 18:22:15 **/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO


ALTER PROCEDURE [dbo].[_UpdateSiegeFortressTaxRatio]
@FortressIDINT,
@TaxRatioSMALLINT
AS
IF @TaxRatio between '0' and '20' BEGIN
UPDATE _SiegeFortress SET TaxRatio = @TaxRatio WHERE FortressID = @FortressID
END
IF (@@error <> 0 OR @@rowcount = 0)
BEGIN
RETURN -1
END



DECLARE @FortressNameVARCHAR(129)
SELECT @FortressName = [Name] FROM _RefSiegeFortress WITH (NOLOCK) WHERE FortressID = @FortressID
IF @TaxRatio between '0' and '20' BEGIN
EXEC [SRO_VT_ACCOUNT].[dbo].[_UpdateSiegeFortressTaxRatio] 99, @FortressName, @TaxRatio
END
RETURN 1


Kale vergilerini değiştiren kod !
Aşağıdaki kod ise kalelerin vergilerini değiştirir. Constantine kalesi için alta 2. bir ek yaptım. Constantine yoksa onu kullanmayın (CT)
varsa onuda düzenleyip okutun.

--TaxRatio=20 demek %20 demektir, eğer %10 istiyorsanız 10 yazın
use SRO_VT_SHARD
update _SiegeFortress set TaxRatio=20 where FortressID=1 --JANGAN KALESİ
update _SiegeFortress set TaxRatio=20 where FortressID=3 --HOTAN KALESİ
update _SiegeFortress set TaxRatio=20 where FortressID=6 --BANDİT KALESİ
--CONSTANTINOPLE KALESİ YOKSA HEMEN AŞAĞIDAKİ SATIRI SİLİP ÖYLE OKUTUN. YOKSA HATA VERİR.
update _SiegeFortress set TaxRatio=20 where FortressID=4 --CONSTANTINOPLE KALESİ
NOT: Konu alıntıdır. Yararlı bir konu olduğu için paylaşıyorum.
 
Moderatör tarafında düzenlendi:
Alış satış arasında özellikle vergili npcdeki her itemde 100 birim alışa 70 birim satış verilmesi bir külttür zaten.
Goldbar gibi stabil birimlerin de vergisiz npclerde yer alması gerekir.

Bu iki önlemin haricinde kale vergilerini -20'ye çekmek satın alınan her ürünün %20'sinin kalenin vergi havuzundan karşılanacağı anlamına gelir. Kale vergisi 0'a düştüğünde otomatik olarak vergi miktarı %0 olmakta. Yani aslında bu bir bug değil, kale soygunudur. Bu yüzden verginin %0 altına inmesinin engellenmesi gerektiğini ben de düşünüyorum.

Ek olarak vergi çekimi yapılamadığı anlarda tax rate değişimi de yapılamamakta.
 
Geri
Üst Alt