Özel Karakterler('-', '_', '@', '!', '&'....) ile Karakter Açma

  • Konbuyu başlatan Konbuyu başlatan Admin
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 0
  • Görüntüleme Görüntüleme 35

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Şuana kadar Rubinum'da gördüm. Oyuncu sayısı çok olduğu zaman oyuncular istediği tarzda nickler alamamakta. Belirtilen dosyada değişiklikleri yaptığınızda özel karakterler kullanabilir hale gelecektir.

Kullanılacak özel karakterlerin miktarını arttırabilirsiniz ancak mysql'un charset dışına çıkamazsınız.
Mainline altyapıda euckr(Kore), martysama altyapılı fileslerde latin1 swedish ci kullanılır. Charset'e db/src/main.cpp den bakabilirsiniz. Türkçe latin5 grubuna bağlıdır. Veritabanını latin5 çevirerek Türkçe karakterleri de kullanabilirsiniz ancak henüz deneyimlemediğim için nelerle karşılaşacağınız hakkında fikrim yok.


Kod:
int check_name_alphabet(const char* str) {     const char* tmp;     if (!str || !*str)         return 0;     if (strlen(str) < 2)         return 0;     for (tmp = str; *tmp; ++tmp)     {         if (isdigit(tmp) || isalpha(tmp))             continue;     #ifdef USE_SPECIAL_CHARACTERS         switch (*tmp)         {         case ' ':         case '.':         case '-':         case '_':         case '@':         case '!':         case '^':         case '#':         case '$':         case '%':         case '&':         case '*':         case '(':         case ')':             continue;         }     #endif     return 0;     }     return check_name_independent(str); }

Kod:
#define USE_SPECIAL_CHARACTERS

Metin2 Lobby'da Özel Karakterler ile Karakter Açma Rehberi

Metin2 özel sunucularında karakter oluşturma işlemi sırasında bazı geliştiriciler, kullanıcıların dikkatini çekmek veya karakterlerine benzersiz bir hava katmak için özel karakterler kullanmayı tercih eder. Bu özel karakterler; tire (-), alt çizgi (_), ünlem (!), ampersant (&), yıldız (*), kare (#) gibi simgelerdir. Ancak bu karakterlerin doğru şekilde kullanılması, hem güvenlik açısından hem de sunucu tarafında oluşabilecek hataları engellemek açısından büyük önem taşır.

Özel Karakter Kullanımının Avantajları[/BR]
Özel karakterlerin kullanımı, oyuncuların karakterlerini daha özgün kılmalarına olanak tanır. Bu sayede karakterlerin adları daha dikkat çekici hale gelir. Ayrıca, bazı sunucularda bu tür karakterlerle karakter açmak, bir prestij göstergesi haline bile gelebilir. Ancak, bu karakterlerin desteklenip desteklenmediğini bilmek gerekir. Aksi takdirde, karakter oluşturulamaz ya da sunucuya giriş yapılamaz.

Desteklenen Özel Karakterler
Metin2 özel sunucularında kullanılan bazı özel karakterler, sunucu yapılandırmasına göre farklılık gösterir. Genel olarak en çok kullanılan özel karakterler şunlardır:
- Tire [-][/BR][/BR]- Alt çizgi [_][/BR][/BR]- Yüzde [%][/BR][/BR]- Yıldız [*][/BR][/BR]- Nokta [.][/BR][/BR]- Ünlem [!][/BR][/BR]- Soru işareti [?][/BR][/BR]- Ampersant [&][/BR][/BR]Ancak bu karakterlerin hepsi her sunucuda desteklenmeyebilir. Örneğin, bazı sunucularda tire karakteri kabul edilirken, bazılarında reddedilebilir. Bu nedenle karakter adı seçerken desteklenen karakterleri bilmek çok önemlidir.

Karakter Oluştururken Dikkat Edilmesi Gerekenler
Karakter adları oluşturulurken dikkat edilmesi gereken bazı önemli hususlar vardır. Bunlardan biri, karakter adında boşluk bırakmamaktır. Metin2 oyun motoru, karakter adlarında boşluk kullanımını desteklemez. Ayrıca, bazı özel karakterler SQL injection gibi güvenlik açıklarına neden olabilir. Bu yüzden sunucu tarafında filtreleme yapılması gerekir. Özellikle game server programming ve auth server yapılandırmalarında bu kontrollerin sağlanması, sunucunuzun güvenliği için kritiktir.

Python GUI ve Uiscript ile Karakter Adı Doğrulama
Bazı geliştiriciler, karakter adı doğrulamasını Python GUI veya uiscript dosyaları üzerinden yapmayı tercih eder. Bu sayede istemci tarafında karakter adı girildiğinde, önceden belirlenen kurallara göre doğrulama yapılır. Örneğin, sadece harf ve rakam içeren adlara izin verilebilir. Veya belirli özel karakterlerin kullanımına izin verilebilir. Bu doğrulama işlemleri, kullanıcı deneyimini artırırken aynı zamanda sunucu tarafında oluşabilecek hataları da önler.

Sunucu Tarafında Karakter Adı Filtreleme
Sunucu tarafında karakter adı doğrulama işlemleri genellikle C++ system üzerinden yapılır. Bu işlemlerde, karakter adı veritabanına yazmadan önce kontrol edilir. Eğer istenmeyen bir karakter içeriyorsa, kullanıcıya hata mesajı gönderilir. Bu tür kontroller, hem veritabanı bütünlüğünü korur hem de kullanıcıların güvenli ve uygun karakter adları oluşturmasını sağlar. Metin2 lobby kullanıcıları için bu tür sistemlerin doğru kurulması, sunucuların daha stabil ve güvenli çalışmasını sağlar.

Sonuç
Özel karakterlerle karakter açmak, Metin2 özel sunucularında kullanıcı deneyimini zenginleştiren küçük ama etkili bir yöntemdir. Ancak bu işlemin güvenli ve sorunsuz yapılabilmesi için hem istemci hem de sunucu tarafında gerekli kontrollerin yapılması gerekir. Metin2 development sürecinde bu konulara dikkat etmek, sunucularınızın kalitesini artıracaktır.


Creating Characters with Special Characters ('-', '_', '@', '!', '&', etc.) on Metin2 Lobby

In private Metin2 servers, some developers prefer to use special characters such as dashes (-), underscores (_), exclamation marks (!), ampersands (&), stars (*), or hash symbols (#) to make their character names unique or more eye-catching. However, correctly implementing these characters is crucial for security and preventing errors that may occur on the server-side.

Advantages of Using Special Characters
Using special characters allows players to create more unique and distinctive character names. This can significantly increase the visual appeal of their in-game identity. In certain server environments, creating a character name with special characters can even become a symbol of prestige. However, knowing which characters are supported is critical; otherwise, the character creation might fail or prevent login to the server.

Supported Special Characters
The list of special characters allowed in Metin2 private servers varies depending on the server configuration. Generally, the most commonly used special characters include:
- Dash [-][/BR][/BR]- Underscore [_][/BR][/BR]- Percent [%][/BR][/BR]- Asterisk [*][/BR][/BR]- Dot [.][/BR][/BR]- Exclamation mark [!][/BR][/BR]- Question mark [?][/BR][/BR]- Ampersand [&][/BR][/BR]However, not all of these characters are supported across every server. For example, while hyphens may be accepted on one server, they might be rejected on another. Therefore, knowing which characters are accepted when choosing your character name is essential.

What to Consider When Creating Character Names
There are several important considerations when creating character names. One of them is avoiding spaces, as the Metin2 game engine does not support space usage in character names. Additionally, certain special characters could lead to security vulnerabilities like SQL injection attacks. For this reason, filtering must be applied server-side. Especially in game server programming and auth server configurations, ensuring these checks are in place is critical for server security.

Character Name Validation with Python GUI and Uiscript
Some developers prefer to validate character names through Python GUI or uiscript files. This allows validation based on predefined rules when a character name is entered by the client. For instance, only names containing letters and numbers may be allowed, or specific special characters might be permitted. These validation processes enhance user experience while also preventing potential server-side errors.

Server-Side Character Name Filtering
Character name validation on the server-side is typically handled via C++ system. During these operations, the character name is checked before being written to the database. If unwanted characters are detected, an error message is sent to the user. Such controls preserve database integrity and ensure users create safe and appropriate character names. Proper implementation of these types of systems ensures more stable and secure operation of Metin2 lobby servers.

Conclusion
Creating characters with special characters is a small but effective method to enrich the gaming experience in Metin2 private servers. However, to ensure this process is secure and trouble-free, proper validation checks must be implemented both on the client and server sides. Paying attention to these aspects during Metin2 development will enhance the quality of your servers.
 

Şuan Bu Konuyu Görüntüleyen Kullanıcılar (Toplam : 0, Üye : 0, Misafir : 0)

Geri
Üst Alt