Seamlar Konu Arşivden Alıntıdır
Bir çoğunuz karakter oyuna girince veya oyundan çıkınca bknz. account_login veya account_logout prosedürlerinde savaşta DC olanları
gibi bir komutu ekleyip bu oyuncuları moradona ışınlıyorsunuz ama bu aslında yanlış bir komut kullanımıdır ve SQL'i aşırı derecede yorar karakter sayısıylada alakalıdır.Bende bunun için bir prosedür hazırladım CZde DC olanları CZ towna atıyor, savaşta DC olanları lunara gidiş kapısına atıyor.Bifrostta DC olanlarıda moradona yolluyor ve sadece bu hesaba bağlı karakterleri yapıyor.
Kullanımı account_logout'a eklenmesi kafi olup EXEC FIX_WARP @AccountID şeklinde ekleyebilirsiniz. Eğer kullandığınız mapler değişikse ve farklı yerlerde doğuyorlar ise onuda kendiniz pz,py,px olarak belirttiğim alanlardan düzeltebilirsiniz.
Kullanımı ...
1 Başlat > Tüm Programlar > Microsoft SQL Server > Query Analyzer ‘ a giriyoruz.
2 SQL Server’ a bağlanıyoruz ve açılan ekranda ” master ” yerine ” DBmizi ” seçiyoruz.
3 Seçtikten sonra aşağıdaki kodu kopyalayıp , yapıştırıyoruz ve F5 yaparak kodumuzu uyguluyoruz.
Bir çoğunuz karakter oyuna girince veya oyundan çıkınca bknz. account_login veya account_logout prosedürlerinde savaşta DC olanları
View hidden content is available for registered users!
gibi bir komutu ekleyip bu oyuncuları moradona ışınlıyorsunuz ama bu aslında yanlış bir komut kullanımıdır ve SQL'i aşırı derecede yorar karakter sayısıylada alakalıdır.Bende bunun için bir prosedür hazırladım CZde DC olanları CZ towna atıyor, savaşta DC olanları lunara gidiş kapısına atıyor.Bifrostta DC olanlarıda moradona yolluyor ve sadece bu hesaba bağlı karakterleri yapıyor.
Kod:
CREATE PROCEDURE [dbo].[FIX_WARP] (@strAccountID varchar(30))
AS DECLARE @strNation int, @strCharID1 varchar(30),@strCharID2 varchar(30),@strCharID3 varchar(30)
BEGIN TRAN
SELECT @strNation = bNation , @strCharID1 = strCharID1 , @strCharID2 = strCharID2, @strCharID3 = strCharID3 from account_char where strAccountID=@strAccountID
IF @strNation = 1
BEGIN
update userdata set Zone = '21' where Zone = '31' and (struserid=@strCharID1 or struserid=@strCharID2 or struserid=@strCharID3)
update userdata set Zone = '1',px='187730',py='1660',pz='17130' where (Zone = '101' or Zone = '111' or Zone = '103' or Zone = '102') and nation='1' and (struserid=@strCharID1 or struserid=@strCharID2 or struserid=@strCharID3)
update userdata set Zone = '201',pz='109300',py='300',px='138000' where Zone = '201' and Nation='1' and (struserid=@strCharID1 or struserid=@strCharID2 or struserid=@strCharID3)
END
ELSE
IF @strNation = 2
BEGIN
update userdata set Zone = '21' where Zone = '31' and (struserid=@strCharID1 or struserid=@strCharID2 or struserid=@strCharID3)
update userdata set Zone = '2',pz='186940',py='2330',px='19910' where (Zone = '101' or Zone = '111' or Zone = '103' or Zone = '102') and nation='2' and (struserid=@strCharID1 or struserid=@strCharID2 or struserid=@strCharID3)
update userdata set Zone = '201',pz='92029',py='1150',px='64929' where (Zone = '201' and Nation='2') and (struserid=@strCharID1 or struserid=@strCharID2 or struserid=@strCharID3)
END
COMMIT TRAN
Kullanımı account_logout'a eklenmesi kafi olup EXEC FIX_WARP @AccountID şeklinde ekleyebilirsiniz. Eğer kullandığınız mapler değişikse ve farklı yerlerde doğuyorlar ise onuda kendiniz pz,py,px olarak belirttiğim alanlardan düzeltebilirsiniz.
Kullanımı ...
1 Başlat > Tüm Programlar > Microsoft SQL Server > Query Analyzer ‘ a giriyoruz.
2 SQL Server’ a bağlanıyoruz ve açılan ekranda ” master ” yerine ” DBmizi ” seçiyoruz.
3 Seçtikten sonra aşağıdaki kodu kopyalayıp , yapıştırıyoruz ve F5 yaparak kodumuzu uyguluyoruz.