AROGKOXP
AROGKOXP KO-FORUM HOSGELDİNİZ



Sizleri Neler Bekliyor ?
-Foruma Üye Olarak Yeni Arkadaşlıklar Edineceksiniz.
-İnternette Zaman Geçirecek Bir Alanınız Olucak Ve Eğleneceksiniz.
-PvP Server Tutkunuysanız Pvp Serverlerde Yenilikleri Takip Ediceksiniz.
-Yeni Açılan Serverleri Anında Bulacaksınız .
-Gmlik Adaylığı Koyacaksınız.Serverinizi Tanıtacaksınız.
-Pvp Serverler Hakkında Herşey Bu Forumda Olucak.
-ÜYE OLURSANIZ FORUMDAKİ REKLAMLAR GÖZÜKMEZ
Bunlardan Yararlanmak İçin Sizden Tek İsteyimiz Üye Olmanız Yada Giriş Yapmanız.
AROGKOXP


 
AnasayfaAnasayfa  TakvimTakvim  GaleriGaleri  SSSSSS  AramaArama  Üye ListesiÜye Listesi  Kullanıcı GruplarıKullanıcı Grupları  Kayıt OlKayıt Ol  Giriş yapGiriş yap  Face GroupFace Group  SOHBETSOHBET  ATV CANLIATV CANLI  Knight MokokooKnight Mokokoo  ANEWSTVANEWSTV  

Paylaş | 
 

 [Paylasım] Serverınızda istediğiniz özellikte Char açılsın istermisiniz :)

Aşağa gitmek 
YazarMesaj
fallen06

avatar

Keçi
Mesaj Sayısı : 169
Kayıt tarihi : 22/03/09
Yaş : 26

Kişi sayfası
ArogKoxp Alan ArogKoxp Alan: http://img143.imageshack.us/img143/5870/supermod.gif

MesajKonu: [Paylasım] Serverınızda istediğiniz özellikte Char açılsın istermisiniz :)   Çarş. Ara. 16, 2009 9:05 am

Öncelikle merhaba

Can skıntısından böyle birşey hazırlamak istedim
Biraz sonra anlattıklarımın ardından serverınızda her user sizin verdiğiniz komutlar doğrultusunda char açabilecek
Sonuc olarak şunlar olucak
İstediğiniz Lvlde, stat pointle, skillerler, parayla, np'yle vsvs...
Hatta ve hatta Bunu birçok kişi bilmez İstediğiniz map koordinatlarda başlatabiliceksiniz

Vericeğim QA kodunu dbnizde uygulayın


PHP- Kodu:
CREATE PROCEDURE CREATE_NEW_CHAR

@nRet smallint OUTPUT,
@AccountID char(21),
@index tinyint,
@CharID char(21),
@Race tinyint,
@Class smallint,
@Hair tinyint,
@Face tinyint,
@Str tinyint,
@Sta tinyint,
@Dex tinyint,
@Intel tinyint,
@Cha tinyint

AS

DECLARE @Row tinyint, @Nation tinyint, @Zone tinyint, @PosX int, @PosZ int
SET @Row = 0 SET @Nation = 0 SET @Zone = 0 SET @PosX = 0 SET @PosZ = 0

SELECT @Nation = bNation, @Row = bCharNum FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID

IF @Row >= 5 SET @nRet = 1

IF @Nation = 1 AND @Race > 10 SET @nRet = 2
ELSE IF @Nation = 2 AND @Race < 10 SET @nRet = 2
ELSE IF @Nation <>1 AND @Nation <> 2 SET @nRet = 2

IF @nRet > 0
RETURN

SELECT @Row = COUNT(*) FROM USERDATA WHERE strUserId = @CharID
IF @Row > 0
BEGIN
SET @nRet = 3
RETURN
END


SET @Zone=21
SELECT @PosX = InitX, @PosZ = InitZ FROM ZONE_INFO WHERE ZoneNo = @Zone

select @row = 3
if @CharID like '%___%'
if @CharID like '%_%'
if @CharID like '%__%'
if @CharID like '%:%'
if @CharID like '%::%'
begin
SET @nRet = 3
RETURN


