Wom2 Ticaret Sohbeti

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

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Merhaba Arkadaşlar Bulduğum Wom2 Ticaret Sohbetini Sizlere Paylaşıyorum Anlatımı Türkçeleştirmek Uzun Sürdü :) Kullananlara Hayırlı Kullanımlar Ekleyenlerde Kanıt Atrsa Çok İyi Olur :)

GAME SRC

src/game/ Gir

1. " input.h" dosyasını aç

Arat:

Kod:
extern void SendShout(const char * szText, BYTE bEmpire);

Sonra ekle :

Kod:
#ifdef __CHAT_TYPE_SHOUT_TRADE__ extern void SendShoutTrade(const char * szText, BYTE bEmpire); #endif

Arat:

Kod:
void     Shout(const char * c_pData);

Sonra Ekle :

Kod:
#ifdef __CHAT_TYPE_SHOUT_TRADE__ void     ShoutTrade(const char * c_pData); #endif

2. input_main.cpp

Arat:

Kod:
if (pinfo->type == CHAT_TYPE_SHOUT)

Sonra Ekle:

Kod:
#ifdef __CHAT_TYPE_SHOUT_TRADE__    if (pinfo->type == CHAT_TYPE_SHOUT_TRADE)    {      if (ch->GetLevel() < g_iShoutLimitLevel)      {        ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("외치기는 레벨 %d 이상만 사용 가능 합니다."), g_iShoutLimitLevel);        return (iExtraLen);      }      if (thecore_heart->pulse - (int) ch->GetLastShoutPulse() < passes_per_sec * 60)        return (iExtraLen);      ch->SetLastShoutPulse(thecore_heart->pulse);      TPacketGGShout p;      p.bHeader = HEADER_GG_TRADE;      p.bEmpire = ch->GetEmpire();      strlcpy(p.szText, chatbuf, sizeof(p.szText));      P2P_MANAGER::instance().Send(&p, sizeof(TPacketGGShout));      SendShoutTrade(chatbuf, ch->GetEmpire());      return (iExtraLen);    } #endif

3. input_p2p.cpp

Arat:

Kod:
struct FuncShout

Sonra Ekle:

Kod:
#ifdef __CHAT_TYPE_SHOUT_TRADE__ struct FuncShoutTrade {    const char * m_str;    BYTE m_bEmpire;    FuncShoutTrade(const char * str, BYTE bEmpire) : m_str(str), m_bEmpire(bEmpire)    {    }    void operator () (LPDESC d)    {      if (!d->GetCharacter() || (d->GetCharacter()->GetGMLevel() == GM_PLAYER && d->GetEmpire() != m_bEmpire))        return;      d->GetCharacter()->ChatPacket(CHAT_TYPE_SHOUT_TRADE, "%s", m_str);    } }; #endif

Arat:

Kod:
void CInputP2P::Shout(const char * c_pData)

Sonra Ekle :

Kod:
#ifdef __CHAT_TYPE_SHOUT_TRADE__ void SendShoutTrade(const char * szText, BYTE bEmpire) {    const DESC_MANAGER::DESC_SET & c_ref_set = DESC_MANAGER::instance().GetClientSet();    std::for_each(c_ref_set.begin(), c_ref_set.end(), FuncShoutTrade(szText, bEmpire)); } void CInputP2P::ShoutTrade(const char * c_pData) {    TPacketGGShout * p = (TPacketGGShout *) c_pData;    SendShoutTrade(p->szText, p->bEmpire); } #endif

4. Packet.h ' Yi Aç

Arat:

Kod:
HEADER_GG_CHECK_AWAKENESS     = 29,

Sonra Ekle:

Kod:
#ifdef __CHAT_TYPE_SHOUT_TRADE__ HEADER_GG_TRADE           = 31, #endif

src/common/ Buraya gir

5. length.h

Arat:

Kod:
CHAT_TYPE_MAX_NUM

Üstüne Ekle :

Kod:
#ifdef __CHAT_TYPE_SHOUT_TRADE__ CHAT_TYPE_SHOUT_TRADE, #endif

