[C++ , PY, LUA] KARAKTER KİLİT SİSTEMİ

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

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Sistem güncellemesi :
  • <li data-xf-list-type="ul">Taskbar'a kilit butonu eklendi <li data-xf-list-type="ul">Karakter hızlarının bozulmasına neden olan hata düzeltildi. <li data-xf-list-type="ul">Elle kilit açılma kısmının her girişte çıkmasına neden olan hata düzeltildi.


Kilit Aktif Edildikten Sonra Deaktif Olan Özellikler :

  • <li data-xf-list-type="ul">Konuşma engeli (Grup-Lonca-Normal-Bağırmak hiçbirinden konuşamazsınız.) <li data-xf-list-type="ul">Yere item atamaz veya yerden item alamazsınız. <li data-xf-list-type="ul">Hareket edemezsiniz. (Karakter yerinden kımıldayamaz.) <li data-xf-list-type="ul">İtem takamaz, çıkaramaz ve değiştiremezsiniz. <li data-xf-list-type="ul">İtem satın alamaz ya da satamazsınız. <li data-xf-list-type="ul">Pazar kuramaz ve açamazsınız. <li data-xf-list-type="ul">Ticareti kullanamazsınız. <li data-xf-list-type="ul">Serbest alma modunu kullanamazsınız. <li data-xf-list-type="ul">NPC’leri kullanamazsınız. <li data-xf-list-type="ul">Depoyu kullanamazsınız <li data-xf-list-type="ul">İtemlere efsun,cevher ve taş ekleyemezsiniz, efsunlarını değiştiremezsiniz. <li data-xf-list-type="ul">İtemlere + basamazsınız(demirci, kutsama kağıtı, büyülü metal vs). <li data-xf-list-type="ul">Aktif itemlerin hiçbirini kullanamazsınız. (Pelerin, dedektör, iksirler vs) <li data-xf-list-type="ul">Arkadaş ekleyemezsiniz. <li data-xf-list-type="ul">Grup yollayamazsınız. <li data-xf-list-type="ul">Lonca daveti yapamazsınız. <li data-xf-list-type="ul">Ekipman isteği yollayamazsınız. <li data-xf-list-type="ul">Duello yollayamazsınız.




Metin2 Özel Sunucularında Karakter Kilitleme Sistemi

Metin2 özel sunucu geliştirme sürecinde, oyuncuların güvenliğini ve oyun içi deneyimi artırmak amacıyla birçok sistem geliştirilir. Bunlardan birisi de Karakter Kilitleme Sistemi'dir. Bu sistem, oyuncuların karakterlerini belirli bir süre boyunca kilitleyerek başka oyuncuların erişimini engellemelerini sağlar. Bu sayede PvP sunucularında istenmeyen saldırılar önlenebilir veya belirli bir süre boyunca karakterinizi koruma altına alabilirsiniz.

Sistem Dilleri: C++, Python ve Lua

Karakter kilitleme sistemi, genellikle üç farklı teknolojiyle entegre edilebilir: C++, Python ve Lua.

C++ tarafında, bu sistem doğrudan oyun sunucusunun çekirdek dosyalarında geliştirilir. Özellikle game core üzerinde yapılan değişikliklerle, karakter kilitleme komutları sunucu tarafından doğrudan işlenir. Bu sayede performans kaybı minimum seviyede tutulur ve güvenlik daha yüksek seviyededir.

Python tarafında ise GUI tabanlı arayüzlerle kullanıcı dostu sistemler geliştirilebilir. Örneğin, bir py root üzerinden karakter kilitleme paneli tasarlanabilir. Oyuncu, bu panel aracılığıyla kendi karakterini kilitleyebilir veya kilidi açabilir. Ayrıca uiscript yardımıyla bu sistem doğrudan oyun içi arayüze entegre edilebilir.

Lua ise genellikle istemci tarafında kullanılır. Karakter kilitleme işlemi Lua scriptleri ile tetiklenebilir. Örneğin, bir tuşa basıldığında karakterinizi otomatik olarak kilitleyen bir komut çalıştırılabilir.

Neden Karakter Kilitleme Sistemi Gereklidir?

PvP odaklı Metin2 sunucularında, oyuncular genellikle karakterlerini korumak isterler. Özellikle Metin2 PVP sistemleri gelişmiş sunucularda, karakter kilitleme sistemi; oyuncuların istemedikleri durumlarda saldırıya uğramasını engeller. Bu sistem, Metin2 server src üzerinde geliştirildiğinde, sunucu yöneticileri oyuncuların deneyimini ciddi anlamda artırabilirler.

