(DEV PAYLAŞIM) Usko Moradon dağda doğma fix

Konu Yazar

kamiloviç

New Member
Nis
15
0
Öncelikle arkadaşlar aujardı editlemek bana ayittir.

serverı bu aujard ile açınız.

Web Hosting - Dedicated Server

rar pass :
Kod:
www.ko-cuce.net

Bu procu da Load user Data da

Buranın üstüne yapıştırın
Kod:
SELECT Nation, Race, Class, HairColor, Rank, Title, [Level], [Exp], Loyalty, Face, City, Knights, Fame, Hp, Mp, Sp, Strong, Sta, Dex, Intel, Cha, Authority, Points, Gold, [Zone], Bind, @PosX, @PosZ, @PosY, dwTime, strSkill, strItem,strSerial, sQuestCount, strQuest, MannerPoint, LoyaltyMonthly FROM    USERDATA WHERE strUserId = @id
    SET @nRet = @@RowCount

Kod:
BEGIN
    DECLARE @PosX int, @PosZ int, @PosY int, @Zone tinyint
    SELECT @Zone = Zone, @PosX = px, @PosZ = pz, @PosY = py FROM USERDATA WHERE strUserId = @id
 
    -- If the zone is Moradon...
    IF @Zone = 21
    BEGIN
        -- Use old Moradon co-ordinates (* 100)
        -- I'm not using the new map but you can change the co-ordinates here.
        SET @PosX = 81700
        SET @PosY = 0 -- If we're higher or lower (depth-wise), we set this. Otherwise, it remains 0.
        SET @PosZ = 43200
    END
 
    
END


işlem tamam ^^ artık dağda doğmazsınız.
asm kod ve proc için twostars tşkrler
 
Moderatör tarafında düzenlendi:
Cevap: (DEV PAYLAŞIM) Usko Moradon dağda doğma fix

Paylaşımın İçin Teşekkürler:korsanh::o:
 
Cevap: (DEV PAYLAŞIM) Usko Moradon dağda doğma fix

Teşekkürler deniyelim bakalmm
 
Cevap: (DEV PAYLAŞIM) Usko Moradon dağda doğma fix

Verdiğin Aujardla açınca her id pass yazip girdiğimde Irk secme ekranı geliyor, şunu bi editlersen sevinirim..
 
Cevap: (DEV PAYLAŞIM) Usko Moradon dağda doğma fix

bu kadar procedüre gerek yokki start_positiondan moradonda dogma kordinatını degistiricen o kadar baya bi abartmısın server fileslar felan
 
Cevap: (DEV PAYLAŞIM) Usko Moradon dağda doğma fix

bu kadar procedüre gerek yokki start_positiondan moradonda dogma kordinatını degistiricen o kadar baya bi abartmısın server fileslar felan

Start_position dediğin town cektiğin doğdugun kordinattır. Oyundan cıkıp girince dogdugun kordinat ise fileslerle ve + procla tabi ilişkilidir.
 
Cevap: (DEV PAYLAŞIM) Usko Moradon dağda doğma fix

healal olsun asm kodlarını cözebilen biri cıktı sonunda hö twostars paylastıydı asm kodunu yapan biri cıktı :o:
 
Cevap: (DEV PAYLAŞIM) Usko Moradon dağda doğma fix

paylaşmasına gerek yok arkadaş yanlış yapmış taa suların içinde doğuyor..

TwoStars' Alıntı:
Well... with people using alternate Moradon maps, positions have been getting quite bugged - as the position it always seems to take you to is the same (311, 351).

So, I took a look around and eventually stumbled across it in Aujard, in CDBAgent::LoadUserData(). If it hadn't been there, I have no idea where I'd have looked next. I sort've ran out of ideas. :P

Anyway, here it is (in Aujard):

