Lonca Hain Sistemi [C++/Pyhton] #Karaca425

  • 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
For : @ ; :)

Herkes İyi Kullanımlar.

Ekleyenler Resim Atarsa Konuya Eklerim.







Lonca Hain Sistemi [C++/Python] #Karaca425


Metin2 özel sunucularında sunucu sahipleri ve geliştiricileri tarafından en çok aranan sistemlerden birisi olan Lonca Hain Sistemi, oyuncuların kendi aralarındaki sadakat, güven ve rekabet gibi temalara dayalı olarak şekillenen dinamikleri yönetmesine yardımcı olur. Bu sistem sayesinde loncalar içinde hainlik yapabilecek oyuncular belirlenerek, hem oyun içi dengeler korunur hem de daha sürdürülebilir bir PvP ortamı oluşturulabilir.

Sistem Nedir?
Lonca Hain Sistemi, Metin2 oyununda loncaların iç güvenliğini sağlamak amacıyla geliştirilmiş bir mekaniktir. Oyuncular birbirlerine zarar verebilir ancak belirli bir süre boyunca lonca içinde aynı grupta kalan oyuncuların birbirlerine zarar verememesi gibi korumalar vardır. Ancak bazı oyuncular bu güveni istismar ederek lonca içinde hainlik yapabilir. Bu sistemin amacı, bu tür davranışları tespit edip cezalandırmaktır.

C++ Tarafında Uygulama
C++ tarafında bu sistem genellikle Game Server üzerinde çalışır. Oyuncuların birbirlerine zarar verdiği durumlar kontrol edilir. Eğer iki oyuncu aynı loncada iken birbirlerine saldırdıysa, bu olay loglanır. Belirli bir süre zarfında belirli sayıda saldırı gerçekleştiren oyuncuya 'hain' etiketi verilir. Bu etiket doğrultusunda lonca liderine veya yetkililere rapor gönderilir.

Kod tarafında örneğin char_battle.cpp dosyasında, iki karakterin savaş başlattığı yerde lonca kontrolü yapılır. Eğer aynı loncadan iseler, bir sayaç artırılır. Sayacın belirli bir değeri geçmesi durumunda, hainlik logu açılır ve gerekli aksiyonlar başlatılır.

Python Tarafında Uygulama
Python tarafı genellikle GUI tabanlı bir yönetim paneli olarak çalışır. Bu panel üzerinden hainlik yapılan oyuncular listelenir, cezalandırma işlemleri uygulanabilir. Örneğin bir tkinter tabanlı bir arayüz ile yetkililer, son olayları takip edebilir ve gerekli müdahaleleri yapabilir.

Python tarafında sqlite3 veya mysql.connector gibi veritabanı modülleri kullanılarak hainlik verileri saklanabilir. Bu veriler, oyuncu adı, loncası, saldırı sayısı ve zaman damgası gibi bilgileri içerir. Yetkililer bu verileri analiz ederek karar verebilirler.

Veritabanı Entegrasyonu
Sistem, DB Core ile entegre çalışarak hainlik olaylarını kalıcı hale getirir. Olaylar GameDB'de saklanabilir. AuthServer ile entegre çalışması durumunda, oyuncu silinse bile geçmiş veriler korunabilir. Bu sayede uzun vadeli izleme yapılabilir.

Hainlik Durumu Nasıl Tetiklenir?
Oyuncu, aynı loncada bulunan başka bir oyuncuya belirli bir süre içinde belirli sayıda saldırı gerçekleştirdiğinde, hainlik seviyesi artar. Bu seviye belirli bir eşiği geçtiğinde otomatik olarak lonca liderine bildirim gönderilir. Bildirim, hem C++ tarafında hem de Python GUI üzerinden yapılabilir.

Avantajları
  • Lonca içi sadakati artırır.
  • PvP deneyimini daha adil kılar.
  • İstismar edilmesini engeller.
  • Yetkililere hızlı müdahale imkanı sunar.

Sonuç
Lonca Hain Sistemi, Metin2 özel sunucularında hem oyun içi sosyal yapıyı korur hem de PvP dengesini sağlar. C++ ve Python dillerinin birlikte kullanılması ile güçlü bir sistem oluşturulabilir. Bu sistem, hem geliştiriciler hem de oyuncular için değerli bir araçtır.


Guild Traitor System [C++/Python] #Karaca425


The Guild Traitor System is one of the most sought-after features among Metin2 private server owners and developers. This system helps manage dynamics such as loyalty, trust, and rivalry among players within the game. It allows for identifying traitors within guilds, preserving in-game balance and promoting a sustainable PvP environment.

What Is The System?
The Guild Traitor System is a mechanic designed to secure internal guild safety in Metin2. Players can harm each other, but there are protections preventing same-guild members from harming each other during a certain duration. However, some players may abuse this trust by committing treason inside the guild. This system aims to detect and penalize such behaviors.

Implementation on C++ Side
On the C++ side, the system typically runs on the Game Server. Instances where players damage each other are monitored. If two players belonging to the same guild attack each other, that event is logged. After a specific number of attacks within a given time frame, the player is marked as a 'traitor'. This label triggers reports sent to guild leaders or admins.

In code terms, for instance, within the char_battle.cpp file, where character combat begins, a guild check occurs. If both players belong to the same guild, a counter increases. When the counter surpasses a threshold, a traitor log is created and necessary actions are initiated.

Implementation on Python Side
The Python side generally operates as a GUI-based admin panel. Through this panel, administrators can view traitor-related incidents and apply penalties. For example, with a tkinter-based interface, admins can monitor recent events and take appropriate action.

In Python, database modules like sqlite3 or mysql.connector can store traitor data. These records may include player name, guild, number of attacks, and timestamp. Admins can analyze these logs to make informed decisions.

Database Integration
Integrated with DB Core, the system makes traitor events persistent. Events are stored in the GameDB. If integrated with AuthServer, even if a player account is deleted, historical data remains preserved, allowing long-term monitoring.

How Is The Traitor Status Triggered?
When a player attacks another member of the same guild multiple times within a defined timeframe, their traitor level increases. Once this level exceeds a set threshold, a notification is automatically sent to the guild leader. Notifications can be implemented on both the C++ and Python GUI sides.

Benefits
  • Increases loyalty within guilds.
  • Makes the PvP experience more fair.
  • Prevents abuse of guild trust.
  • Provides quick intervention opportunities for admins.

Conclusion
The Guild Traitor System preserves in-game social structures and balances PvP gameplay in Metin2 private servers. A powerful system can be built by combining C++ and Python. This system serves as a valuable tool for both developers and players.​
 

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

Geri
Üst Alt