Monarch Fix

Whistle

Ruhsuz :/
Kurucu
Geliştirici
Yardımsever Üye
Mesaj
11.940
Çözümler
566
Beğeni
13.617
Puan
5.915
Ticaret Puanı
2
Oyunda var olan ama kullanılmayan monarşi sistemi üzerinde uğraşırken gördüğüm bi sorunun çözümünü anlatacağım.

Monarşi sisteminde hükümdar eklemeye çalışırsanız işlem başarısız olacak ve db syserr dosyasında şu hata kaydı olacaktır;
Kod:
Genişlet Daralt Kopyala
SYSERR: Feb 10 03:45:34 :: ChildLoop: AsyncSQL: query failed: Unknown column 'name' in 'field list' (query: REPLACE INTO monarch (empire, name, windate, money) VALUES(3, 10, now(), 1985947860) errno: 1054)

Hatadan da anlaşılacağı üzere player.monarch tablosuna verileri eklerken "name" adında bir sütün olmadığını belirtiyor. Veritabanında ise pid olarak ismi belirtilmiş. Eğer veritabanın da pid olan yeri name olarak değiştirirseniz sistem yine düzgün çalışmayacaktır.

Bunun çözümü için şunu yapınız;
db/src/Monarch.cpp açın ve aratın;
C++:
Genişlet Daralt Kopyala
    snprintf(szQuery, sizeof(szQuery),
                    "REPLACE INTO monarch (empire, name, windate, money) VALUES(%d, %d, now(), %lld)", Empire, p->pid[Empire], p->money[Empire]);

Şu şekilde değiştirin;
C++:
Genişlet Daralt Kopyala
    snprintf(szQuery, sizeof(szQuery),
                    "REPLACE INTO monarch (empire, pid, windate, money) VALUES(%d, %d, now(), %lld)", Empire, p->pid[Empire], p->money[Empire]);

Daha sonra db'yi build edip filesinize atın. Artık bayraklara kral ekleyebilirsiniz. :)

Kanıt;
Metin2 Monarch Bug Fix.jpg
 
Üst