6. service.h Aç Ve Ekle

Kod:
#define __CHAT_TYPE_SHOUT_TRADE__


Client SRC

src/UserInterface/ Buraya gir

1. Locale_inc.h Aç Ve Ekle

Kod:
#define ENABLE_CHAT_TYPE_SHOUT_TRADE

2. Packet.h Aç

Arat:

Kod:
CHAT_TYPE_MAX_NUM,

Üstüne Ekle :

Kod:
#ifdef ENABLE_CHAT_TYPE_SHOUT_TRADE CHAT_TYPE_SHOUT_TRADE, #endif

3. PythonApplicationModule.cpp

Arat:

Kod:
#ifdef ENABLE_COSTUME_SYSTEM

Altına Ekle :

Kod:
#ifdef ENABLE_CHAT_TYPE_SHOUT_TRADE    PyModule_AddIntConstant(poModule, "ENABLE_CHAT_TYPE_SHOUT_TRADE",   1); #else    PyModule_AddIntConstant(poModule, "ENABLE_CHAT_TYPE_SHOUT_TRADE",   0); #endif

4. PythonChat.cpp

Arat:

Kod:
m_akD3DXClrChat[CHAT_TYPE_SHOUT]     = D3DXCOLOR(0.658f, 1.0f, 0.835f, 1.0f);

Altına Ekle :

Kod:
#ifdef ENABLE_CHAT_TYPE_SHOUT_TRADE    m_akD3DXClrChat[CHAT_TYPE_SHOUT_TRADE]   = D3DXCOLOR(0xFF9966); #endif

5. PythonChatModule.cpp

Arat:

Kod:
PyModule_AddIntConstant(poModule, "CHAT_TYPE_SHOUT",     CHAT_TYPE_SHOUT);

Altına Ekle :

Kod:
#ifdef ENABLE_CHAT_TYPE_SHOUT_TRADE    PyModule_AddIntConstant(poModule, "CHAT_TYPE_SHOUT_TRADE",   CHAT_TYPE_SHOUT_TRADE); #endif

6. PythonNetworkStreamPhaseGame.cpp

Arat:

Kod:
case CHAT_TYPE_SHOUT

Altına Ekle :

Kod:
#ifdef ENABLE_CHAT_TYPE_SHOUT_TRADE case CHAT_TYPE_SHOUT_TRADE: #endif

Arat:

Kod:
else if (CHAT_TYPE_SHOUT == kChat.type)

İşlevi Bununla Değiştirin :

Kod:
#ifdef ENABLE_CHAT_TYPE_SHOUT_TRADE      else if (CHAT_TYPE_SHOUT == kChat.type || CHAT_TYPE_SHOUT_TRADE == kChat.type) #else      else if (CHAT_TYPE_SHOUT == kChat.type) #endif


Pack'a geçelim


1. locale_tr/locale/tr Klasör yoluna gidip locale_game.txt ' aç

En Sona Ekle :

Kod:
CHAT_SHOUT_TRADE_LIMIT    Sadece her 60 Saniyede Bir Arabilirsin.

2. root.eix-epk Gir

uichat.py

class ChatLine Buranın İçinde Ara:

Kod:
def __init__(self):

Altına Ekle:
[FONT=Verdana, Arial, sans-serif][/FONT]
Kod:
if app.ENABLE_SEND_TARGET_INFO:    self.CHAT_MODE_NAME.update({chatm2g.CHAT_TYPE_SHOUT_TRADE : "Trade"})

Arat:

Kod:
elif chatm2g.CHAT_TYPE_SHOUT == self.GetChatMode():    self.SetChatMode(chatm2g.CHAT_TYPE_TALKING)    self.SetText("")

Bununla Değiştir:

Kod:
if app.ENABLE_SEND_TARGET_INFO:    elif chatm2g.CHAT_TYPE_SHOUT == self.GetChatMode():      self.SetChatMode(chatm2g.CHAT_TYPE_SHOUT_TRADE)      self.SetText("$")    elif chatm2g.CHAT_TYPE_SHOUT_TRADE == self.GetChatMode():      self.SetChatMode(chatm2g.CHAT_TYPE_TALKING)      self.SetText("")

