[PY]Leş sistemi Leş Sayısı yazısını efsunların altına eklemek

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

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Merhaba, takıntılarımdan birini daha paylaşmak istedim, eski sistemde taşların altında duruyordu ben efsun altına aldım ve benim gibi takıntılılar için paylaşmak istedim :D

SİSTEM FROZEN ÖLDÜRME SAYISI SİSTEMİDİR EKLEYENLER uitooltip.py'ye eklediklerini silsinler ve şu yolu takip etsinler



KANIT:


Metin2 Efsun Sistemine Leş Sayısı Bilgisini Eklemek

Metin2 özel sunucularında oyun deneyimini artırmak isteyen geliştiriciler için küçük ama etkili değişiklikler yapmak oldukça değerlidir. Bu yazıda, efsun (affix) sistemine leş sayısı (corpse count) bilgisini eklemeyi anlatacağız. Bu sayede oyuncular, efsunları daha bilinçli kullanabilir ve savaş esnasında öldürülen rakipleri takip edebilir. Bu işlem, C++ kaynak kod üzerinde değişiklik yapılarak gerçekleştirilir.

Neden Leş Sayısı?
Metin2 PvP ortamında, öldürülen rakiplerle ilgili veri toplamak stratejik açıdan büyük önem taşır. Özellikle turnuvalarda ya da gilde savaşlarında, rakibin kaç kez öldürüldüğünü bilmek avantaj sağlayabilir. Bu bilgiyi doğrudan efsunlara entegre ederek, kullanıcı dostu bir arayüz sunabiliriz.

Gereksinimler
  • Python GUI bilgisi
  • Py Root ve UI Script düzenlemeleri
  • Oyun sunucusuna (Game Server) erişim
  • C++ bilgisi (özellikle Game Core tarafında)

Adım Adım Uygulama

Öncelikle, leş sayısını tutacak olan veriyi sunucu tarafında tanımlamalıyız. Bunun için Game Server kaynak kodunda oyuncu sınıfına bir sayaç ekleyeceğiz. Örneğin, m_nCorpseCount adında bir değişken tanımlayıp, oyuncu öldürüldüğünde bu değeri artırmalıyız.

Efsunlara Bilgi Gönderimi
Leş sayısı bilgisini efsunlara entegre etmek için, uiscript dosyasında efsun açıklamasına bu veriyi eklememiz gerekir. Burada dikkat etmemiz gereken nokta, verinin gerçek zamanlı olarak güncellenmesidir. Bu işlem için Py Root tarafında bir fonksiyon yazarak, sunucudan veri alıp efsun açıklamasına yazdırabiliriz.

Python GUI Arayüzü
Arayüz tarafında, efsun penceresinde bu bilginin nasıl görüneceğini belirlemek için Python GUI kodlarını düzenlemeliyiz. Oyuncu efsunu seçtiğinde, açıklamaların arasında Leş Sayısı: X gibi bir ifade görünmelidir. Bu sayede kullanıcı, efsunun PvP geçmişini görebilir.

Test ve Derleme
Değişiklikler tamamlandıktan sonra, source edit işlemini gerçekleştirmeli ve compile işlemi ile sunucuyu yeniden başlatmalıyız. Test aşamasında, birkaç karakterle PvP yaparak leş sayısının doğru şekilde efsunlara yansıdığını kontrol etmeliyiz.

Sonuç
Metin2 özel sunucularında efsunlara leş sayısını eklemek, oyuncuların daha fazla etkileşim kurmasını ve stratejik düşünmesini sağlar. Bu küçük değişiklik, game core ve db core üzerinde yapılan küçük ama etkili bir geliştirmedir. Geliştiriciler, bu yöntemi farklı verileri efsunlara entegre etmek için de kullanabilirler.

Kaynaklar
Metin2 Lobby sitesinden C++ kaynak kod örneklerine ulaşabilir, martysama tarafından geliştirilen sistemlerden ilham alabilirsiniz.


Adding Corpse Count to Affixes in Metin2

To enhance the gaming experience on Metin2 private servers, small but effective modifications can make a significant difference. In this article, we will explain how to add corpse count information directly into the affix system. This allows players to use affixes more strategically and track their kills during combat. This process involves making changes to the C++ source code.

Why Corpse Count?
In Metin2's PvP environment, tracking how many times an opponent has been killed is strategically important. Especially during tournaments or guild wars, knowing how often an enemy has died can provide a tactical advantage. Integrating this data directly into the affixes provides a user-friendly interface.

Requirements
  • Python GUI knowledge
  • Py Root and UI Script modifications
  • Access to the game server (Game Server)
  • C++ knowledge (especially on the Game Core side)

Step-by-Step Implementation

First, define the data to store the corpse count on the server side. Add a counter variable such as m_nCorpseCount to the player class and increment it each time the player is killed.

Sending Data to Affixes
To integrate the corpse count into the affixes, you need to append this information to the affix description in the uiscript file. The key here is ensuring that the data updates in real-time. You can achieve this by writing a function in Py Root that fetches the data from the server and displays it in the affix description.

Python GUI Interface
On the UI side, adjust the Python GUI code so that when a player selects an affix, an entry like Corpse Count: X appears within the description. This allows users to view the PvP history associated with the affix.

Testing and Compilation
After completing the modifications, perform the source edit and compile the server again. During testing, engage in PvP with multiple characters to ensure the corpse count is accurately reflected in the affixes.

Conclusion
Adding corpse count to affixes in Metin2 private servers encourages more interaction and strategic thinking among players. This minor modification is an impactful enhancement to the game core and db core. Developers can apply this method to integrate other types of data into affixes as well.

Resources
You can find C++ source code examples at Metin2 Lobby and draw inspiration from systems developed by martysama.
 

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

Geri
Üst Alt