Sistem Kurulumu ve Entegrasyon

Karakter kilitleme sisteminin kurulumu, genellikle source edit süreçlerini içerir. Metin2 compile işlemi sırasında, gerekli C++ kodlar eklenmelidir. Ayrıca auth ve game sunucuları arasında senkronizasyon sağlanmalıdır. DB tarafında da gerekli tablolar oluşturulmalı ve kilitleme durumu veritabanında saklanmalıdır. DB Core üzerinde yapılacak değişikliklerle, sistem daha hızlı ve güvenli çalışabilir.

Örnek Kod Yapısı (C++)

Kod:
void CHARACTER::LockCharacter() {[BR][/BR]    if (!IsLocked()) {[BR][/BR]        SetStatus(CHARACTER_LOCKED);[BR][/BR]        ChatPacket(CHAT_TYPE_INFO, 'Karakteriniz basariyla kilitlendi.');[BR][/BR]    } else {[BR][/BR]        ChatPacket(CHAT_TYPE_INFO, 'Karakteriniz zaten kilitli.');[BR][/BR]    }[BR][/BR]}


Python Tarafında UI Geliştirme

Python kullanarak py gui sistemleriyle birlikte, oyuncuların kolayca erişebileceği bir arayüz geliştirilebilir. Bu sistemde bir butonla karakter kilidi açılıp kapatılabilir. Bu arayüz, uiscript dosyaları aracılığıyla oyun içine entegre edilir.

Sonuç

Karakter kilitleme sistemi, Metin2 özel sunucularında hem güvenlik hem de kullanıcı deneyimi açısından oldukça faydalıdır. C++, Python ve Lua gibi dillerle entegre edilen bu sistem, doğru şekilde geliştirildiğinde sunucu yönetimini kolaylaştırır. Metin2lobby.com olarak, bu tür gelişmiş sistemlerin nasıl geliştirileceğini öğrenmek istiyorsanız, forumumuza göz atmanızı öneririz.


Character Lock System on Metin2 Private Servers

In the process of developing Metin2 private servers, various systems are created to enhance player security and in-game experience. One such system is the Character Lock System. This system allows players to lock their characters for a certain period, preventing other players from accessing them. Thus, unwanted attacks can be prevented on PvP servers, or you can place your character under protection for a specific duration.

System Languages: C++, Python and Lua

The character locking system can typically be integrated with three different technologies: C++, Python, and Lua.

On the C++ side, this system is developed directly within the core files of the game server. Modifications made to the game core allow character locking commands to be processed directly by the server. This way, performance loss remains minimal and security is enhanced.

On the Python side, user-friendly systems can be developed using GUI-based interfaces. For instance, a character lock panel can be designed through a py root. Players can use this panel to lock or unlock their characters. Additionally, via uiscript, this system can be integrated directly into the in-game interface.

Lua is usually used on the client side. The character locking operation can be triggered via Lua scripts. For example, pressing a key could activate a command that automatically locks your character.

Why is a Character Lock System Necessary?

On PvP-oriented Metin2 servers, players generally want to protect their characters. Especially on servers with advanced Metin2 PVP systems, a character lock system prevents unwanted attacks when players do not wish to engage. When developed on Metin2 server src, this system significantly enhances the gaming experience for players.

System Installation and Integration

Installing the character lock system typically involves source edit processes. During Metin2 compile, necessary C++ codes must be added. Moreover, synchronization between auth and game servers should be ensured. Relevant tables must also be created in the database, and the lock status stored within the DB. Modifications on DB Core can make the system operate faster and more securely.

Sample Code Structure (C++)

Kod:
void CHARACTER::LockCharacter() {[BR][/BR]    if (!IsLocked()) {[BR][/BR]        SetStatus(CHARACTER_LOCKED);[BR][/BR]        ChatPacket(CHAT_TYPE_INFO, 'Your character has been locked successfully.');[BR][/BR]    } else {[BR][/BR]        ChatPacket(CHAT_TYPE_INFO, 'Your character is already locked.');[BR][/BR]    }[BR][/BR]}


UI Development in Python

Using Python alongside py gui systems, a user-friendly interface can be developed that allows easy access for players. In this system, a button could enable players to lock or unlock their character. This interface can be integrated into the game through uiscript files.

Conclusion

The character lock system is highly beneficial for both security and user experience on Metin2 private servers. Integrated with languages like C++, Python, and Lua, this system simplifies server management when developed correctly. If you want to learn how to develop such advanced systems, we recommend visiting our forum at Metin2lobby.com.
 

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

Benzer konular

Geri
Üst Alt