Lonca sembol fixini yapanların karşılaştığı bir sorun.
Lonca leveli ne olursa olsun imza resmi yüklenmiyordu o fix'in geriye alınmış hali.
Bende kendi serverim üzerinde fixleri test ederken hata ile karşılaştım yardımı dokunur aynı sorunu yaşayan olur diye paylaşıyorum çünkü bende bayağı bir konu gezdim bayağı bir kişiye sordum meğer çözümü fix diye attığımız şeylermiş
game/src/input_login.cpp gir ve arat.Lonca leveli ne olursa olsun imza resmi yüklenmiyordu o fix'in geriye alınmış hali.
Bende kendi serverim üzerinde fixleri test ederken hata ile karşılaştım yardımı dokunur aynı sorunu yaşayan olur diye paylaşıyorum çünkü bende bayağı bir konu gezdim bayağı bir kişiye sordum meğer çözümü fix diye attığımız şeylermiş
Kod:
DWORD bufSize = sizeof(DWORD) * 2 * rkMarkMgr.GetMarkCount();
değiştir.
Kod:
DWORD bufSize = sizeof(WORD) * 2 * rkMarkMgr.GetMarkCount();
game/src/packet.h gir ve arat.
Kod:
typedef struct packet_mark_idxlist { BYTE header; DWORD bufSize; DWORD count; //µÚ¿¡ size * (WORD + WORD)¸¸Å µ¥ÀÌÅÍ ºÙÀ½ } TPacketGCMarkIDXList;
değiştir.
Kod:
typedef struct packet_mark_idxlist { BYTE header; DWORD bufSize; WORD count; //µÚ¿¡ size * (WORD + WORD)¸¸Å µ¥ÀÌÅÍ ºÙÀ½ } TPacketGCMarkIDXList;
Game build edebilirsiniz.
Client Source/source/UserInterface/GuildMarkDownloader.cpp gir ve arat.
Kod:
DWORD guildID, markID; for (DWORD i = 0; i < kPacketMarkIndex.count; ++i) { Recv(sizeof(DWORD), &guildID); Recv(sizeof(DWORD), &markID); // ±æµåID -> ¸¶Å©ID À妽º µî·Ï CGuildMarkManager::Instance().AddMarkIDByGuildID(guildID, markID); }
değiştir.
Kod:
WORD guildID, markID; for (DWORD i = 0; i < kPacketMarkIndex.count; ++i) { Recv(sizeof(WORD), &guildID); Recv(sizeof(WORD), &markID); // ±æµåID -> ¸¶Å©ID À妽º µî·Ï CGuildMarkManager::Instance().AddMarkIDByGuildID(guildID, markID); }
Client Source/source/UserInterface/Packet.h gir ve arat.
Kod:
typedef struct packet_mark_idxlist { BYTE header; DWORD bufSize; DWORD count; //µÚ¿¡ size * (WORD + WORD)¸¸Å µ¥ÀÌÅÍ ºÙÀ½ } TPacketGCMarkIDXList;
değiştir.
Kod:
typedef struct packet_mark_idxlist { BYTE header; DWORD bufSize; WORD count; //µÚ¿¡ size * (WORD + WORD)¸¸Å µ¥ÀÌÅÍ ºÙÀ½ } TPacketGCMarkIDXList;
Sorun ortadan kalkacaktır iyi eğlenceler. TAB ayarlı verilmiştir sorun yaşarsanız iletin paste olarak ekleyeyim.
Lonca Simgesi Görünmeme Sorunu FIX
Metin2 özel sunucularında loncaların temsiliyeti çok önemlidir ve bu temsilin bir parçası olarak lonca simgesi (guild emblem) oyuncuların karakterleri üzerinde belirgin şekilde görünür. Ancak bazı durumlarda lonca simgesi görünmüyor olabilir. Bu durum, hem oyuncu deneyimini etkiler hem de sunucu yöneticileri için ciddi bir sorun teşkil eder. Bu yazıda, lonca simgesi görünmeme sorununun nedenlerini ve çözüm yollarını detaylı şekilde ele alacağız.
Lonca Simgesi Nedir?
Metin2 oyununda loncalar, oyuncuların bir araya gelerek oluşturduğu topluluklardır. Lonca simgesi ise bu loncayı temsil eden görsel ögedir. Simge, loncanın üyelerinin karakterlerinde, lonca listesinde ve diğer alanlarda görünür. Bu simge, hem tanınabilirliği artırır hem de lonca arasında ayırt edilebilirlik sağlar.
Sorunun Nedenleri
Lonca simgesi görünmeme problemi birkaç farklı sebepten kaynaklanabilir:
- Sunucu tarafında simge yükleme veya gönderme işlemleri eksik yapılmıştır.
- Client tarafında emblem görüntüleme kodları hatalıdır.
- Database bağlantısında lonca verileri eksik ya da yanlış gönderilmiştir.
- Auth ve Game sunucuları arasında senkronizasyon problemi yaşanmıştır.
Fix Adımları
Aşağıda, lonca simgesi görünmeme sorununu çözmek için uygulanabilecek adımları bulacaksınız.
1. Sunucu Tarafında Emblem Yükleme[/CODE]
Öncelikle lonca simgesi sunucuya doğru şekilde yüklenmelidir. Bu işlem genellikle client üzerinden yapılır. Client tarafında simge yükleme sistemi çalışıyorsa ve simge sunucuya başarıyla gönderiliyorsa, bu adımda herhangi bir hata olmamalıdır. Eğer simge gönderilemiyorsa, client src kısmında 'uiGuild.py' dosyasının kontrol edilmesi gerekir.
2. Client Kodlarında Hata Ayıklama
'uiscript' ve 'py root' dosyalarında lonca simgesi ile ilgili olan kısım incelenmelidir. Özellikle 'game.py', 'uiCharacter.py' gibi dosyalarda emblem gösterimi kodlarının doğruluğundan emin olunmalıdır. Emblem görüntüleme fonksiyonları hatalıysa, simge görünmez.
3. Database ve Sunucu Senkronizasyonu
Lonca verileri 'db' sunucusunda tutulur. Emblem verisi doğru şekilde database'e yazılmalı ve 'game' sunucusuna aktarılmalıdır. Eğer bu veri aktarımı eksikse, simge görünmeyebilir. Ayrıca 'auth' ve 'game' sunucuları arasındaki haberleşme de kontrol edilmelidir. Bu süreçte 'server_info' ve 'guild_data' tabloları kontrol edilmelidir.
4. Compile ve Source Edit Kontrolleri
Sunucu tarafındaki kaynak kodlar (src) düzenlenmişse, özellikle guild sistemleriyle ilgili değişiklikler yapılmışsa, bu değişikliklerin emblem sistemini etkilememesi sağlanmalıdır. Compile işlemi sırasında hata alınmaması için tüm kütüphanelerin doğru şekilde entegre edildiğinden emin olunmalıdır.
Ekstra İpuçları
- Emblem boyutu çok büyükse, client tarafından doğru şekilde render edilemeyebilir. Genellikle 64x64 veya 128x128 boyutları önerilir.
- Emblem dosyası doğru formatta olmalıdır. PNG veya TGA formatları tercih edilir.
- Emblem sistemini test etmek için bir test loncası oluşturulabilir ve emblem yükleme işlemleri manuel olarak kontrol edilebilir.
Sonuç
Lonca simgesi görünmeme sorunu, Metin2 özel sunucularında sıkça karşılaşılan bir sorundur. Ancak doğru analiz ve adımlarla kolayca çözülebilir. Bu fix sürecinde client, server, database ve compile süreçleri dikkatlice incelenmelidir. Bu rehber sayesinde hem yeni başlayanlar hem de tecrübeli geliştiriciler bu konuda yol alabilir.
Fix for Guild Emblem Not Showing
In Metin2 private servers, guilds play a vital role in representing player communities, and their emblem is a visual symbol that should be clearly visible on characters. However, there are cases where the guild emblem does not appear. This issue affects both player experience and can become a major concern for server administrators. In this article, we will discuss the causes and solutions for the guild emblem not showing issue in detail.
What is a Guild Emblem?
In Metin2, guilds are communities formed by players joining together. The guild emblem represents the guild visually and appears on members' characters, guild lists, and other areas within the game. It enhances recognition and provides visual distinction between different guilds.
Causes of the Issue
The guild emblem not showing issue may arise from several sources:
- Improper emblem upload or sending processes on the server side.
- Incorrect emblem rendering code on the client side.
- Missing or incorrect guild data transmission in the database.
- Synchronization problems between the Auth and Game servers.
Fix Steps
Below are the steps you can follow to resolve the guild emblem not showing issue.
1. Server-Side Emblem Upload
Firstly, ensure the guild emblem is uploaded correctly to the server. This process typically occurs via the client. If the client-side emblem upload system is working and the emblem is sent successfully, there shouldn't be any errors here. If the emblem fails to send, check the 'uiGuild.py' file in the client src files.
2. Debugging Client Codes
Review the parts related to the guild emblem in 'uiscript' and 'py root' files. Especially in files like 'game.py' and 'uiCharacter.py', ensure the emblem display functions are correct. Any error in these codes can prevent the emblem from appearing.
3. Database and Server Synchronization
Guild data is stored in the 'db' server. The emblem data must be properly written into the database and transferred to the 'game' server. If this transfer is incomplete, the emblem may not show. Additionally, communication between the 'auth' and 'game' servers should be checked. Tables such as 'server_info' and 'guild_data' need to be reviewed.
4. Compile and Source Edit Checks
If server-side source codes (src) have been modified—especially those related to guild systems—ensure these edits do not affect the emblem functionality. During compilation, make sure all libraries are correctly integrated without errors.
Additional Tips[/BR]- If the emblem file is too large, it might not render correctly on the client side. Typically, sizes like 64x64 or 128x128 are recommended.
- Ensure the emblem file is in the correct format, preferably PNG or TGA.
- You can create a test guild to manually verify emblem uploading and rendering processes.
Conclusion
The guild emblem not showing issue is common in Metin2 private servers, but it can be resolved with proper analysis and steps. Throughout this fix process, client, server, database, and compilation stages must be carefully examined. With this guide, both beginners and experienced developers can address this issue effectively.