Kod:
0042555C     75 1E          JNZ SHORT 0042557C
0042555E  |. 8B4D EC        MOV ECX,DWORD PTR SS:[EBP-14]
00425561  |. C741 40 00809B>MOV DWORD PTR DS:[ECX+40],439B8000
00425568  |. 8B55 EC        MOV EDX,DWORD PTR SS:[EBP-14]
0042556B  |. C742 44 0080AF>MOV DWORD PTR DS:[EDX+44],43AF8000

ECX+40 is PosX (311) and ECX+44 is PosZ (351).

What we're going to do is make a simple patch to avoid this check. We'll set the position somewhere else, but just wait - one thing at a time. We'll get to it.

So we'll change:
Kod:
0042555C     75 1E          JNZ SHORT 0042557C
To
Kod:
0042555C     EB 1E          JMP SHORT 0042557C

To avoid the check completely.

Once we've done that, we'll head to our LOAD_USER_DATA stored procedure. We'll be adding our own co-ordinates here.

My procedure is completely emptied out, but here's how mine's going to work:

Kod:
ALTER PROCEDURE [dbo].[LOAD_USER_DATA]
        @AccountID  char(21),
        @id                     char(21),
        @nRet           smallint OUTPUT
AS
BEGIN
        DECLARE @PosX int, @PosZ int, @PosY int, @Zone tinyint
        SELECT @Zone = Zone, @PosX = px, @PosZ = pz, @PosY = py FROM USERDATA WHERE strUserId = @id

        -- If the zone is Moradon...
        IF @Zone = 21
        BEGIN
                -- Use old Moradon co-ordinates (* 100)
                -- I'm not using the new map but you can change the co-ordinates here.
                SET @PosX = 31100
                SET @PosY = 0 -- If we're higher or lower (depth-wise), we set this. Otherwise, it remains 0.
                SET @PosZ = 35100
        END

        SELECT Nation, Race, Class, HairColor, Rank, Title, [Level], [Exp], Loyalty, Face, City, Knights, Fame, Hp, Mp, Sp, Strong, Sta, Dex, Intel, Cha, Authority, Points, Gold, [Zone], Bind, @PosX, @PosZ, @PosY, dwTime, strSkill, strItem,strSerial, sQuestCount, strQuest, MannerPoint, LoyaltyMonthly FROM    USERDATA WHERE strUserId = @id
        SET @nRet = @@RowCount 
END

Note that not only ** I setting my own co-ordinates here, overriding anything that the user might be using (in effect doing the same thing as Aujard used to, just a step before), but I'm using them in the SELECT query. See that? I replaced px, py, py with @PosX, @PosZ, @PosY.

With all of that in place, you should now be spawning in the right spot!
 
Cevap: (DEV PAYLAŞIM) Usko Moradon dağda doğma fix

hata falan yok nero anlamıosun konuşma bari sende de suda doğma gibi birşey olamaz ha o proc ta koordinatları var onu değiştirirsin olur biter.
 
Cevap: (DEV PAYLAŞIM) Usko Moradon dağda doğma fix

walla wermen cok seyi deiştirdi . Bayaqı bi fark etti yani :S ben assada doprakta doquyom ama dierleri biri daqda nöbette dieri kafasına qöre :S bu mu du 13xx uyarlı 17xx uyarlana bilir moradon xD.
 
Cevap: (DEV PAYLAŞIM) Usko Moradon dağda doğma fix

Ben yaptım Teşekürler TwoStarsa :D ASM Akar
 
Cevap: (DEV PAYLAŞIM) Usko Moradon dağda doğma fix

Valla Gelecekte USKOya Kafa tutarız gibi geliyo bana :) Bizim insanımız işine gelirse yapıyor hemde cok güzel ama bira zpoh pohlanmak istiyor :)

Umarım En Kısa Zamanda Tüm Serverlerde yeni maradon ve daha yeni güzel değişikler göreceğiz. TTeşekkürler Paylaşım ve yorumlar için
 
Moderatör tarafında düzenlendi:
Geri
Üst Alt