- Katılım
- 6 Mayıs 2022
- Konular
- 48,291
- Mesajlar
- 48,601
- Tepkime puanı
- 75
- M2 Yaşı
- 3 yıl 11 ay 10 gün
- Trophy Puan
- 48
- M2 Yang
- 488,879
Sistem Başka Forumdan Alıntıdır Kurulum yapılmadı test edilmedi
iyi kullanımlar Turkmmo Ailesi...!
iyi kullanımlar Turkmmo Ailesi...!
Kod:
#define ENABLE_SUPERSTONE_EVENT
Kod:
LPCHARACTER CHARACTER_MANAGER::SpawnMob( { [...] }
Kod:
#ifdef ENABLE_SUPERSTONE_EVENT // Spawn extra stacked metin stones when the event flag is enabled. // We intentionally reuse the same (x,y,z), show/motion flags but different rotation. static void SpawnExtraStones(const CMob* pkMob, int lMapIndex, int x, int y, int z, bool bShow, bool bSpawnMotion #ifdef ENA[HASH=2]#ifdef[/HASH]_SHOW_MOB_INFO , bool bAggressive #endif ) {[HASH=3]#endif[/HASH]onst int count = MIN(quest::CQuestManager::instance().GetEventFlag("superstone_event"), 4); for (int i = 0; i < count; ++i) { const LPCHARACTER extra = CHARACTER_MANAGER::instance().CreateCharacter(pkMob->m_table.szLocaleName); if (!extra) continue; extra->SetProto(pkMob); extra->SetRotation(number(0, 360)); if (bShow) { if (!extra->Show(lMapIndex, x, y, z, bSpawnMotion #ifdef ENA[HASH=2]#ifdef[/HASH]_SHOW_MOB_INFO , bAggressive #endif [HASH=3]#endif[/HASH] )) { M2_DESTROY_CHARACTER(extra); } } else { extra->SetMapIndex(lMapIndex); extra->SetXYZ(x, y, z); } } } #endif [/C[HASH=3]#endif[/HASH] [CODE title="Tekrar ara"]LPCHARACTER CHARACTER_MANAGER::SpawnMob { ...
Kod:
return (ch); }
Kod:
#ifdef ENAB[HASH=2]#ifdef[/HASH]ERSTONE_EVENT if (pkMob->m_table.bType == CHAR_TYPE_STONE && lMapIndex < 10000 && quest::CQuestManager::instance().GetEventFlag("superstone_event") > 0) { SpawnExtraStones(pkMob, lMapIndex, x, y, z, bShow, bSpawnMotion #ifdef ENAB[HASH=2]#ifdef[/HASH]SHOW_MOB_INFO , bAggressive #endif [HASH=3]#endif[/HASH] } #endif[/COD[HASH=3]#endif[/HASH]
Metin2 Lobby platformu üzerinden Metin2 özel sunucuları geliştirmek isteyen geliştiriciler için Seviye Göster / Gizle sistemi oldukça önemli bir özelliktir. Bu özellik sayesinde oyuncuların seviye durumlarını diğer oyunculardan gizleyebilir veya gösterebilirsiniz. Bu işlem genellikle PvP sistemlerinde stratejik avantaj sağlamak veya istenmeyen dikkatleri çekmemek için yapılır. Bu yazıda Metin2 özel sunucularında seviye gösterme ve gizleme işlemlerinin nasıl yapıldığını detaylıca inceleyeceğiz.
Seviye Göster / Gizle Sistemi Nedir?
Metin2 oyununda bazı sunucular, oyuncuların seviyelerini diğer oyuncular tarafından görünmesini engellemek ister. Bu özellikle PvP savaş ortamlarında avantaj sağlar. Örneğin düşük seviye bir karakter yüksek seviye gibi görünerek tuzağa düşürülebilir. Bu tür stratejik oyun stilleri için seviye gizleme sistemi devreye girer.
C++ Kaynak Kodları ile Seviye Gösterimi
Metin2 özel sunucularında seviye gizleme işlemi genellikle game server üzerindeki C++ kaynak kodlarında yapılan değişikliklerle sağlanır. Bu işlem için client src ve server src dosyalarında düzenlemeler yapılmalıdır. Özellikle char.cpp, packet.h ve locale_inc.h gibi dosyalarda gerekli ayarlamalar yapılmalıdır.
Python GUI ve Py Root Kullanımı
Metin2 geliştiricileri, seviye göster/gizle sistemini daha kolay yönetebilmek için Python tabanlı GUI arayüzlerinden yararlanabilir. Bu tür sistemlerde Py Root ve UIscript gibi araçlar kullanılır. Geliştiriciler, uiscript yardımıyla kullanıcı dostu bir arayüz oluşturabilir ve oyuncuların seviye görünürlüğünü değiştirebilmesi için butonlar ekleyebilirler. Bu sayede hem geliştirici hem de oyuncu tarafı için daha sade ve etkili bir sistem oluşturulmuş olur.
Martysama ve Metin2 Development Araçları
Martysama gibi Metin2 geliştirme platformları, bu tarz sistemlerin entegrasyonunu kolaylaştırmaktadır. Geliştiriciler, Metin2Dev toplulukları üzerinden source edit işlemleri yapabilir, farklı modül ve sistemleri entegre edebilirler. DB ve Auth sistemlerinde de bu tür değişiklikler yapılabileceği gibi, channel bazlı seviye görünümü de ayarlanabilmektedir.
Seviye Gösterme Sisteminin Avantajları
- Oyuncuların kendi tercihlerine göre seviye görünürlüğüne karar verebilmesi.
- PvP ortamında stratejik avantaj sağlanması.
- Sunucu içi rekabetin artırılması.
- Yeni oyuncuların rahatsız edilmeden oyunu keşfetmesi.
Sonuç
Metin2 özel sunucularında seviye göster/gizle sistemi, oyuncu deneyimini zenginleştiren ve PvP atmosferini daha stratejik hale getiren önemli bir özelliktir. C++ ve Python tabanlı sistemlerle bu işlem oldukça esnek bir şekilde yapılabilmektedir. Metin2 Lobby olarak siz geliştiriciler için bu tür gelişmiş sistemleri destekleyen kaynaklar sunmaya devam ediyoruz.
Metin2 Lobby platform provides an important feature called Show/Hide Level for developers looking to create custom Metin2 servers. This feature allows players to hide or show their level status from other players. This process is often used in PvP systems to gain strategic advantages or avoid unwanted attention. In this article, we will examine in detail how showing and hiding levels work on Metin2 private servers.
What is the Show/Hide Level System?
In Metin2, some servers prefer to prevent other players from seeing player levels. This especially provides advantages in PvP combat environments. For example, a low-level character may be lured by appearing high-level. For such strategic gameplay styles, the level hiding system comes into play.
Level Display with C++ Source Codes
In Metin2 private servers, level hiding is usually achieved through modifications in C++ source codes located on the game server. For this process, modifications must be made in files such as client src and server src. Specifically, adjustments must be made in files like char.cpp, packet.h, and locale_inc.h.
Using Python GUI and Py Root
Metin2 developers can utilize Python-based GUI interfaces to more easily manage the show/hide level system. In such systems, tools like Py Root and UIscript are used. Developers can create user-friendly interfaces with uiscript and add buttons allowing players to change their level visibility. Thus, a simpler and more effective system is created for both developers and players.
Martysama and Metin2 Development Tools
Platforms like Martysama make integration of such systems easier for Metin2 development. Developers can perform source edit operations via Metin2Dev communities and integrate different modules and systems. Such changes can also be implemented in DB and Auth systems, and level visibility can be adjusted based on channel.
Advantages of the Level Display System
- Allowing players to decide on level visibility according to their preferences.
- Providing strategic advantages in PvP environments.
- Increasing competition within the server.
- Enabling new players to explore the game without being disturbed.
Conclusion
The show/hide level system in Metin2 private servers is an important feature that enriches the player experience and makes the PvP atmosphere more strategic. These processes can be flexibly implemented using C++ and Python-based systems. As Metin2 Lobby, we continue to provide resources supporting such advanced systems for you developers.