END
BEGIN TRAN
IF @index = 0
UPDATE ACCOUNT_CHAR SET strCharID1 = @CharID, bCharNum = bCharNum + 1 WHERE strAccountID = @AccountID
ELSE IF @index = 1
UPDATE ACCOUNT_CHAR SET strCharID2 = @CharID, bCharNum = bCharNum + 1 WHERE strAccountID = @AccountID
ELSE IF @index = 2
UPDATE ACCOUNT_CHAR SET strCharID3 = @CharID, bCharNum = bCharNum + 1 WHERE strAccountID = @AccountID
ELSE IF @index = 3
UPDATE ACCOUNT_CHAR SET strCharID4 = @CharID, bCharNum = bCharNum + 1 WHERE strAccountID = @AccountID
ELSE IF @index = 4
UPDATE ACCOUNT_CHAR SET strCharID5 = @CharID, bCharNum = bCharNum + 1 WHERE strAccountID = @AccountID


INSERT INTO USERDATA (strUserId, Nation, Race, Class, HairColor, Face, Strong, Sta, Dex, Intel, Cha, Zone, PX, PZ )
VALUES (@CharID, @Nation, @Race, @Class, @Hair, @Face, @Str, @Sta, @Dex, @Intel, @Cha, @Zone, @PosX, @PosZ )


exec baslangicitem @CharID
update userdata set [level] = '80' , [strskill] = '<<<<<<<<<<' , [points] = '255' , [zone] = '201' , strong = '255' , sta = '255' , dex = '255' , intel = '255' , cha = '255' , sp = '255' , px = '63000' , pz = '91100' where nation = '2'
update userdata set [level] = '80' , [strskill] = '<<<<<<<<<<' , [points] = '255' , [zone] = '201' , strong = '255' , sta = '255' , dex = '255' , intel = '255' , cha = '255' , sp = '255' , px = '137500' , pz = '109600' where nation = '1'

update userdata set Class = 106 where struserid = @CharID and @Class = 101
update userdata set Class = 108 where struserid = @CharID and @Class = 102
update userdata set Class = 110 where struserid = @CharID and @Class = 103
update userdata set Class = 112 where struserid = @CharID and @Class = 104
update userdata set Class = 206 where struserid = @CharID and @Class = 201
update userdata set Class = 208 where struserid = @CharID and @Class = 202
update userdata set Class = 210 where struserid = @CharID and @Class = 203
update userdata set Class = 212 where struserid = @CharID and @Class = 204

IF @@ERROR <> 0
BEGIN
ROLLBACK TRAN
SET @nRet = 4
RETURN
END

COMMIT TRAN
SET @nRet = 0
GO

Yukarıda verdiğim kod sayesinde olucaklar şunlar
(80lvl + 146 skill point + bütün statlar 255 + Her ırk czde kendi town'unda doğar )

şimdi editliyeceğimiz bölüm burası

PHP- Kodu:
update userdata set [level] = '80' , [strskill] = '<<<<<<<<<<' , [points] = '255' , [zone] = '201' , strong = '255' , sta = '255' , dex = '255' , intel = '255' , cha = '255' , sp = '255' , px = '63000' , pz = '91100' where nation = '2'
update userdata set [level] = '80' , [strskill] = '<<<<<<<<<<' , [points] = '255' , [zone] = '201' , strong = '255' , sta = '255' , dex = '255' , intel = '255' , cha = '255' , sp = '255' , px = '137500' , pz = '109600' where nation = '1'

burada anlamanız gereken bişey var kodların sonundaki nation ırk rakamını belirtiyor
Alt alta 2 ırk olmasının sebebi ırkların farklı yerlerde başlamasını sağlamak içindi

Burda zaten herşey açık bi durumda yazılan rakamları editlediğinizde başlangıcta etki vericeğini görüceksiniz
Zone karşısına hangi zone IDyi yazarsanız char orda ilk açıldığında orada doğar
PX ve PZ zone korordinatlarını belirler yani doğucağı haritadaki kordinatlar
[strskill] karşısına "<<<<<<<<<<" yazarsanız lvle ait skillpointi verir
"ÿ" yazarsanız 255 skill point verir

Eğer istek olursa Serverda Job engelleme procedur'ude palaşıcam mesela mage server için warrior rogue ve priestin açılmasını engellemek gbi

Pek yararlı olmasada umarım bazı arkadaşların işine yarar
Bi ty yeter
Sayfa başına dön Aşağa gitmek
Kullanıcı profilini gör http://arogkoxp.ace.st
 
[Paylasım] Serverınızda istediğiniz özellikte Char açılsın istermisiniz :)
Sayfa başına dön 
1 sayfadaki 1 sayfası

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
AROGKOXP :: Paylaşımlar :: Prosedürler & Kodlar-
Buraya geçin: