Panellerinde kutulu yada kutusuz sıralamada dragon ve diğer semboller 2 defa yada her resette artarak katlanarak 2 4 defa artan sembol için panelden bunları uygulayın.Bazı arkadaslar 100 human 100 orc olmadan yani karakter kurmadan reset atıyor bu kodlarla beraber sorunsuz hale getirebilirsiniz.Ve server açıkken kodları güncelleyebilirsiniz...Res kodu oto res olarak ayarlayabilirsiniz...Sql'den yapabilirsiniz, onunda açıklamasını resimli olarak paylaşacağım...Ülke puanın ve aylın puana göre 2 ayrı prosedür vardır. Gerekli tablolarıyla birlikte veriyorum hiçbir sorun yaşamazsınız.
- 100 Kareli ve 100 Karesiz Sembol (K Sembolü Ekli Değil) -
UPDATE_MONTHLY_RANK
Bu prosedür Kareli simgeleri belirler. Kareli simgeler ülke puanına göre belirlenir.
Toplam 50 karus, 50 human olmak üzere 100 tane kareli simge verir. (K Simgesi Ekli Değildir)
Sadece normal oyuncuları sıralamaya sokar. Eğer ülke puanı aynıysa aylık puana göre sıralamayı bağlar.
[Gizli içerik]
UPDATE_LOYALTY_MONTHLY_RANK
Bu prosedür Karesiz simgeleri belirler. Karesiz simgeler aylık puana göre belirlenir.
Toplam 50 karus, 50 human olmak üzere 100 tane karesiz simge verir. (K Simgesi Ekli Değildir)
Sadece normal oyuncuları sıralamaya sokar. Eğer oyuncu kareli bir simgeye sahipse onu sıralamaya almaz.
Eğer aylık puanları eşit olan iki oyuncu varsa ülke puanlarını daha sonrada seviyesini alır ve sıralamaya bağlar.
[Gizli içerik]
- 200 Kareli ve 200 Karesiz Sembol (K Sembolü Ekli!) -
UPDATE_MONTHLY_RANK
Bu prosedür Kareli simgeleri belirler. Kareli simgeler ülke puanına göre belirlenir.
Toplam 100 karus, 100 human olmak üzere 200 tane kareli simge verir. (K Simgesi Eklidir + SOACS v32)
Sadece normal oyuncuları sıralamaya sokar. Eğer ülke puanı aynıysa aylık puana göre sıralamayı bağlar.
PHP:[HIDE][HIDE-REPLY]if exists (select * from dbo.sysobjects where id = object_id(N'[USER_KNIGHTS_RANK]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [USER_KNIGHTS_RANK] GO /* OrhanBenceGay / [url]www.ko-fox.com[/url] Gerekli Tablo */ CREATE TABLE [USER_KNIGHTS_RANK] ( [shIndex] [smallint] NOT NULL , [strName] [char] (21) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL , [strElmoUserID] [varchar] (21) COLLATE SQL_Latin1_General_CP1_CI_AS NULL , [strElmoKnightsName] [char] (21) COLLATE SQL_Latin1_General_CP1_CI_AS NULL , [nElmoLoyalty] [int] NULL , [strKarusUserID] [varchar] (21) COLLATE SQL_Latin1_General_CP1_CI_AS NULL , [strKarusKnightsName] [char] (21) COLLATE SQL_Latin1_General_CP1_CI_AS NULL , [nKarusLoyalty] [int] NULL , [nMoney] [int] NOT NULL ) ON [PRIMARY] GO CREATE PROCEDURE UPDATE_MONTHLY_RANK AS /* OrhanBenceGay / [url]www.ko-fox.com[/url] Bu prosedür Kareli simgeleri belirler. Kareli simgeler ülke puanına göre belirlenir. Toplam 100 karus, 100 human olmak üzere 200 tane kareli simge verir. (K Simgesi Eklidir + SOACS v32) Sadece normal oyuncuları sıralamaya sokar. Eğer ülke puanı aynıysa aylık puana göre sıralamayı bağlar. */ DECLARE @strUserId char(21) DECLARE @Loyalty int DECLARE @Knights int DECLARE @KnightName char(50) DECLARE @IsValidKnight int DECLARE @Index smallint DECLARE @IsValidCount tinyint DECLARE @UserCount tinyint DECLARE @RankName varchar(30) SELECT @IsValidCount = Count(*) FROM USER_KNIGHTS_RANK -- Tablo uyumsuz ise boş dolduralım! IF @IsValidCount <> 100 BEGIN SET @Index = 1 WHILE @Index < 101 BEGIN IF @Index = 1 BEGIN SET @RankName = 'Gold Knight' END IF @Index > 1 AND @Index <= 4 BEGIN SET @RankName = 'Silver Knight' END IF @Index > 4 AND @Index <= 9 BEGIN SET @RankName = 'Mirage Knight' END IF @Index > 9 AND @Index <= 25 BEGIN SET @RankName = 'Shadow Knight' END IF @Index > 25 AND @Index <= 50 BEGIN SET @RankName = 'Mist Knight' END IF @Index > 50 AND @Index <= 100 BEGIN SET @RankName = 'Training Knight' END INSERT INTO USER_KNIGHTS_RANK (shIndex,strName,strElmoUserID,strElmoKnightsName,nElmoLoyalty,strKarusUserID,strKarusKnightsName,nKarusLoyalty,nMoney) VALUES (@Index,@RankName,NULL,NULL,0,NULL,NULL,0,1000000) SET @Index = @Index + 1 END END SELECT @UserCount = Count(*) FROM USERDATA -- Tablo uyumsuz ise boş dolduralım! IF @UserCount < 200 BEGIN SET @Index = 1 WHILE @Index < 101 BEGIN IF @Index = 1 BEGIN SET @RankName = 'Gold Knight' END IF @Index > 1 AND @Index <= 4 BEGIN SET @RankName = 'Silver Knight' END IF @Index > 4 AND @Index <= 9 BEGIN SET @RankName = 'Mirage Knight' END IF @Index > 9 AND @Index <= 25 BEGIN SET @RankName = 'Shadow Knight' END IF @Index > 25 AND @Index <= 50 BEGIN SET @RankName = 'Mist Knight' END IF @Index > 50 AND @Index <= 100 BEGIN SET @RankName = 'Training Knight' END INSERT INTO USER_KNIGHTS_RANK (shIndex,strName,strElmoUserID,strElmoKnightsName,nElmoLoyalty,strKarusUserID,strKarusKnightsName,nKarusLoyalty,nMoney) VALUES (@Index,@RankName,NULL,NULL,0,NULL,NULL,0,1000000) SET @Index = @Index + 1 END END SET @Index = 1 SET @strUserId = NULL SET @Loyalty = 0 SET @Knights = 0 DECLARE RANKING_CRS CURSOR FOR SELECT TOP 100 strUserId,Loyalty,Knights FROM USERDATA WHERE Nation = 1 AND Authority = 1 ORDER BY Loyalty DESC, LoyaltyMonthly DESC, [Level] DESC OPEN RANKING_CRS FETCH NEXT FROM RANKING_CRS INTO @strUserId,@Loyalty,@Knights WHILE @@FETCH_STATUS = 0 BEGIN SET @KnightName = NULL SET @IsValidKnight = 0 IF @Knights <> 0 BEGIN SELECT @IsValidKnight = COUNT(IDName) FROM KNIGHTS WHERE IDNum = @Knights IF @IsValidKnight <> 0 BEGIN SELECT @KnightName = IDName FROM KNIGHTS WHERE IDNum = @Knights END END UPDATE USER_KNIGHTS_RANK SET strKarusUserID = @strUserId, strKarusKnightsName = @KnightName, nKarusLoyalty = @Loyalty WHERE shIndex = @Index SET @Index = @Index + 1 FETCH NEXT FROM RANKING_CRS INTO @strUserId,@Loyalty,@Knights END CLOSE RANKING_CRS DEALLOCATE RANKING_CRS SET @Index = 1 SET @strUserId = NULL SET @Loyalty = 0 SET @Knights = 0 DECLARE RANKING_CRS CURSOR FOR SELECT TOP 100 strUserId,Loyalty,Knights FROM USERDATA WHERE Nation = 2 AND Authority = 1 ORDER BY Loyalty DESC, LoyaltyMonthly DESC, [Level] DESC OPEN RANKING_CRS FETCH NEXT FROM RANKING_CRS INTO @strUserId,@Loyalty,@Knights WHILE @@FETCH_STATUS = 0 BEGIN SET @KnightName = NULL SET @IsValidKnight = 0 IF @Knights <> 0 BEGIN SELECT @IsValidKnight = COUNT(IDName) FROM KNIGHTS WHERE IDNum = @Knights IF @IsValidKnight <> 0 BEGIN SELECT @KnightName = IDName FROM KNIGHTS WHERE IDNum = @Knights END END UPDATE USER_KNIGHTS_RANK SET strElmoUserID = @strUserId, strElmoKnightsName = @KnightName, nElmoLoyalty = @Loyalty WHERE shIndex = @Index SET @Index = @Index + 1 FETCH NEXT FROM RANKING_CRS INTO @strUserId,@Loyalty,@Knights END CLOSE RANKING_CRS DEALLOCATE RANKING_CRS GO[/HIDE-REPLY][/HIDE]
UPDATE_LOYALTY_MONTHLY_RANK
Bu prosedür Karesiz simgeleri belirler. Karesiz simgeler aylık puana göre belirlenir.
Toplam 100 karus, 100 human olmak üzere 200 tane karesiz simge verir. (K Simgesi Eklidir + SOACS v32)
Sadece normal oyuncuları sıralamaya sokar. Eğer oyuncu kareli bir simgeye sahipse onu sıralamaya almaz.
Eğer aylık puanları eşit olan iki oyuncu varsa ülke puanlarını daha sonrada seviyesini alır ve sıralamaya bağlar.
[Gizli içerik]
- Kullanımı -
Kullanımı "EXEC" komutuyla prosedürü çalıştırmaktır. Sadece ufak bir ayrıntı var "UPDATE_MONTHLY_RANK" prosedürünü "UPDATE_LOYALTY_MONTHLY_RANK" prosedüründen önce çalıştırmalısınız şu şekilde çalıştırırsanız sorun yaşamazsınız:
Kod:EXEC UPDATE_MONTHLY_RANK EXEC UPDATE_LOYALTY_MONTHLY_RANK
tyPanellerinde kutulu yada kutusuz sıralamada dragon ve diğer semboller 2 defa yada her resette artarak katlanarak 2 4 defa artan sembol için panelden bunları uygulayın.Bazı arkadaslar 100 human 100 orc olmadan yani karakter kurmadan reset atıyor bu kodlarla beraber sorunsuz hale getirebilirsiniz.Ve server açıkken kodları güncelleyebilirsiniz...Res kodu oto res olarak ayarlayabilirsiniz...Sql'den yapabilirsiniz, onunda açıklamasını resimli olarak paylaşacağım...Ülke puanın ve aylın puana göre 2 ayrı prosedür vardır. Gerekli tablolarıyla birlikte veriyorum hiçbir sorun yaşamazsınız.
- 100 Kareli ve 100 Karesiz Sembol (K Sembolü Ekli Değil) -
UPDATE_MONTHLY_RANK
Bu prosedür Kareli simgeleri belirler. Kareli simgeler ülke puanına göre belirlenir.
Toplam 50 karus, 50 human olmak üzere 100 tane kareli simge verir. (K Simgesi Ekli Değildir)
Sadece normal oyuncuları sıralamaya sokar. Eğer ülke puanı aynıysa aylık puana göre sıralamayı bağlar.
[Gizli içerik]
UPDATE_LOYALTY_MONTHLY_RANK
Bu prosedür Karesiz simgeleri belirler. Karesiz simgeler aylık puana göre belirlenir.
Toplam 50 karus, 50 human olmak üzere 100 tane karesiz simge verir. (K Simgesi Ekli Değildir)
Sadece normal oyuncuları sıralamaya sokar. Eğer oyuncu kareli bir simgeye sahipse onu sıralamaya almaz.
Eğer aylık puanları eşit olan iki oyuncu varsa ülke puanlarını daha sonrada seviyesini alır ve sıralamaya bağlar.
[Gizli içerik]
- 200 Kareli ve 200 Karesiz Sembol (K Sembolü Ekli!) -
UPDATE_MONTHLY_RANK
Bu prosedür Kareli simgeleri belirler. Kareli simgeler ülke puanına göre belirlenir.
Toplam 100 karus, 100 human olmak üzere 200 tane kareli simge verir. (K Simgesi Eklidir + SOACS v32)
Sadece normal oyuncuları sıralamaya sokar. Eğer ülke puanı aynıysa aylık puana göre sıralamayı bağlar.
PHP:[HIDE][HIDE-REPLY]if exists (select * from dbo.sysobjects where id = object_id(N'[USER_KNIGHTS_RANK]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [USER_KNIGHTS_RANK] GO /* OrhanBenceGay / [url]www.ko-fox.com[/url] Gerekli Tablo */ CREATE TABLE [USER_KNIGHTS_RANK] ( [shIndex] [smallint] NOT NULL , [strName] [char] (21) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL , [strElmoUserID] [varchar] (21) COLLATE SQL_Latin1_General_CP1_CI_AS NULL , [strElmoKnightsName] [char] (21) COLLATE SQL_Latin1_General_CP1_CI_AS NULL , [nElmoLoyalty] [int] NULL , [strKarusUserID] [varchar] (21) COLLATE SQL_Latin1_General_CP1_CI_AS NULL , [strKarusKnightsName] [char] (21) COLLATE SQL_Latin1_General_CP1_CI_AS NULL , [nKarusLoyalty] [int] NULL , [nMoney] [int] NOT NULL ) ON [PRIMARY] GO CREATE PROCEDURE UPDATE_MONTHLY_RANK AS /* OrhanBenceGay / [url]www.ko-fox.com[/url] Bu prosedür Kareli simgeleri belirler. Kareli simgeler ülke puanına göre belirlenir. Toplam 100 karus, 100 human olmak üzere 200 tane kareli simge verir. (K Simgesi Eklidir + SOACS v32) Sadece normal oyuncuları sıralamaya sokar. Eğer ülke puanı aynıysa aylık puana göre sıralamayı bağlar. */ DECLARE @strUserId char(21) DECLARE @Loyalty int DECLARE @Knights int DECLARE @KnightName char(50) DECLARE @IsValidKnight int DECLARE @Index smallint DECLARE @IsValidCount tinyint DECLARE @UserCount tinyint DECLARE @RankName varchar(30) SELECT @IsValidCount = Count(*) FROM USER_KNIGHTS_RANK -- Tablo uyumsuz ise boş dolduralım! IF @IsValidCount <> 100 BEGIN SET @Index = 1 WHILE @Index < 101 BEGIN IF @Index = 1 BEGIN SET @RankName = 'Gold Knight' END IF @Index > 1 AND @Index <= 4 BEGIN SET @RankName = 'Silver Knight' END IF @Index > 4 AND @Index <= 9 BEGIN SET @RankName = 'Mirage Knight' END IF @Index > 9 AND @Index <= 25 BEGIN SET @RankName = 'Shadow Knight' END IF @Index > 25 AND @Index <= 50 BEGIN SET @RankName = 'Mist Knight' END IF @Index > 50 AND @Index <= 100 BEGIN SET @RankName = 'Training Knight' END INSERT INTO USER_KNIGHTS_RANK (shIndex,strName,strElmoUserID,strElmoKnightsName,nElmoLoyalty,strKarusUserID,strKarusKnightsName,nKarusLoyalty,nMoney) VALUES (@Index,@RankName,NULL,NULL,0,NULL,NULL,0,1000000) SET @Index = @Index + 1 END END SELECT @UserCount = Count(*) FROM USERDATA -- Tablo uyumsuz ise boş dolduralım! IF @UserCount < 200 BEGIN SET @Index = 1 WHILE @Index < 101 BEGIN IF @Index = 1 BEGIN SET @RankName = 'Gold Knight' END IF @Index > 1 AND @Index <= 4 BEGIN SET @RankName = 'Silver Knight' END IF @Index > 4 AND @Index <= 9 BEGIN SET @RankName = 'Mirage Knight' END IF @Index > 9 AND @Index <= 25 BEGIN SET @RankName = 'Shadow Knight' END IF @Index > 25 AND @Index <= 50 BEGIN SET @RankName = 'Mist Knight' END IF @Index > 50 AND @Index <= 100 BEGIN SET @RankName = 'Training Knight' END INSERT INTO USER_KNIGHTS_RANK (shIndex,strName,strElmoUserID,strElmoKnightsName,nElmoLoyalty,strKarusUserID,strKarusKnightsName,nKarusLoyalty,nMoney) VALUES (@Index,@RankName,NULL,NULL,0,NULL,NULL,0,1000000) SET @Index = @Index + 1 END END SET @Index = 1 SET @strUserId = NULL SET @Loyalty = 0 SET @Knights = 0 DECLARE RANKING_CRS CURSOR FOR SELECT TOP 100 strUserId,Loyalty,Knights FROM USERDATA WHERE Nation = 1 AND Authority = 1 ORDER BY Loyalty DESC, LoyaltyMonthly DESC, [Level] DESC OPEN RANKING_CRS FETCH NEXT FROM RANKING_CRS INTO @strUserId,@Loyalty,@Knights WHILE @@FETCH_STATUS = 0 BEGIN SET @KnightName = NULL SET @IsValidKnight = 0 IF @Knights <> 0 BEGIN SELECT @IsValidKnight = COUNT(IDName) FROM KNIGHTS WHERE IDNum = @Knights IF @IsValidKnight <> 0 BEGIN SELECT @KnightName = IDName FROM KNIGHTS WHERE IDNum = @Knights END END UPDATE USER_KNIGHTS_RANK SET strKarusUserID = @strUserId, strKarusKnightsName = @KnightName, nKarusLoyalty = @Loyalty WHERE shIndex = @Index SET @Index = @Index + 1 FETCH NEXT FROM RANKING_CRS INTO @strUserId,@Loyalty,@Knights END CLOSE RANKING_CRS DEALLOCATE RANKING_CRS SET @Index = 1 SET @strUserId = NULL SET @Loyalty = 0 SET @Knights = 0 DECLARE RANKING_CRS CURSOR FOR SELECT TOP 100 strUserId,Loyalty,Knights FROM USERDATA WHERE Nation = 2 AND Authority = 1 ORDER BY Loyalty DESC, LoyaltyMonthly DESC, [Level] DESC OPEN RANKING_CRS FETCH NEXT FROM RANKING_CRS INTO @strUserId,@Loyalty,@Knights WHILE @@FETCH_STATUS = 0 BEGIN SET @KnightName = NULL SET @IsValidKnight = 0 IF @Knights <> 0 BEGIN SELECT @IsValidKnight = COUNT(IDName) FROM KNIGHTS WHERE IDNum = @Knights IF @IsValidKnight <> 0 BEGIN SELECT @KnightName = IDName FROM KNIGHTS WHERE IDNum = @Knights END END UPDATE USER_KNIGHTS_RANK SET strElmoUserID = @strUserId, strElmoKnightsName = @KnightName, nElmoLoyalty = @Loyalty WHERE shIndex = @Index SET @Index = @Index + 1 FETCH NEXT FROM RANKING_CRS INTO @strUserId,@Loyalty,@Knights END CLOSE RANKING_CRS DEALLOCATE RANKING_CRS GO[/HIDE-REPLY][/HIDE]
UPDATE_LOYALTY_MONTHLY_RANK
Bu prosedür Karesiz simgeleri belirler. Karesiz simgeler aylık puana göre belirlenir.
Toplam 100 karus, 100 human olmak üzere 200 tane karesiz simge verir. (K Simgesi Eklidir + SOACS v32)
Sadece normal oyuncuları sıralamaya sokar. Eğer oyuncu kareli bir simgeye sahipse onu sıralamaya almaz.
Eğer aylık puanları eşit olan iki oyuncu varsa ülke puanlarını daha sonrada seviyesini alır ve sıralamaya bağlar.
[Gizli içerik]
- Kullanımı -
Kullanımı "EXEC" komutuyla prosedürü çalıştırmaktır. Sadece ufak bir ayrıntı var "UPDATE_MONTHLY_RANK" prosedürünü "UPDATE_LOYALTY_MONTHLY_RANK" prosedüründen önce çalıştırmalısınız şu şekilde çalıştırırsanız sorun yaşamazsınız:
Kod:EXEC UPDATE_MONTHLY_RANK EXEC UPDATE_LOYALTY_MONTHLY_RANK