Renkli kalem sistemi

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

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Pl84d9.jpg


client/packet.h



arat



değiştir

client/pythonnetworkstreamphasegame.cpp (recvchatpacket fonksiyonun içinde)



arat

Kod:
string colored_p; string colored_buf;

ekle

Kod:
_snprintf(line, sizeof(line), "%s", p);

arat



üstüne ekle

Kod:
_snprintf(line, sizeof(line), "%s", p);

arat

Kod:
_snprintf(line, sizeof(line), "%s", colored_p.c_str());

değiştir

Kod:
if (pkInstChatter->IsPC())             CPythonChat::Instance().AppendChat(kChat.type, buf);

arat

Kod:
CPythonChat::Instance().AppendChat(kChat.type, colored_buf.c_str());

altındakini değiştir

dumpproto/itemcsvreader.cpp



düzenle

game/packet.h



arat



değiştir

game/input_main.cpp



arat



değiştir


game/char.h

Kod:
bool            m_bWalking;

arat

Kod:
BYTE            TypingColor;

üstüne ekle.

Kod:
bool            IsStateMove() const            { return IsState((CState&)m_stateMove); }

arat

Kod:
BYTE            GetTypingColor()            { return TypingColor; } BYTE            SetTypingColor(BYTE _c)        { TypingColor = _c; }

üstüne ekle

char.cpp

Kod:
TypingColor = 0;
(Initialize fonksiyonun içine ekle)

item.cpp

( EquipTo fonksiyonu)

arat

Kod:
if(GetType() == ITEM_UNIQUE && GetSubType() == UNIQUE_COLOR)     ch->SetTypingColor(GetValue(1));

ekle

( Unequip fonksiyonu)

arat

Kod:
if(GetType() == ITEM_UNIQUE && GetSubType() == UNIQUE_COLOR)     m_pOwner->SetTypingColor(0);

ekle

common/item_length.h



arat



değiştir

db/protoreader.cpp



düzenle

------------------------------------------
locale/

item proto

item names

item list

alıntıdır
iyi forumlar.


Renkli Kalem Sistemi Nedir?
Metin2 özel sunucularında kullanıcı deneyimini artırmak ve oyun içi etkileşimi çeşitlendirmek amacıyla geliştirilen Renkli Kalem Sistemi, oyuncuların belirli nesneleri veya metinleri özelleştirebilmesini sağlar. Bu sistem, özellikle PvP sunucularında estetik açıdan büyük bir fark yaratır ve oyuncuların karakterlerini diğerlerinden ayırt edebilmesine olanak tanır. Renkli Kalem Sistemi, C++ tabanlı sunucu kaynak kodlarında geliştirilerek oyun içi GUI (grafiksel kullanıcı arayüzü) üzerinde etkileşimli olarak kullanılabilir hale getirilir.

Sistem Nasıl Çalışır?
Renkli Kalem Sistemi, genellikle bir GUI üzerinden çalışır. Oyuncu, belirli bir item veya komut sayesinde bu sistemi aktif eder. Ardından, seçtiği nesne veya metin için farklı renk kombinasyonları seçebilir. Bu işlem genellikle Python GUI (PyUI) kullanılarak geliştirilir. Sistem, veritabanında (DB) kalıcı olarak saklanan renk değerlerini okuyarak, karakterin görünümünü anlık olarak değiştirir. Bu sayede hem estetik hem de performans açısından optimize bir yapı sağlanır.

Sistemin Avantajları
Oyuncu Odaklı Tasarım: Sistem, oyuncuların kişisel tarzlarını yansıtabilmeleri için geniş bir özelleştirme imkanı sunar. Özellikle Metin2 gibi MMORPG oyunlarda bu tür sistemler, karakterlerin daha özgün görünmesini sağlar.
Sunucu Performansını Etkilemez: Sistem, sunucu tarafında hafif ve optimize bir yapıya sahiptir. Gerekli işlemler C++ tabanlı sunucu çekirdeğinde (core) optimize şekilde işlenir. Bu sayede sistem, sunucu performansını ciddi anlamda etkilemez.
Geliştiriciye Esneklik Sağlar: Renkli Kalem Sistemi, geliştiricilerin kendi özel GUI'lerini oluşturmaları için esnek bir yapı sunar. PyRoot dosyaları ile kolayca entegre edilebilir ve özelleştirilebilir.

Kurulum ve Entegrasyon
Bu sistemi bir Metin2 özel sunucusuna entegre etmek oldukça basittir. Öncelikle gerekli C++ kaynak kod dosyaları projeye dahil edilir. Ardından, Python tarafında UI Script (UIScript) dosyası ile arayüz tasarımı yapılır. PyGUI modülleri ile sistem dinamikleştirilir. Son olarak, Auth ve Game sunucularında gerekli veritabanı işlemleri tanımlanır. Bu işlemler doğru şekilde tamamlandığında, sistem tamamen çalışır duruma gelir.

Sonuç
Renkli Kalem Sistemi, Metin2 özel sunucularında kullanıcı deneyimini artırmak için ideal bir özelliktir. Geliştiriciler için kolay entegre edilebilir ve özelleştirilebilir bir yapı sunarken, oyuncular için estetik ve fonksiyonel bir araç sağlar. Bu sistem, hem PvP hem de PvE sunucularda büyük bir popülerlik kazanabilir. Metin2 Lobby gibi platformlar aracılığıyla bu tür gelişmiş sistemler, topluluk tarafından kolayca erişilebilir ve uygulanabilir hale gelir.


What is the Colored Pen System?
The Colored Pen System, developed to enhance user experience and diversify in-game interactions on Metin2 private servers, allows players to customize certain objects or texts. This system creates a significant visual difference especially in PvP servers and enables players to distinguish their characters from others. The Colored Pen System is implemented through C++ based server source codes and can be made interactive on the in-game GUI (graphical user interface).

How Does the System Work?
The Colored Pen System typically operates via a GUI. The player activates the system by using a specific item or command. Then, they can choose different color combinations for the selected object or text. This process is usually developed using Python GUI (PyUI). The system reads color values stored permanently in the database (DB) and instantly modifies the character's appearance. Thus, both aesthetic and performance-optimized structures are achieved.

Advantages of the System
Player-Centric Design: The system offers extensive customization options allowing players to reflect their personal style. Especially in MMORPGs like Metin2, such systems help make characters more unique.
Does Not Affect Server Performance: The system has a lightweight and optimized structure on the server side. Necessary operations are processed efficiently within the C++ based server core. Thus, the system does not significantly affect server performance.
Provides Flexibility to Developers: The Colored Pen System offers a flexible structure for developers to create their own custom GUIs. It can be easily integrated and customized with PyRoot files.

Installation and Integration
Integrating this system into a Metin2 private server is quite simple. First, the required C++ source code files are included in the project. Then, the UI Script (UIScript) file is used to design the interface on the Python side. The system is made dynamic using PyGUI modules. Finally, necessary database operations are defined on Auth and Game servers. Once these processes are completed correctly, the system becomes fully operational.

Conclusion
The Colored Pen System is an ideal feature to enhance user experience on Metin2 private servers. While offering an easy-to-integrate and customizable structure for developers, it provides players with an aesthetic and functional tool. This system can gain popularity on both PvP and PvE servers. Such advanced systems become easily accessible and applicable through platforms like Metin2 Lobby.
 

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

Benzer konular

Geri
Üst Alt