Bu ayar sayesinde derecesi - Zalim olan oyuncu öldürüldüğünde yere item düşmemektedir.
char_battle.cpp açılır ve aratılır
Değiştirilir
[C++] Zalimken İtem Düşmesini Engelleme
[C++] üzerinde geliştirilen Metin2 özel sunucularında zalim (PK) statüsüne düşen oyuncuların item düşürmesini engellemek, sunucu sahipleri için hem oyun deneyimi hem de ekonomik dengeler açısından önemli bir özelliktir. Bu yazıda, Metin2 özel sunucularında zalim statüsünde iken item düşmesini nasıl engelleyebileceğinizi adım adım anlatacağız.
Zalim Sistemi Nedir?
Metin2 oyununda 'zalim' (PK - Player Killer) statüsü, bir oyuncunun başka bir oyuncuya saldırdığında veya öldürdüğünde alır. Bu statü, oyun içinde bazı cezalarla birlikte gelir. Bunlardan birisi de, öldürüldüğünde item düşürme riskidir. Bu durum, bazı sunucularda istenmeyen bir olaydır ve sunucu yöneticileri bu özelliği kapatmak isterler.
Sunucu Tarafında Item Düşme Mekanizması
Metin2 özel sunucularında, item düşme mekanizması genellikle game server tarafında C++ kodları ile tanımlanır. Sunucu kodlarında, oyuncu öldürüldüğünde hangi itemlerin düşeceği ve hangi koşullarda düşmeyeceği gibi kontroller yapılır. Bu kontrolün başında da PK statüsü yer alır. Eğer zalimken item düşürülmemesi isteniyorsa, bu kontrolün kod seviyesinde düzenlenmesi gerekir.
C++ Kodlarında Değişiklik Yapmak
Öncelikle, game server kaynak kodlarını açmanız gerekir. Genellikle char_battle.cpp veya char.cpp gibi dosyalarda bulunan ölüm fonksiyonları üzerinden item düşme işlemleri yapılır. Bu fonksiyonlar içinde, IsPKMode() gibi PK kontrolü yapan fonksiyonlar yer alır. Bu kontrolü iptal edecek veya buna göre ayarlayacaksınız.
Örnek Kod Parçası:
Bu örnek kodda, IsPKMode() fonksiyonu zalimlik durumunu kontrol eder. Eğer oyuncu zalimse, false döndürerek itemin düşmesini engeller. Bu tür küçük değişiklikler, sunucu deneyimini ciddi anlamda etkileyebilir.
Ekstra Kontroller ve Güvenlik
Bu tür değişiklikler yaparken, sunucu güvenliği ve stability oldukça önemlidir. Kodun doğru derlenip derlenmediğini, sunucuda çökme ya da hata oluşup oluşmadığını test etmelisiniz. Ayrıca, item drop sistemine bağlı diğer mekanizmaları da göz önünde bulundurmalısınız. Örneğin, guild wars sırasında item düşmesi gibi durumlar farklı şekilde ele alınabilir.
Sonuç
Zalimken item düşürmeme sistemi, Metin2 özel sunucularında sunucu sahiplerinin oyun dengesini koruma açısından tercih ettiği bir özelliktir. C++ kodları üzerinde yapılan bu tür küçük değişiklikler, kullanıcı deneyimini büyük ölçüde etkileyebilir. Ancak bu değişikliklerin dikkatli yapılması ve test edilmesi gerekir. Metin2Lobby olarak, tüm Metin2 geliştiricilerine kaynaklar ve destek sunuyoruz.
Preventing Item Drop While Being a PK in [C++]
Preventing players from dropping items when they are in PK (Player Killer) status is an important feature for both gameplay experience and economic balance on Metin2 private servers. In this article, we will explain step by step how you can disable item drops while being in PK status on Metin2 private servers.
What is the PK System?
In Metin2, the 'PK' (Player Killer) status occurs when a player attacks or kills another player. This status comes with certain penalties in-game, one of which is the risk of dropping items upon death. This situation may be undesirable on some servers, and server administrators might want to disable this feature.
Item Drop Mechanism on Server Side
On Metin2 private servers, the item drop mechanism is typically defined within the game server source code written in C++. Within the functions handling character death, located in files such as char_battle.cpp or char.cpp, checks are made regarding which items should drop and under what conditions. The PK status check plays a key role here; if dropping items while being a PK is unwanted, this control must be adjusted at the code level.
Making Changes in C++ Code
Firstly, you need to open your game server source files. The death-related functions where item drops occur are generally found in files like char_battle.cpp. Within these functions, there are usually checks like IsPKMode() that determine whether a player is in PK status. You will adjust or bypass this check accordingly.
Sample Code:
In this sample code, the function IsPKMode() checks if the player is in PK status. If so, it returns false, preventing item drops. Such small modifications can significantly impact the server experience.
Additional Checks and Security
When making such changes, server security and stability are highly important. You must ensure the code compiles correctly and does not cause crashes or errors on the server. Additionally, consider other mechanisms tied to the item drop system, such as item drops during guild wars, which might need separate handling.
Conclusion
The feature of preventing item drops while being a PK is often preferred by Metin2 private server owners to maintain game balance. Small changes made in C++ source codes can significantly affect user experience. However, these changes must be done carefully and tested thoroughly. At Metin2Lobby, we provide resources and support for all Metin2 developers.
char_battle.cpp açılır ve aratılır
Kod:
TItemDropPenalty aItemDropPenalty_kor[9] = { { 0, 0, 0, 0 }, // ìâ*ìâ¢â¢ { 0, 0, 0, 0 }, // ìËìâºâ¦ { 0, 0, 0, 0 }, // ìâ±ì { 0, 0, 0, 0 }, // ì§â¬ì¸ { 0, 0, 0, 0 }, // ìââ민 { 25, 1, 5, 1 }, // ëâ*ì¸ { 50, 2, 10, 1 }, // ìâ¢â¦ì¸ { 75, 4, 15, 1 }, // ë§Ëëâ { 100, 8, 20, 1 }, // íŨìâ¢â¢ };
Değiştirilir
Kod:
TItemDropPenalty aItemDropPenalty_kor[9] = { { 0, 0, 0, 0 }, // ìâ*ìâ¢â¢ { 0, 0, 0, 0 }, // ìËìâºâ¦ { 0, 0, 0, 0 }, // ìâ±ì { 0, 0, 0, 0 }, // ì§â¬ì¸ { 0, 0, 0, 0 }, // ìââ민 { 0, 0, 0, 0 }, // ëâ*ì¸ { 0, 0, 0, 0 }, // ìâ¢â¦ì¸ { 0, 0, 0, 0 }, // ë§Ëëâ { 0, 0, 0, 0 }, // íŨìâ¢â¢ };
[C++] Zalimken İtem Düşmesini Engelleme
[C++] üzerinde geliştirilen Metin2 özel sunucularında zalim (PK) statüsüne düşen oyuncuların item düşürmesini engellemek, sunucu sahipleri için hem oyun deneyimi hem de ekonomik dengeler açısından önemli bir özelliktir. Bu yazıda, Metin2 özel sunucularında zalim statüsünde iken item düşmesini nasıl engelleyebileceğinizi adım adım anlatacağız.
Zalim Sistemi Nedir?
Metin2 oyununda 'zalim' (PK - Player Killer) statüsü, bir oyuncunun başka bir oyuncuya saldırdığında veya öldürdüğünde alır. Bu statü, oyun içinde bazı cezalarla birlikte gelir. Bunlardan birisi de, öldürüldüğünde item düşürme riskidir. Bu durum, bazı sunucularda istenmeyen bir olaydır ve sunucu yöneticileri bu özelliği kapatmak isterler.
Sunucu Tarafında Item Düşme Mekanizması
Metin2 özel sunucularında, item düşme mekanizması genellikle game server tarafında C++ kodları ile tanımlanır. Sunucu kodlarında, oyuncu öldürüldüğünde hangi itemlerin düşeceği ve hangi koşullarda düşmeyeceği gibi kontroller yapılır. Bu kontrolün başında da PK statüsü yer alır. Eğer zalimken item düşürülmemesi isteniyorsa, bu kontrolün kod seviyesinde düzenlenmesi gerekir.
C++ Kodlarında Değişiklik Yapmak
Öncelikle, game server kaynak kodlarını açmanız gerekir. Genellikle char_battle.cpp veya char.cpp gibi dosyalarda bulunan ölüm fonksiyonları üzerinden item düşme işlemleri yapılır. Bu fonksiyonlar içinde, IsPKMode() gibi PK kontrolü yapan fonksiyonlar yer alır. Bu kontrolü iptal edecek veya buna göre ayarlayacaksınız.
Örnek Kod Parçası:
Kod:
[B]bool[/B] CHARACTER::DropItemOnDeath([B]int[/B] iType, [B]int[/B] iPos) { [BR][/BR] [B]if[/B] ([B]this[/B]->IsPKMode()) { [BR][/BR] [B]return false[/B]; // Zalimken item düşmesin[BR][/BR] }[BR][/BR] [B]else[/B] {[BR][/BR] [B]return true[/B]; // Normalde düşsün[BR][/BR] }[BR][/BR]}
Bu örnek kodda, IsPKMode() fonksiyonu zalimlik durumunu kontrol eder. Eğer oyuncu zalimse, false döndürerek itemin düşmesini engeller. Bu tür küçük değişiklikler, sunucu deneyimini ciddi anlamda etkileyebilir.
Ekstra Kontroller ve Güvenlik
Bu tür değişiklikler yaparken, sunucu güvenliği ve stability oldukça önemlidir. Kodun doğru derlenip derlenmediğini, sunucuda çökme ya da hata oluşup oluşmadığını test etmelisiniz. Ayrıca, item drop sistemine bağlı diğer mekanizmaları da göz önünde bulundurmalısınız. Örneğin, guild wars sırasında item düşmesi gibi durumlar farklı şekilde ele alınabilir.
Sonuç
Zalimken item düşürmeme sistemi, Metin2 özel sunucularında sunucu sahiplerinin oyun dengesini koruma açısından tercih ettiği bir özelliktir. C++ kodları üzerinde yapılan bu tür küçük değişiklikler, kullanıcı deneyimini büyük ölçüde etkileyebilir. Ancak bu değişikliklerin dikkatli yapılması ve test edilmesi gerekir. Metin2Lobby olarak, tüm Metin2 geliştiricilerine kaynaklar ve destek sunuyoruz.
Preventing Item Drop While Being a PK in [C++]
Preventing players from dropping items when they are in PK (Player Killer) status is an important feature for both gameplay experience and economic balance on Metin2 private servers. In this article, we will explain step by step how you can disable item drops while being in PK status on Metin2 private servers.
What is the PK System?
In Metin2, the 'PK' (Player Killer) status occurs when a player attacks or kills another player. This status comes with certain penalties in-game, one of which is the risk of dropping items upon death. This situation may be undesirable on some servers, and server administrators might want to disable this feature.
Item Drop Mechanism on Server Side
On Metin2 private servers, the item drop mechanism is typically defined within the game server source code written in C++. Within the functions handling character death, located in files such as char_battle.cpp or char.cpp, checks are made regarding which items should drop and under what conditions. The PK status check plays a key role here; if dropping items while being a PK is unwanted, this control must be adjusted at the code level.
Making Changes in C++ Code
Firstly, you need to open your game server source files. The death-related functions where item drops occur are generally found in files like char_battle.cpp. Within these functions, there are usually checks like IsPKMode() that determine whether a player is in PK status. You will adjust or bypass this check accordingly.
Sample Code:
Kod:
[B]bool[/B] CHARACTER::DropItemOnDeath([B]int[/B] iType, [B]int[/B] iPos) { [BR][/BR] [B]if[/B] ([B]this[/B]->IsPKMode()) { [BR][/BR] [B]return false[/B]; // Don't drop items when in PK mode[BR][/BR] }[BR][/BR] [B]else[/B] {[BR][/BR] [B]return true[/B]; // Allow drops normally[BR][/BR] }[BR][/BR]}
In this sample code, the function IsPKMode() checks if the player is in PK status. If so, it returns false, preventing item drops. Such small modifications can significantly impact the server experience.
Additional Checks and Security
When making such changes, server security and stability are highly important. You must ensure the code compiles correctly and does not cause crashes or errors on the server. Additionally, consider other mechanisms tied to the item drop system, such as item drops during guild wars, which might need separate handling.
Conclusion
The feature of preventing item drops while being a PK is often preferred by Metin2 private server owners to maintain game balance. Small changes made in C++ source codes can significantly affect user experience. However, these changes must be done carefully and tested thoroughly. At Metin2Lobby, we provide resources and support for all Metin2 developers.
