Envanterde Giyili Olan Silahı Depoya Koyduğunda Kostüm Silahı Çıksın Fix [Cosby]

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

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Herkesin bildiği üzere silah kostümü
takılıyken envanterdeki silahı depoya sürüklediğiniz zaman
silah kostümü çıkmaz takılı halde kalır.
forumda bunun için paylaşılan fixler tüm itemler için geçerli oluyor.
Yani hiçbir item envanterinizde takılıyken depoya koyamıyorsunuz
şuan paylaşıcağım fix ise envanterinizde takılı olan silahı yine koyabilirsiniz.
Ama takılı olan silah kostümüde çıkar.
Ayriyetten envanterinizde boş yer yoksa koyamazsınız :)
Fixe geçelim:


input_main.cpp > Açılır.

Arat

void CInputMain::SafeboxCheckin(LPCHARACTER ch, const char * c_pData)

Kod bloğun içine ekle



İşlem bu kadar.

Envanterde Giyili Olan Silahı Depoya Koyduğunda Kostüm Silahı Çıksın Fix [Cosby]


Metin2 özel sunucularında geliştirme yaparken, oyuncuların giydiği kostümler ve silahlar arasında farklılıklar oluşabiliyor. Özellikle giyili olan bir silahı depoya koyduğunda, kostüm silahının çıkmaması gibi bir durumla karşılaşmak, hem kullanıcı deneyimini etkileyebilir hem de sistemsel açıdan istenmeyen davranışlara neden olabilir. Bu yazıda, envanterde giyili olan silahı depoya koyduğunda kostüm silahının çıkmaması sorununu çözecek bir fix yöntemi sunacağız. Bu yöntem, özellikle C++ tabanlı sistemlerde çalışan game server yapıları için uygundur.

Sorun Nedir?
Oyuncu, giydiği silahı depoya koyduğunda, sistem otomatik olarak kostüm silahını giymemekte; bu da oyun içi deneyimi bozabilmektedir. Bu durum, genellikle item yönetimi ve equipped weapon takibi arasında bir senkronizasyon eksikliğinden kaynaklanmaktadır. Özellikle PvP sistemlerinde bu tür detaylar, oyuncuların beklemediği durumlarda dezavantaj yaşamalarına yol açabilir.

Fix Uygulaması
Bu hatayı düzeltmek için öncelikle game server tarafında bulunan equipment modülünde değişiklik yapılması gerekir. Özellikle item unequip işlemleri sırasında, sistemde bir kontrol mekanizması oluşturulmalıdır. Bu mekanizma sayesinde, silah çıkarıldığında, eğer oyuncunun giyili bir kostüm silahı varsa, bu silah otomatik olarak giydirilecektir.

Örnek olarak, Python tarafında yazılmış bir script ile bu işlem şu şekilde yapılabilir:

Kod:
def on_item_unequipped(item_id):[BR][/BR]    if item_type == WEAPON_TYPE:[BR][/BR]        if has_cosmetic_weapon(player):[BR][/BR]            equip_cosmetic_weapon(player)


Uygulama Detayları
Bu fix, Martysama veya diğer source edit sistemlerinde çalışırken dikkat edilmesi gereken bazı noktalar barındırır. Özellikle db core ile uyumlu olması için, silah değiştirme işlemleri sırasında veritabanı ile senkronize olacak şekilde kodlanmalıdır. Ayrıca, client src ile uyumlu olacak şekilde, arayüzde de herhangi bir aksama yaşanmamalıdır.

Test Süreci
Fix uygulandıktan sonra, test sunucusunda bu durumun oluşup oluşmadığı kontrol edilmelidir. Test sırasında şu adımlar izlenebilir:

- Giyili bir silah alınır.
- Silah depoya konur.
- Kostüm silahın otomatik olarak giyilip giyilmediği kontrol edilir.

Sonuç
Bu fix sayesinde, oyuncuların silahlarını depoya koyduklarında giyili olan kostüm silahlarının otomatik olarak aktif olması sağlanır. Bu da hem kullanıcı dostu bir sistem hem de daha profesyonel bir PvP ortamı sunar. Metin2 Lobby olarak, bu tip sistemsel iyileştirmeleri paylaşmaya devam edeceğiz.

Metin2 Lobby - Metin2 Development & Systems


Fix for Equipping Cosmetic Weapon When Storing Equipped Weapon in Depot [Cosby]


In Metin2 private server development, differences may occur between equipped costumes and weapons. Particularly, failing to equip the cosmetic weapon when storing an equipped weapon in the depot can affect user experience and cause unwanted behavior from a system perspective. In this article, we will present a fix method to resolve the issue where the cosmetic weapon does not appear when storing the equipped weapon in the depot. This method is suitable for C++-based systems, especially those with game server structures.

What Is The Problem?
When a player stores their equipped weapon in the depot, the system does not automatically equip the cosmetic weapon, which can disrupt the gaming experience. This issue generally stems from a lack of synchronization between item management and equipped weapon tracking. In PvP systems, such details can lead to unexpected disadvantages for players.

Applying the Fix
To correct this error, modifications must be made in the equipment module on the game server side. Specifically, during item unequip operations, a control mechanism must be established. Through this mechanism, when a weapon is removed, if the player has an equipped cosmetic weapon, it will automatically be worn.

As an example, in a Python-based script[/COORD], this process can be done as follows:

Kod:
def on_item_unequipped(item_id):[BR][/BR]    if item_type == WEAPON_TYPE:[BR][/BR]        if has_cosmetic_weapon(player):[BR][/BR]            equip_cosmetic_weapon(player)


Implementation Details
When applying this fix in Martysama or other source edit systems, certain points must be considered. Especially for compatibility with db core, the code must remain synchronized with the database during weapon change processes. Additionally, no disruptions should occur in the interface to ensure compatibility with client src.

Testing Process
After applying the fix, verify whether the issue occurs on a test server. During testing, follow these steps:

- Equip a weapon.
- Store the weapon in the depot.
- Check if the cosmetic weapon is automatically equipped.

Conclusion
Thanks to this fix, players will have their equipped cosmetic weapons automatically activated when storing their weapons in the depot. This provides both a user-friendly system and a more professional PvP environment. As Metin2 Lobby, we will continue sharing such system improvements.

Metin2 Lobby - Metin2 Development & Systems
 

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

Benzer konular

Geri
Üst Alt