Serbest'e Alma Level Sınırını Ayarlamak

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

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Anlatım ;

root.epk
yi pack açıcı programla açın. Un.EPK olabilir.

constinfo.py bulalım ve açalım

PVPMODE_PROTECTED_LEVEL =15 yazar bu satırı CTRL+F yaparak bulalım

15 Serbeste alma levelidir... İstediğiniz gibi değiştirebilirsiniz...

Serbest'e Alma Level Sınırını Ayarlamak

Metin2 özel sunucularında geliştirme yaparken bazı mekanikleri özelleştirmek isteyebilirsiniz. Bunlardan birisi de karakterlerin belirli bir levelin altındaysa serbest'e alma işlemi sırasında engellenmesidir. Bu özellikle PvP sunucularında deneyimli oyuncuların yeni başlayanları istismar etmesini önlemek için önemlidir. Bu rehberde, C++ tabanlı game server kaynak kodlarında serbest'e alma limiti ayarlamayı anlatacağız.

Neden Serbest'e Alma Limiti Gerekli?
Metin2'de serbest'e alma, oyuncuların diğer karakterlerin eşyalarını alabildiği bir sistemdir. Özellikle PvP sunucularda bu sistem, savaş esnasında düşmanın envanterinden eşya çalmak gibi stratejik avantajlar sağlayabilir. Ancak düşük seviye karakterlerin bu sistemden kötüye kullanılması, yeni başlayan oyuncuların mağdur edilmesine neden olabilir. Bu yüzden geliştiriciler, belirli bir levelin altındaki karakterlerin serbest'e alma yapmasını engellemek isterler.

C++ Kaynak Kodlarında Ayar Yapmak
Oyun sunucusu tarafında bu kontrolü yapmak için C++ kaynak kodlarda değişiklik yapmanız gerekir. Genellikle client request ile gelen serbest'e alma isteğini karşılayan fonksiyonu bulup, burada level kontrolü eklemeniz yeterlidir. Örneğin:

Kod:
if (victim->GetLevel() < MIN_LEVEL_TO_PICK_UP_ITEM)[BR][/BR]{[BR][/BR]    ch->ChatPacket(CHAT_TYPE_INFO, 'Bu karakterin envanterinden eşya alamazsın. Minimum level: %d', MIN_LEVEL_TO_PICK_UP_ITEM);[BR][/BR]    return;[BR][/BR]}

Bu şekilde, MIN_LEVEL_TO_PICK_UP_ITEM sabitini yapılandırarak serbest'e alma sınırını kolayca değiştirebilirsiniz.

Python Tarafında GUI ile Kontrol
Bazı geliştiriciler, bu tür ayarları daha dinamik hale getirmek için Python tabanlı bir GUI arayüzü kullanabilir. Bu tür sistemler sayesinde server dosyalarında elle değişiklik yapmadan, ayarları bir panel üzerinden yönetebilirsiniz. Py Root ve UI Script ile bu tür arayüzler geliştirilebilir.

Sunucu Tepkimesizliği ve Performans
Bu tip değişikliklerin, sunucu performansını etkilememesi için dikkatli kodlanması gerekir. Her istekte ekstra bir kontrol yapılması, CPU yükünü artırabilir. Bu yüzden kontrolün hızlı ve optimize bir şekilde yapılmasına dikkat edilmelidir.

Sonuç
Serbest'e alma limiti, Metin2 özel sunucularında dengeyi korumak için önemli bir özelliktir. C++ veya Python tabanlı çözümlerle bu özelliği özelleştirebilir, oyuncularınız için daha adil bir oyun ortamı oluşturabilirsiniz.


Setting Pick-Up Level Limit for Free Mode

When developing custom Metin2 servers, you might want to customize certain mechanics. One of these is preventing characters below a specific level from being able to pick up items in free mode. This is especially important in PvP servers to prevent experienced players from exploiting newcomers. In this guide, we will explain how to set the pickup limit in C++-based game server source codes.

Why Is a Pick-Up Limit Necessary?
In Metin2, free mode allows players to take items from other characters' inventories. On PvP servers, this can provide strategic advantages such as stealing items during combat. However, low-level characters misusing this system can result in new players being victimized. Therefore, developers often choose to block pickup actions for characters below a certain level.

Configuring in C++ Source Code
To implement this check on the game server side, you need to modify the C++ source code. Typically, you'll locate the function that handles the pickup request and add a level check there. For example:

Kod:
if (victim->GetLevel() < MIN_LEVEL_TO_PICK_UP_ITEM)[BR][/BR]{[BR][/BR]    ch->ChatPacket(CHAT_TYPE_INFO, 'You cannot take items from this character. Minimum level: %d', MIN_LEVEL_TO_PICK_UP_ITEM);[BR][/BR]    return;[BR][/BR]}

By configuring the MIN_LEVEL_TO_PICK_UP_ITEM constant, you can easily adjust the pickup limit.

Control via GUI in Python
Some developers prefer more dynamic control and use Python-based GUI interfaces to manage such settings. With tools like Py Root and UI Script, you can create panels that allow adjusting server configurations without manually editing files.

Server Responsiveness and Performance
Such modifications must be coded carefully to avoid affecting server performance. Adding extra checks with every request may increase CPU load. Therefore, ensure the code is optimized and executes quickly.

Conclusion
The free mode pickup limit is an essential feature for balancing gameplay in custom Metin2 servers. By utilizing C++ or Python-based solutions, you can customize this functionality and create a fairer gaming environment for your players.​
 

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

Geri
Üst Alt