Offline Pazarlara Bakıldığında Rengi Değişsin

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

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Forumda bulunan sistem offline pazarlar için olmadığından offline pazarları etkilemiyor . Bende biraz uğraşıp kodları benzeterek offline pazarlar için bu sistemi oluşturdum . Hemen anlatıma geçelim ;


uiofflineshopbuilder.py açılır ;
Kod:
ui.ThinBoard.__init__(self, "UI_BOTTOM")
aratılır ,

Kod:
https://paste2.org/msJZ0asV
altına eklenir .

Kod:
def Open(self, vid, text):         self.vid = vid         self.textLine.SetText(text)
aratılır ,

Kod:
https://paste2.org/F8c0wJVc
altına eklenir .

Kod:
if (uiOfflineShop.IsEditingOfflineShop()):             return
aratılır ,

Kod:
https://paste2.org/DUXh151G
altına eklenir .


NOT : Kodlar TAB ayarlıdır . Hata alanlar aldıkları hatayla beraber konuya yazsınlar yardım ederim .


Kanıt ;


Offline Pazarlara Bakıldığında Rengi Değişsin


Metin2 Lobby olarak sunucu geliştirme konusunda uzmanlaştık ve özellikle Metin2 Private Server dünyasında öne çıkacak yenilikçi sistemler geliştirmeye devam ediyoruz. Bu yazıda, offline pazar sistemi üzerindeyken renk değişimi gibi estetik ve işlevsel bir özelliğin nasıl entegre edilebileceğini ele alacağız. Bu özellik, kullanıcı deneyimini artırmak ve daha görsel olarak etkileyici bir arayüz sunmak açısından büyük önem taşır.

Offline Pazar Nedir?
Metin2 özel sunucularında offline pazar sistemi, oyuncuların internete bağlı olmadan da eşya alım-satım yapabilmelerini sağlayan bir özelliktir. Bu sayede oyuncular AFK (Away From Keyboard) olduklarında bile kendi standlarını açabilir ve gelir elde edebilirler. Ancak bu sistemin görsel arayüzü genellikle statik kalır; yani oyuncu online veya offline durumuna göre bir farklılık göstermez.

Renk Değişimiyle Görsel Farkındalık
Bu noktada devreye renk değişimi sistemi giriyor. Oyuncu offline pazarı açtığında, karakter adının ya da stand başlığının rengi otomatik olarak değişebilir. Örneğin:
- Onlineyken mavi renk,
- Offlinedayken kırmızı renk,
- Pazar açıkken sarı renk gibi.

Bu değişiklikler, hem diğer oyuncular için daha anlaşılır bir sistem sunar hem de sunucu sahiplerinin sunucu kimliğini güçlendirmesine yardımcı olur. Renklerin tanımlanması için uiscript ve py root dosyalarında küçük değişiklikler yapılmalıdır.

Teknik Uygulama Adımları
Metin2 Server SRC üzerinde bu işlemi yapabilmek için birkaç ana dosyaya müdahale gerekir:

1. Game Server tarafında offline pazar durumu kontrol edilir.
2. Karakter adı veya pazar ismi, istemciye gönderilirken durum kodu ile birlikte gönderilir.
3. Client SRC tarafında bu duruma göre renk ayarı yapılır.
4. Python GUI (PyGUI) ile oluşturulan arayüzde, bu durumlar kontrol edilip gerekli renk değişikliği uygulanır.

Örnek Kod Yapısı (PyRoot):
```python
if is_offline_market_open:
player_name_color = 'RED'
else:
player_name_color = 'BLUE'
```

Hata Ayıklama ve Test
Sistemin sağlıklı çalışması için compile işleminden sonra test aşaması çok önemlidir. Özellikle auth ve game sunucuları senkronize şekilde çalışmalı, offline pazar durumu doğru şekilde veritabanına (DB Core) yazılmalıdır. Ayrıca martysama veya benzeri araçlar yardımıyla hata logları takip edilmeli ve oluşabilecek çakışmalar önceden engellenmelidir.

Sonuç
Offline pazar sisteminde renk değişimi gibi küçük ama etkili değişiklikler, kullanıcıların dikkatini çekebilir ve sunucu sadakatinin artmasını sağlayabilir. Metin2 Lobby olarak bizler, bu tür detaylara odaklanarak hem geliştiriciler hem de oyuncular için daha zengin bir deneyim sunmayı hedefliyoruz. C++ System ve Python System bilgimizi paylaşarak topluluğun gelişmesine katkı sunuyoruz.


Color Changes When Looking at Offline Markets


Metin2 Lobby focuses on server development and continues to introduce innovative features for Metin2 Private Server environments. In this article, we will examine how to implement a visual feature such as color change when accessing the offline market. This functionality enhances user experience by providing a more visually engaging interface.

What Is the Offline Market?
The offline market system in Metin2 private servers allows players to buy and sell items without being connected to the internet. This enables players to maintain their stalls even when they are AFK (Away From Keyboard), generating revenue passively. However, the visual interface of this system usually remains static, offering no distinction between online and offline states.

Visual Awareness with Color Change
This is where the color change feature comes into play. When a player opens their offline market, the color of their character name or stall title can automatically change. For example:
- Blue when online,
- Red when offline,
- Yellow when the market is open.

Such changes provide clarity for other players and help server owners reinforce their server identity. Colors must be defined through modifications in uiscript and py root files.

Technical Implementation Steps
To achieve this on Metin2 Server SRC, several key files need adjustment:

1. The Game Server checks the offline market status.
2. Player names or stall titles are sent to the client along with a status code.
3. On the Client SRC side, colors are assigned based on that status.
4. The Python GUI (PyGUI) handles the display and applies the appropriate color according to the status.

Sample Code Structure (PyRoot):
```python
if is_offline_market_open:
player_name_color = 'RED'
else:
player_name_color = 'BLUE'
```

Debugging and Testing[/BR]Proper testing after compilation is essential for smooth operation. Both auth and game servers must work in sync, and the offline market status must be correctly written to the database (DB Core). Tools like martysama should be used to monitor logs and prevent potential conflicts.

Conclusion[/BR]Small but impactful changes like color change in the offline market can capture users' attention and improve server loyalty. At Metin2 Lobby, we aim to provide a richer experience for both developers and players by focusing on these details. By sharing our knowledge of C++ System and Python System, we contribute to the growth of the community.
 

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

Benzer konular

Geri
Üst Alt