selamun aleyküm sistem piyasada satılandan farklı olarak çalışıyor dosyaları indirip kontrol edebilirsiniz.
benim elimde bir sunucu olmadığı için deneme fırsatım olmadı. Alıntıdır.
sistem videosu :
sistemden görüntüler :
benim elimde bir sunucu olmadığı için deneme fırsatım olmadı. Alıntıdır.
sistem videosu :
sistemden görüntüler :
indirme linkleri :
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Oyun İçi Nesne Market Sistemi Nedir?
Oyun içi nesne market sistemi, oyuncuların kendi aralarında eşya alım-satımı yapabildiği dinamik bir ekonomi mekanizmasıdır. Özellikle Metin2 gibi MMORPG oyunlarında bu sistem, oyuncu deneyimini zenginleştirir ve sunucu içi ekonomiyi aktif tutar. Bu sistem genellikle C++, Python veya Lua dillerinde geliştirilir. Bu makalede, C++, Python ve Lua kullanılarak nasıl bir oyun içi nesne market sistemi geliştirilebileceği detaylıca ele alınacaktır.
C++ ile Market Sistemi Geliştirimi
Metin2 sunucu tarafında C++ dilinde geliştirilen sistemler, performans ve doğrudan kontrol açısından tercih edilir. Market sistemi için öncelikle bir veritabanı tasarımı yapılır. Örneğin, 'market_items' adında bir tablo oluşturulabilir. Bu tabloya eklenecek veriler arasında, eşya ID'si, sahibi karakter adı, fiyat, süre ve diğer meta bilgiler yer alır.
Sunucu tarafında bir packet sistemi kurulur. Oyuncu markete eşya koymak istediğinde, istemci C++ sunucuya özel bir paket gönderir. Sunucu bu paketi işler, veritabanına yazar ve eşyayı markette listeler. Aynı zamanda, oynatıcıların marketten eşya satın alması da benzer şekilde bir C++ fonksiyonu ile yönetilir.
Python GUI ile Market Arayüzü
Python, özellikle istemci tarafında GUI (Grafik Kullanıcı Arayüzü) geliştirmek için idealdir. Metin2 oyununda, oyun içi market sistemini desteklemek amacıyla bir Python GUI penceresi tasarlanabilir. Bu pencere, UIScript kullanılarak entegre edilir. Python root dosyalarında 'market.py' gibi bir modül tanımlanır ve bu modül oyun içinde bir butonla açılır.
Python GUI ile kullanıcı dostu bir arayüz hazırlanabilir. Örneğin: listede eşyalar gösterilir, filtreleme yapılabilir, fiyat aralığı belirlenebilir. Tıklanan eşya detaylı olarak gösterilir ve satın alma işlemi için onay penceresi açılabilir. Bu sayede hem kullanıcı deneyimi artırılır hem de C++ sunucu tarafı ile uyumlu bir yapı kurulur.
Lua ile Dinamik Özellik Ekleme
Metin2 istemci tarafında Lua script dili kullanılır. Market sistemi için Lua ile küçük animasyonlar, bildirimler veya arayüz geçiş efektleri eklenebilir. Ayrıca, Lua sayesinde oyun içi komutlarla hızlıca markete erişim sağlanabilir. Örneğin, '/market' komutu ile market penceresi açılabilir.
Lua scriptleri aynı zamanda, eşyanın tooltip'inde market fiyatlarını göstermek veya eşyanın markette satışta olup olmadığını belirtmek için kullanılabilir. Bu sayede kullanıcı daha bilinçli kararlar verebilir.
Market Sistemine Eklenmesi Gereken Temel Özellikler
• Eşya listeleme (isim, fiyat, seviye, sınıf)
• Filtreleme ve arama (sınıf, isim, fiyat aralığı)
• Eşya satış süresi (sabit veya kullanıcı tarafından belirlenen)
• Komisyon sistemi (sunucu geliri)
• Eşya alım/satım bildirimi
• Veritabanı güvenliği ve loglama
Veritabanı ve Güvenlik
Market sistemi için MySQL ya da SQLite gibi veritabanları kullanılır. Her işlemde güvenlik önlemleri alınmalıdır. SQL injection gibi saldırılar engellenmelidir. Aynı zamanda, her eşyanın doğrulanması (örneğin, sahte eşya satışı engellenmeli) önemlidir. Bu işlemler genellikle C++ tarafında yapılır.
Sonuç
Oyun içi nesne market sistemi, Metin2 gibi oyunlarda oyuncuların ekonomik olarak etkileşim kurmasını sağlar. C++, Python ve Lua dilleri birlikte kullanıldığında güçlü, kullanıcı dostu ve güvenli bir sistem geliştirilebilir. Geliştiriciler, bu yapıyı temel alarak daha gelişmiş sistemler de inşa edebilirler.
What Is An In-Game Object Market System?
An in-game object market system is a dynamic economic mechanism that allows players to trade items among themselves. This system enriches player experience and maintains active in-game economy, especially in MMORPG games like Metin2. The system is typically developed using C++, Python, or Lua. In this article, we will examine in detail how to develop an in-game object market system using C++, Python, and Lua.
Developing Market System with C++
Systems developed in C++ on the Metin2 server side are preferred for their performance and direct control. For a market system, a database design must first be created. For instance, a table named 'market_items' can be created. Data stored in this table may include item ID, owner character name, price, duration, and other metadata.
A packet system is established on the server side. When a player wants to put an item on the market, the client sends a special packet to the C++ server. The server processes this packet, writes it to the database, and lists the item on the market. Similarly, purchasing an item from the market is also handled by a C++ function.
Market Interface with Python GUI
Python is ideal for developing GUI (Graphical User Interface) on the client side. A Python GUI window can be designed to support the in-game market system in Metin2. This window can be integrated using UIScript. A module such as 'market.py' can be defined within Python root files and opened via a button in the game.
A user-friendly interface can be created using Python GUI. For example: items can be displayed in a list, filtering can be applied, and price ranges can be set. The selected item can be shown in detail, and a confirmation window can appear for purchase. This enhances user experience while maintaining compatibility with the C++ server-side structure.
Adding Dynamic Features with Lua
The Lua scripting language is used on the client side in Metin2. Lua can be used to add small animations, notifications, or UI transition effects to the market system. Additionally, quick access to the market can be enabled through in-game commands. For example, the '/market' command can open the market window.
Lua scripts can also display market prices in an item's tooltip or indicate whether the item is currently listed on the market. This enables users to make more informed decisions.
Essential Features for the Market System
• Item listing (name, price, level, class)
• Filtering and search (class, name, price range)
• Item listing duration (fixed or user-defined)
• Commission system (server revenue)
• Item purchase/sale notifications
• Database security and logging
Database and Security
MySQL or SQLite databases are commonly used for the market system. Security measures must be taken during every transaction. SQL injection attacks should be prevented. Additionally, verification of each item (e.g., preventing fake item sales) is crucial. These operations are typically handled on the C++ server-side.
Conclusion
An in-game object market system allows players to economically interact in games like Metin2. When C++, Python, and Lua are used together, a powerful, user-friendly, and secure system can be built. Developers can use this structure as a foundation to build even more advanced systems.
