////////
Anlaşılan birileri kapatmamı istedi ama yazılı şekilde ifade etmeye üşendi.
KONU KAPATILSIN

CİBİLİ CİBİLİ ŞAKŞAKŞAK 6 LI 7 Lİ SJSJSJ
Anlaşılan birileri kapatmamı istedi ama yazılı şekilde ifade etmeye üşendi.
KONU KAPATILSIN
CİBİLİ CİBİLİ ŞAKŞAKŞAK 6 LI 7 Lİ SJSJSJ
TR Tipi Karakter Alanı & Questlerin Ekranda Kalması Tamamen Fix [FARKLI]
Metin2 özel sunucularında geliştirme yaparken bazı sistemsel sorunlarla karşılaşmak kaçınılmazdır. Özellikle TR tipi karakter alanlarında questlerin ekranda kalması gibi sorunlar geliştiriciler için zaman zaman can sıkıcı olabilir. Bu yazıda, questlerin istenmeyen şekilde ekranda kalmasının nedenini ve bu durumu tamamen düzeltmenin yolunu detaylıca ele alacağız.
Metin2 Client ve TR Karakter Sorunu
Metin2 özel sunucularında genellikle client tarafında yapılan değişikliklerden dolayı bazı sistemsel hatalar oluşabiliyor. Bunlardan birisi de TR karakterlerin desteklenmemesi veya eksik desteklenmesidir. Bu durumda özellikle quest logunda ya da dialog kutularında Türkçe karakterler düzgün görüntülenmezse, client tarafında unicode destekli font ayarlarının yapılması gerekir. Ancak bu sadece bir kısmını çözer. Gerçek problem genellikle script tarafındadır.
Quest Sistemi ve Görsel Hata
Metin2'de quest sistemi Python tabanlıdır ve py root dosyalarında tanımlanır. Quest logunda bir görev açıldığında, bu görevin adı ve açıklaması ekrana gelir. Eğer TR karakterler doğru aktarılmıyorsa, sistem bazen quest ismini boş gösterir veya hatalı yorumlayarak görsel bozulmalara neden olur. Bu da quest logunun bozulmasına ve questlerin görünür kalmasına sebep olabilir.
Fix Stratejisi
Bu hatayı tamamen düzeltmek için hem client hem de server tarafında değişiklikler yapmanız gerekir. Öncelikle client tarafında, quest logu ve UI sistemlerinde kullanılan font dosyasının UTF-8 destekli olduğundan emin olun. Ardından, py_root/ui/uiquest.py dosyasında gerekli düzenlemeler yapılmalıdır. Özellikle string karşılaştırması yapılan yerlerde TR karakterlerin uygun şekilde karşılaştırılması sağlanmalıdır.
Python Script Düzeltmeleri
Metin2'de quest logunun düzgün çalışması için uiQuestDialog.py dosyasındaki fonksiyonlar üzerinde değişiklikler yapılabilir. Örneğin, quest isimleri alınırken unicode decode işlemleri uygulanarak karakter hatalarının önüne geçilebilir. Ayrıca, quest silme işlemi yapılırken, sistem hâlâ eski quest ismini tutuyorsa, bu durumda quest refresh mekanizması yeniden tasarlanmalıdır.
Sunucu Tarafı Ayarlamaları
Server src kısmında, auth ve game sunucusunda quest isimleri ve açıklamaları doğru şekilde veritabanına yazılmalı. DB core kısmında TR karakterlerin doğru şekilde işlenebilmesi için veritabanı charset ayarları UTF-8 olarak yapılmış olmalıdır. Aksi takdirde, client tarafında ne kadar düzeltme yaparsanız yapın, veri bozukluğu devam edebilir.
Özetle
TR tipi karakter alanlarında questlerin ekranda kalması sorunu, client ve server arasında karakter kodlama uyumsuzluğundan kaynaklanmaktadır. Bu sorunu çözmek için hem py script tarafında hem de veritabanı ve client tarafında uygun düzenlemeler yapılmalıdır. Bu fix, Metin2 özel sunucularında daha stabil ve kullanıcı dostu bir deneyim sunar.
Kaynak Kodlar İçin:
Metin2 Lobby
Complete Fix for TR Character Field & Quests Remaining on Screen [DIFFERENT]
While developing Metin2 private servers, encountering certain systematic issues is inevitable. Particularly, problems like quests remaining on screen in TR character fields can sometimes be annoying for developers. In this article, we will examine in detail the reason why quests stay visible unwantedly and how to completely fix this issue.
Metin2 Client and TR Character Issue
In Metin2 private servers, certain systematic errors often occur due to modifications made on the client side. One of these is the lack of support or incomplete support for Turkish characters. If Turkish characters are not displayed properly in the quest log or dialog boxes, UTF-8 supported font settings on the client side must be adjusted. However, this only solves part of the problem. The real issue usually lies within the script side.
Quest System and Visual Errors
The quest system in Metin2 is Python-based and defined within py root files. When a quest is opened in the quest log, its name and description appear on screen. If TR characters are not transmitted correctly, the system may display the quest name as blank or misinterpret it, causing visual distortions. This can lead to quest log corruption and quests staying visible on screen.
Fix Strategy
To fully resolve this error, you need to make changes on both the client and server sides. First, ensure that the font file used in the quest log and UI systems on the client side supports UTF-8. Then, necessary adjustments should be made in the py_root/ui/uiquest.py file. Specifically, where string comparisons are made, TR characters must be handled properly to ensure accurate comparison.
Python Script Fixes
To ensure proper functioning of the quest log in Metin2, modifications can be made in the functions inside the uiQuestDialog.py file. For example, when retrieving quest names, unicode decoding operations can be applied to prevent character errors. Additionally, if the system still holds onto the old quest name during deletion, the quest refresh mechanism needs to be redesigned.
Server-Side Adjustments
On the server src side, quest names and descriptions must be correctly written into the database in both the auth and game servers. To ensure TR characters are processed correctly in the DB core, database charset settings must be set to UTF-8. Otherwise, no matter how many corrections you make on the client side, data corruption might persist.
In Summary
The issue of quests remaining visible on screen in TR character fields stems from character encoding mismatches between the client and server. To solve this problem, appropriate adjustments must be made in py scripts, the database, and on the client side. This fix provides a more stable and user-friendly experience in Metin2 private servers.
For Source Codes:
Metin2 Lobby
