Kimseyi kendinden fazla düşünmiceksin bu hayatta... //
C++ Source Kaynaklı Küçük Ayrıntılı Ayarlar Part2
Metin2 özel sunucu geliştirme sürecinde, kaynak koddan yapılan küçük ama etkili ayarlamalar, oyun deneyimini ciddi anlamda artırabilir. Bu yazıda, C++ tabanlı game ve auth sunucularında yapılan küçük ama önemli değişikliklerden bahsedeceğiz. Özellikle martysama ve diğer Metin2Dev kaynaklarında yer alan yapılandırmalar üzerinden gideceğiz.
Oyuncu Bilgi Sistemi Ayarları
Metin2 oyununda oyuncuların bilgilerine erişim, hem client src hem de server src tarafında yapılabilecek küçük değişikliklerle sağlanabilir. Örneğin, oyuncu profili açıldığında gösterilen can, mana, level gibi bilgiler, uiscript dosyalarında ve py root içindeki Python betikleriyle değiştirilebilir. Bu betiklerin doğru konfigürasyonu, kullanıcı arayüzünü daha şeffaf ve kullanışlı hale getirir.
PVP Sistem Ayarları
Metin2 PVP sistem üzerinde çalışan sunucularda, bazı parametrelerin manuel olarak ayarlanması gerekir. Bu ayarlar genellikle game core içindeki C++ dosyalarında bulunur. Örneğin, pvp_damage_rate değeri, PvP savaşlarında verilen hasar miktarını belirler. Bu değerin ayarlanması için source edit işlemi yapılır ve derleme (compile) işlemi gerçekleştirilir. Benzer şekilde pvp_cooldown_time gibi değerler de değiştirilebilir.
Güvenlik ve DB Ayarları
DB core ve auth sunucusu arasında güvenli bağlantı kurmak için, MySQL ayarları önemlidir. Metin2 lobby tarzı sunucularda, kullanıcıların giriş yaparken karşılaştığı ilk güvenlik katmanı budur. Auth sunucusundaki IP filtrelemeleri, oturum süreleri gibi ayarlar, C++ tabanlı güvenlik protokolleriyle yapılandırılır. Ayrıca db bağlantısı sırasında şifreleme yöntemleri de aktif edilebilir.
Py GUI ve UI Kullanımı
Py GUI ve Python GUI araçları, oyun içi arayüzlerin hızlıca tasarlanmasını sağlar. Özellikle uiscript dosyalarında yapılan değişiklikler, bu grafiksel arayüzlerle kolayca test edilebilir. Py root içindeki Python dosyaları, arayüzden gelen verileri işler ve sunucuya iletir. Bu sayede, pack dosyaları içindeki arayüz değişiklikleri daha hızlı entegre edilir.
Sunucu Kanal Ayarları (Channel)
Metin2 sunucularında birden fazla kanal barındırılması mümkündür. Her kanal ayrı bir channel yapılandırmasıyla çalışır. Bu yapılandırma, game server programming kapsamında C++ kaynak kodlarında tanımlanır. Kanal başına maksimum oyuncu sayısı, harita ayarları, PvP/PvE durumu gibi ayarlar, her kanal için özelleştirilebilir. Bu sayede büyük sunucularda kullanıcı trafiği daha dengeli yönetilebilir.
Kaynak Kod Derleme (Compile) İşlemleri
Metin2 compile işlemi, yapılan tüm değişikliklerin aktif hale gelmesi için zorunludur. Client src ve server src üzerinde yapılan değişiklikler, Visual Studio veya benzeri IDE'lerle derlenmelidir. Derleme sırasında hata alınmaması için, core yapılar dikkatlice incelenmeli ve bağımlılıklar kontrol edilmelidir. Hataların çözümü için Martysama forumları ve Metin2Dev kaynakları sıklıkla başvurulur.
Sonuç
Metin2 private server geliştirme süreci, özellikle C++ ve Python bilgisi gerektiren teknik bir alandır. Ancak küçük ayarlamalar bile büyük farklar yaratabilir. Bu yazıda değindiğimiz gibi, oyuncu bilgileri, PvP sistemleri, güvenlik protokolleri, arayüz tasarımı ve kanal yapılandırmaları gibi alanlarda yapılan değişiklikler, sunucunuzun rekabet gücünü artırmaktadır. Metin2Lobby olarak, bu konularda bilgi paylaşımlarına devam edeceğiz.
Detailed Settings from C++ Source Part2
In the process of developing Metin2 private servers, small but effective adjustments made from the source code can significantly enhance the gaming experience. In this article, we will discuss important but minor changes made on C++-based game and auth servers. We will especially focus on configurations found in martysama and other Metin2Dev sources.
Player Information System Settings
Access to player information in Metin2 can be achieved through small changes made on both the client src and server src. For instance, the HP, mana, level, and similar stats shown when a player profile is opened can be modified with uiscript files and Python scripts located in py root. Proper configuration of these scripts makes the user interface more transparent and user-friendly.
PVP System Settings
On servers running Metin2 PVP systems, certain parameters must be configured manually. These settings are usually located in C++ files within the game core. For example, the pvp_damage_rate value determines the damage dealt in PvP battles. To adjust this value, a source edit is performed followed by a compile operation. Similarly, values like pvp_cooldown_time can also be changed.
Security and DB Configurations
To establish a secure connection between the DB core and auth server, MySQL configurations are crucial. On servers similar to Metin2 lobby, the first security layer encountered during login is exactly this. IP filtering, session durations, and other settings in the auth server are configured with C++-based security protocols. Moreover, encryption methods can also be activated during db connections.
Py GUI and UI Usage
Py GUI and Python GUI tools allow rapid design of in-game interfaces. Changes made in uiscript files can easily be tested using these graphical interfaces. The Python files within py root process data coming from the interface and relay it to the server. This way, UI modifications inside pack files are integrated faster.
Server Channel Settings (Channel)
It's possible for Metin2 servers to host multiple channels. Each channel operates under its own channel configuration. This configuration is defined in C++ source codes within game server programming. Settings such as maximum player count per channel, map settings, and PvP/PvE status can be customized for each channel. This allows larger servers to manage user traffic more evenly.
Source Code Compilation (Compile) Processes
Metin2 compile operations are essential for all changes made to take effect. Modifications made on client src and server src must be compiled using IDEs like Visual Studio. To avoid errors during compilation, core structures should be carefully reviewed and dependencies checked. Forums like Martysama and resources from Metin2Dev are frequently consulted to resolve errors.
Conclusion
The process of developing Metin2 private servers is a technical field requiring knowledge in C++ and Python. However, even small adjustments can make a big difference. As mentioned in this article, changes made in areas like player stats, PvP systems, security protocols, UI design, and channel configurations can increase your server's competitiveness. At Metin2Lobby, we will continue sharing knowledge on these topics.