Arat :

Kod:
elif chatm2g.CHAT_TYPE_SHOUT == self.GetChatMode():    self.SetText("!")    self.SetEndPosition()

Altına Ekle :

Kod:
if app.ENABLE_SEND_TARGET_INFO:    elif chatm2g.CHAT_TYPE_SHOUT_TRADE == self.GetChatMode():      self.SetText("$")      self.SetEndPosition()

Arat :

Kod:
elif '!' == text[0]:    self.__SendShoutChatPacket(text)

Altına Ekle :

Kod:
if app.ENABLE_SEND_TARGET_INFO:    elif '$' == text[0]:      self.__SendShoutTradeChatPacket(text)

class ChatLogWindow kod bloğunun içinde ara

Kod:
def __init__(self):

Altına Ekle:

Kod:
if app.ENABLE_SEND_TARGET_INFO:    if "Trade" not in self.CHAT_MODE_NAME:      self.CHAT_MODE_NAME.update("Trade")      self.CHAT_MODE_INDEX.update(chatm2g.CHAT_TYPE_SHOUT_TRADE)

Arat:

Kod:
def __SendShoutChatPacket(self, text):

Ve Altına Ekle:

Kod:
def __SendShoutTradeChatPacket(self, text):    if 1 == len(text):      self.RunCloseEvent()      return    if app.GetTime() < self.lastShoutTime + 60:      chatm2g.AppendChat(chatm2g.CHAT_TYPE_INFO, localeInfo.CHAT_SHOUT_TRADE_LIMIT)      self.__ResetChat()      return    self.__SendChatPacket(text[1:], chatm2g.CHAT_TYPE_SHOUT_TRADE)    self.__ResetChat()    self.lastShoutTime = app.GetTime()

HATA ALANLAR

  • <li data-xf-list-type="ul"> BUNU : g_iShoutLimitLevel <li data-xf-list-type="ul">SHOUT_LIMIT_LEVEL ile değiştir

Wom2 Ticaret Sohbeti: Metin2 Oyunu İçinde Etkinliğin Arttırılması ve Geliştirilmesi

Metin2, özellikle özel sunucularında (private server) yoğun bir PvP ve ekonomi sistemine sahiptir. Bu bağlamda Wom2 Ticaret Sohbeti, oyuncuların ekonomik faaliyetlerini organize ettiği ve değerli eşyaları güvenli bir şekilde takas ettiği bir mekanizmadır. Bu yazıda, Wom2 ticaret sohbeti kavramını detaylıca inceleyecek, nasıl çalıştığını, neden önemli olduğunu ve Metin2 özel sunucularında nasıl optimize edilebileceğini ele alacağız.

Wom2 Nedir?

Wom2, Metin2 oyununda sunucu içi bir ekonomik sistemdir. Oyuncular, bu sistem sayesinde eşyalarını doğrudan takas edebilir veya belirli bir fiyat üzerinden alıp satabilirler. Özellikle PvP odaklı sunucularda, eşya takasının güvenli ve organize bir şekilde yapılabilmesi büyük önem taşır. Wom2, bu ihtiyacı karşılayan bir yapıdır. Ticaret sohbeti ise, bu eşya transferlerinin konuşulan ve organize edildiği sohbet kanalıdır.

Ticaret Sohbeti Nasıl Çalışır?

Ticaret sohbeti, genellikle bir kanal veya özel bir oyun içi sistem üzerinden yürütülür. Oyuncular, eşyalarını ve fiyatlara dair tekliflerini burada paylaşır. Bu süreçte, sahte eşya veya dolandırıcılık gibi riskler minimize edilmeye çalışılır. Özellikle Metin2 özel sunucularında, Martysama gibi sistemlerle entegre çalışan Wom2 modülleri, bu işlemleri daha da güvenli hale getirebilir. Bu sistemler, C++ tabanlı sunucu kaynak kodlarında (SRC) geliştirilerek sunucuya entegre edilir.

Wom2 Ticaret Sohbeti ve Sunucu Ekonomisi

