Offline shop ile kuşak kopyalama bug fixi

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

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Arkadaşlar Offline shop ve Kuşak kullanan arkadaşlar için yararlı olucağını düşünüyorum​

Belkide bir çok kişinin bu sorundan haberi yoktur :D

Bug :



OffShop sekmesi Fixi :
game source cmd_general.cpp açılır aratılır:
Kod:
[/FONT][/COLOR] [COLOR=#BB0000][FONT=Verdana]ACMD(do_open_offline_shop)[/FONT][/COLOR] [COLOR=#BB0000][FONT=Verdana]

Altına ekle :
Kod:
[/FONT][/COLOR] [COLOR=#BB0000][FONT=Verdana]if (ch->IsAcceOpen())[/FONT][/COLOR] [COLOR=#BB0000][FONT=Verdana]{[/FONT][/COLOR] [COLOR=#BB0000][FONT=Verdana]ch->ChatPacket(CHAT_TYPE_INFO, "Bu işlemi gerçekleştirmek için diğer sekmeyi kapatınız.");[/FONT][/COLOR] [COLOR=#BB0000][FONT=Verdana]return;[/FONT][/COLOR] [COLOR=#BB0000][FONT=Verdana]}

Kuşak sekmesi Fixi:
Arat game source cmd_general.cpp içinde:
Kod:
ACMD(do_acce)[/FONT][/COLOR] [COLOR=#BB0000][FONT=Verdana]


Altına ekle :
Kod:
if (ch->GetOfflineShopOwner())[/FONT][/COLOR] [COLOR=#BB0000][FONT=Verdana]{[/FONT][/COLOR] [COLOR=#BB0000][FONT=Verdana]ch->ChatPacket(CHAT_TYPE_INFO, "Bu işlemi gerçekleştirmek için diğer sekmeyi kapatınız.");[/FONT][/COLOR] [COLOR=#BB0000][FONT=Verdana]return;[/FONT][/COLOR] [COLOR=#BB0000][FONT=Verdana]}

Offline Shop ile Kuşak Kopyalama Bug Fixi

Metin2 özel sunucularında karşılaşılan buglar zaman zaman oyuncu deneyimini ciddi şekilde etkileyebilir. Özellikle offline shop sistemlerinde ortaya çıkan kuşak kopyalama sorunu, hem sunucu sahipleri hem de oyuncular için büyük bir problem teşkil eder. Bu yazıda, Metin2 özel sunucularında offline shop sistemi üzerinden kuşak kopyalama hatasının nasıl düzeltileceği hakkında detaylı bilgi vereceğiz.

Bug Nedir?
Offline shop, oyuncuların oyunda değilken bile eşyalarını satabilmelerine olanak tanıyan bir özelliktir. Ancak bazı durumlarda, özellikle kuşak gibi özel itemler bu sistem üzerinden kopyalanabiliyor. Bu durum, sunucuda dengesizlik yaratır ve PvP sistemlerinde haksız avantajlara neden olabilir.

Neden Ortaya Çıkıyor?[/BR]
Bu sorun genellikle sunucu tarafında eksik güvenlik kontrollerinden veya C++ kodlarında yeterince doğrulama yapılmamasından kaynaklanır. Özellikle item transferi sırasında eşyanın gerçekten oyuncuya ait olup olmadığı kontrol edilmezse, aynı eşya birden fazla kez aktarılabilir.

Fix Nasıl Uygulanır?[/BR]
Öncelikle game server üzerinde çalışan C++ kaynak koduna müdahale ederek, offline shop üzerinden gelen eşya transferlerinde item doğrulama mekanizması eklenmelidir. Örneğin:

1. Eşyanın UID'sinin kontrol edilmesi.
2. Oyuncunun envanterinde bu eşyanın gerçekten bulunup bulunmadığının teyidi.
3. Aynı UID'ye sahip eşyanın daha önce başka bir oyuncuya aktarılmış olup olmadığının kontrolü.

Teknik Detaylar[/BR]
Metin2 özel sunucularında, game core içindeki item_manager.cpp veya benzeri dosyalarda yapılan değişikliklerle bu sorun çözülebilir. Ayrıca, db_core üzerinden MySQL tabanlı loglamalar yapılarak, şüpheli transferler takip edilebilir.

Sonuç[/BR]
Offline shop ile kuşak kopyalama gibi hatalar, sunucu güvenliği açısından ciddi riskler barındırır. Bu tür açıkların kapatılması, Metin2 özel sunucularında kaliteli bir oyun deneyimi sunmak adına hayati öneme sahiptir. C++ ve Python tabanlı sistemlerde doğru doğrulama süreçleriyle bu tür hatalar minimuma indirilebilir.

Kaynak Kod[/BR]
Metin2 özel sunucu geliştirme sürecinde, martysama veya diğer src editörleri kullanılırken, bu tür güvenlik açıklarına karşı dikkatli olunmalıdır. Server src düzenlemeleri sırasında mutlaka yedek alınmalı ve test ortamında denenebilmelidir.


Offline Shop Belt Duplication Bug Fix

In Metin2 private servers, bugs can sometimes significantly impact player experience. Particularly, the belt duplication issue that arises through the offline shop system poses a major problem for both server owners and players. In this article, we will provide detailed information on how to fix the belt duplication bug via the offline shop system in Metin2 private servers.

What Is The Bug?
Offline shop allows players to sell items even when they are not online. However, under certain conditions, special items like belts can be duplicated through this system. This situation creates imbalances within the server and may lead to unfair advantages in PvP systems.

Why Does It Occur?[/BR]
This issue usually stems from insufficient security checks on the server-side or lack of proper validation in C++ code. Specifically, if the ownership of an item is not verified during item transfers, the same item might be transferred multiple times.

How To Apply The Fix?[/BR]
Firstly, modifications must be made to the C++ source code running on the game server to add item validation mechanisms during item transfers coming from the offline shop. For example:

1. Check the item's UID.
2. Verify whether the item actually exists in the player's inventory.
3. Check whether the same UID has already been transferred to another player before.

Technical Details[/BR]
In Metin2 private servers, this issue can be resolved by making changes in files such as item_manager.cpp within the game core. Additionally, suspicious transfers can be tracked through MySQL-based logging via db_core.

Conclusion[/BR]
Bugs like belt duplication via offline shop pose serious security risks for servers. Closing such vulnerabilities is crucial to providing a quality gaming experience in Metin2 private servers. By implementing correct validation processes in C++ and Python-based systems, these kinds of errors can be minimized.

Source Code[/BR]
During Metin2 private server development, while using editors like martysama or other src tools, care must be taken against such security flaws. When editing server src, backups should always be made and tests should be conducted in a controlled environment.
 

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

Geri
Üst Alt