Kanal değiştirince minimap altı kanal güncellememe sorunu fix

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

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Hayırlı akşamlar, ?

Bir kaç kişi skype üzerinden istediği için paylaşmak istedim.
Sorunu yaşayan kişiler linktekini uygulayarak sorununu çözebilir.

Kanal Değiştirince Minimap Altı Kanal Güncellenmiyor Sorunu Fix

Metin2 özel sunucularında oyun sırasında kanal değiştirildiğinde minimap altındaki kanal listesinin güncellenmemesi oldukça yaygın bir sistem hatasıdır. Bu durum, oyuncuların mevcut kanalda aktif olan diğer oyuncuları görememesine veya kanal seçimi yapamamasına neden olabilir. Bu yazıda, kanal değiştirince minimap altı kanal güncellememe sorununun neden oluştuğunu ve nasıl çözüleceğini detaylıca ele alacağız.

Sorunun Neden Kaynağı?
Metin2 oyun istemcisi (client), kanal bilgilerini belirli aralıklarla sunucudan alır. Ancak bazı özel sunucu yapılandırmalarında, kanal değiştirme işlemi sırasında gerekli veri yenileme tetiklenmez. Bu eksiklik, minimap arayüz bileşeninin kanal listesini doğru şekilde güncellemesini engeller.

Hata Belirtileri:
- Kanal değiştirildiğinde minimap altındaki kanal listesi değişmez.
- Yeni kanala geçiş yapıldığı halde eski kanalda kalındığı hissedilir.
- Oyuncular yeni kanalda gözükmeyebilir.

Fix Uygulama Adımları
1. Client tarafında uiscript dosyasında bulunan Minimap.py veya benzeri arayüz dosyasını düzenlemek gerekir.
2. Kanal değiştirme işlemi tetiklendiğinde, refresh_channel_list() fonksiyonunun çağrıldığından emin olunmalıdır.
3. Eğer bu fonksiyon yoksa, game.py ya da kanal geçişini yöneten dosya içerisine bu fonksiyonu manuel olarak ekleyin.

Örnek Kod Yapısı (Py Root):
def refresh_channel_list(self):
net.SendChatPacket('/channel_info_refresh')
self.minimap.RefreshChannelList()


Sunucu Tarafında Gerekli Ayarlar
Oyun sunucusunda (game server), /channel_info_refresh komutuna yanıt verecek bir sistem tanımlanmalıdır. Bu komut, kanal bilgilerini yeniden istemciye göndermelidir. Bu işlem genellikle C++ source code üzerinden yapılır. GameCore üzerinde bu komut için bir handler tanımlanmalı ve istemciye kanal listesi yeniden gönderilmelidir.

Not: Bu sistem, Martysama[/CRYPTO] veya benzeri kaynaklarda tanımlı olabilir. Ancak bazı özel yapılandırmalarda eksik bırakılmıştır.

Test ve Onaylama
Değişiklikler yapıldıktan sonra, farklı kanallara geçiş yaparak minimap altındaki kanal listesinin doğru şekilde yenilenip yenilenmediğini test edin. Eğer doğru çalışıyorsa, sistem artık otomatik olarak kanal bilgilerini güncelleyecektir.

Sonuç
Bu fix sayesinde, Metin2 özel sunucularında kanal değiştirme işlemi sırasında minimap altındaki kanal listesinin güncellenmemesi sorunu çözülmüş olur. Bu, hem oyuncu deneyimini artırır hem de sunucu yönetiminde daha stabil bir yapı sağlar. Daha fazla Metin2 geliştirici kaynağı için Metin2Lobby sitesini takip edin.


Fix for Channel List Not Updating Below Minimap After Channel Change

In Metin2 private servers, it is a common issue that the channel list below the minimap does not update after changing channels during gameplay. This causes players to be unable to see other active players on the current channel or make channel selections. In this article, we will examine in detail why the channel list does not update below the minimap after channel change occurs and how to fix it.

What Causes the Issue?
The Metin2 client periodically fetches channel information from the server. However, in some private server configurations, the required data refresh is not triggered during the channel switch process. This deficiency prevents the minimap UI component from updating the channel list correctly.

Symptoms:[/BR][/BR]- The channel list under the minimap does not change after switching channels.
- Players may feel like they remain in the previous channel even after switching.
- Other players may not appear in the new channel.

Steps to Apply the Fix[/BR][/BR]1. Edit the uiscript file containing the Minimap.py or similar UI file on the client side.
2. Ensure that the refresh_channel_list() function is called when the channel switch event is triggered.
3. If the function does not exist, add it manually into the game.py or the file handling channel switches.

Sample Code Structure (Py Root):[/BR][/BR]def refresh_channel_list(self):
net.SendChatPacket('/channel_info_refresh')
self.minimap.RefreshChannelList()


Server-Side Requirements
On the game server, a system must respond to the /channel_info_refresh command. This command should resend the channel list back to the client. This is typically implemented via C++ source code. A handler for this command should be defined within GameCore[/CRYPTO], and the channel list must be sent again to the client.

Note:[/BR][/BR] This system might already be defined in sources like Martysama[/CRYPTO], but sometimes it's left incomplete in custom builds.

Testing and Validation
After applying the changes, test by switching between different channels to confirm whether the channel list under the minimap updates properly. If it works correctly, the system will now automatically refresh the channel information.

Conclusion
Thanks to this fix, the issue of the channel list not updating below the minimap after channel switching in Metin2 private servers is resolved. This enhances player experience and provides a more stable structure for server administration. For more Metin2 development resources, visit Metin2Lobby.
 

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

Geri
Üst Alt