Sunucu ekonomisinin dengede kalması, oyuncu memnuniyetini doğrudan etkiler. Wom2 aracılığıyla yapılan ticaret faaliyetleri, ekonomik döngüyü aktif tutar. Eğer bir sunucuda ticaret yetersizse ya da güvenilir değilse, oyuncuların ilgisi azalabilir. Bu nedenle, Wom2 ticaret sohbeti doğru yönetildiğinde sunucu yaşam süresini uzatır. Ayrıca, Python GUI veya Uiscript ile geliştirilen istemci (client SRC) arayüzleri, kullanıcıların bu işlemleri daha kolay yapmasını sağlar.

Wom2 Sisteminin Geliştirilmesi ve Optimize Edilmesi

Metin2 özel sunucularında Wom2 sistemini geliştirmek isteyen geliştiriciler, öncelikle game server programming konusunda bilgi sahibi olmalıdır. Bu sistemler genellikle C++ source edit ile düzenlenir. Auth ve DB core sistemlerine entegre edilerek, güvenli ve hızlı işlemler sağlanabilir. Metin2 compile süreci sırasında, Wom2 ile ilgili tüm fonksiyonlar test edilmeli ve gerekli optimizasyonlar yapılmalıdır. Py Root ve Pack dosyaları ile birlikte, tüm sistem bütüncül olarak çalışır hale getirilmelidir.

Sonuç

Wom2 Ticaret Sohbeti, Metin2 özel sunucularında ekonomik etkileşimlerin merkezinde yer alır. Bu sistemin doğru kurulması ve yönetilmesi, hem oyuncu deneyimini artırır hem de sunucunun uzun vadeli başarısını garanti altına alır. Geliştiricilerin C++ ve Python tabanlı sistem bilgilerini kullanarak bu altyapıyı oluşturmaları, sunucuların rekabet gücünü artırmaktadır.


Wom2 Trade Chat: Enhancing and Developing Activity Within Metin2

Metin2, particularly on private servers, features an intense PvP and economic system. In this context, Wom2 Trade Chat is a mechanism where players organize their economic activities and securely exchange valuable items. In this article, we will examine the concept of Wom2 trade chat in detail, explain how it works, why it is important, and how it can be optimized within Metin2 private servers.

What is Wom2?

Wom2 is an in-game economic system in Metin2. Players can directly exchange items or buy and sell them at specific prices through this system. Especially on PvP-focused servers, safely and orderly item trading is highly important. Wom2 fulfills this need. The trade chat is the communication channel where these item transfers are discussed and organized.

How Does Trade Chat Work?

Trade chat usually operates via a specific channel or an in-game system. Players share their items and pricing offers here. During this process, risks such as fake items or fraud are minimized. Particularly on Metin2 private servers, Wom2 modules integrated with systems like Martysama can make these processes even more secure. These systems are developed by editing C++ based server sources (SRC) and integrated into the server.

Wom2 Trade Chat and Server Economy

Maintaining a balanced server economy directly affects player satisfaction. Trading activities conducted via Wom2 keep the economic cycle active. If trading is insufficient or unreliable on a server, player interest may decrease. Therefore, when managed correctly, Wom2 trade chat extends the server's lifespan. Additionally, client interfaces (client SRC) developed with Python GUI or Uiscript allow users to perform these operations more easily.

Developing and Optimizing the Wom2 System

Developers wishing to enhance the Wom2 system on Metin2 private servers must first have knowledge about game server programming. These systems are generally edited using C++ source edit. Integrated into the auth and DB core systems, secure and fast transactions can be provided. During the Metin2 compile process, all functions related to Wom2 should be tested and necessary optimizations applied. Together with Py Root and Pack files, the entire system should function as a cohesive unit.

Conclusion

Wom2 Trade Chat lies at the center of economic interactions on Metin2 private servers. Properly establishing and managing this system enhances both the player experience and ensures the long-term success of the server. Developers utilizing C++ and Python based system knowledge to build this infrastructure increase the competitive edge of their servers.
 

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

Benzer konular

Geri
Üst Alt