Python | Mob Drop İtem Anotasyon Scripti

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

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Merhaba,
Oyun dosyalarında mobların düşürdüğü itemları daha kolay düzenleyebilmek için küçük bir Python scripti yazdım.

Bu sistem, mob_drop_item.txt dosyasındaki item VNUM'larına karşılık gelen isimleri item_names.txt dosyasından çekerek, her satırın yanına hangi itemın düştüğünü yorum olarak ekliyor.

Böylece dosyayı açtığınızda neyin ne olduğunu anlamak için sürekli başka bir yere bakmanıza gerek kalmıyor.
Hem düzenleme hem de kontrol açısından bayağı zaman kazandırıyor.

Sistem Nasıl Çalışıyor?

  1. <li data-xf-list-type="ol">load_item_names Fonksiyonu:
    • <li data-xf-list-type="ul">item_names.txt dosyasını okuyup VNUM ve item isimlerini bir sözlükte (dictionary) topluyor. <li data-xf-list-type="ul">Dosyada boş satırları ve başlık satırlarını (VNUM ile başlayanlar) atlıyor. <li data-xf-list-type="ul">Satırları tab ya da boşlukla ayırıp VNUM ile ismi eşleştiriyor.
    <li data-xf-list-type="ol">annotate_mob_drop_items Fonksiyonu:
    • <li data-xf-list-type="ul">mob_drop_item.txt dosyasını satır satır okuyor. <li data-xf-list-type="ul">Her satırda bir VNUM bulduğunda, bunu item_names sözlüğünde arıyor. <li data-xf-list-type="ul">Eğer VNUM eşleşirse, satırın sonuna -- item_adı şeklinde bir yorum ekliyor. <li data-xf-list-type="ul">Eşleşme yoksa satırı olduğu gibi bırakıyor. <li data-xf-list-type="ul">Sonuçları yeni bir dosyaya (new_mob_drop_item.txt) yazıyor.
    <li data-xf-list-type="ol">Kodun Genel Akışı:
    • <li data-xf-list-type="ul">Gerekli dosyaları scriptle birlikte aynı klasörün içine koyuyorsunuz. <li data-xf-list-type="ul">Scripti çalıştırdığınızda, anotasyonlu yeni bir dosya oluşuyor.

Kullanım​

  • <li data-xf-list-type="ul">item_names.txt ve mob_drop_item.txt dosyalarınızı verdiğim python dosyası ile aynı dizine koyun. <li data-xf-list-type="ul">Scripti çalıştırın, ardından new_mob_drop_item.txt adında yeni bir dosya oluşacak. <li data-xf-list-type="ul">Örneğin, mob_drop_item.txt içinde 12345 50001 gibi bir satır varsa ve item_names.txt içinde 50001 Altın Kılıç yazıyorsa, çıktı dosyasında şu şekilde görünecek.
227142_34772ad688669d72ee00b065af405507.png

Yardım için teşekkürler şef! 🫡
Python | Mob Drop Item Anotasyon Scripti

Metin2 özel sunucularında geliştirme yaparken, moblardan düşecek itemleri düzenlemek oldukça önemli bir konudur. Bu süreçte manuel olarak her bir mobun drop listesini düzenlemek hem zahmetli hem de zaman alıcıdır. Bu noktada Python dili ile yazılmış bir script yardımıyla bu süreci otomatikleştirmek mümkündür. Bu makalede, mob drop item anotasyon scripti adı verilen bu Python tabanlı aracı ele alacağız ve nasıl kullanılacağını adım adım açıklayacağız.

Mob Drop Sistemine Genel Bakış

Metin2 oyununda her bir mob (canavar), belirli bir ihtimal ile farklı itemleri düşürebilir. Bu sistem, oyuncuların oyun içi ekonomiyi yönetmesinde ve güçlenmesinde kritik rol oynar. Sunucu geliştiricileri genellikle bu sistemleri manuel olarak ya da özel editörlerle düzenlerler. Ancak büyük miktarda mob ve item içeren sunucularda bu işlem oldukça karmaşıklaşabilir.

Python ile Otomasyon

Python, özellikle otomasyon ve veri işleme konularında güçlü bir dil olduğu için, Metin2 geliştiricileri tarafından da sıkça tercih edilmektedir. Mob drop item anotasyon scripti, Python dilinin bu avantajlarından yararlanarak, drop listelerini otomatik veya yarı otomatik olarak düzenlemeyi sağlar.

Scriptin Özellikleri

Bu script sayesinde:

- Belirli moblara özel item drop oranları tanımlanabilir.
- Her drop item için rastgele miktar belirlenebilir.
- Drop listeleri JSON, CSV gibi formatlarda dışa aktarılabilir.
- Mevcut drop sistemleri üzerine ekleme veya güncelleme yapılabilir.

Kullanım Senaryosu

Örneğin, bir Metin2 sunucusunda Devil Square gibi özel bir alan için özel moblar tanımlamak istiyorsunuz. Bu mobların belirli itemleri belli oranlarda düşürmesini istiyorsunuz. Python scripti, bu ayarlamaları kolayca yapmanızı sağlar. Ayrıca bu script, py root veya uiscript gibi diğer sistemlerle entegre çalışarak daha gelişmiş sistemlerin oluşturulmasına olanak tanır.

Anotasyon Nedir?

Anotasyon, kodlama sırasında belirli satırlara açıklama veya işaret koyma işlemidir. Bu scriptte anotasyon, hangi mobun hangi itemi ne oranda düşürdüğü bilgisini içerir. Bu sayede hem insan hem de sistem bu bilgiyi daha kolay okuyabilir.

Python GUI Kullanımı[/COORD]

Script, komut satırında çalıştırılmasının yanında py GUI kullanılarak görsel arayüz üzerinden de çalıştırılabilir. Bu sayede kullanıcı dostu bir şekilde drop sistemleri yönetilebilir.

Sonuç

Mob drop item anotasyon scripti, Metin2 özel sunucu geliştiricileri için oldukça faydalı bir araçtır. Python’un esnekliği sayesinde hem küçük hem de büyük çaplı değişiklikler kolaylıkla yapılabilir. Bu script, Metin2Lobby üzerinde paylaşılan diğer sistemlerle birlikte kullanıldığında, çok daha güçlü ve özelleştirilmiş sunucular geliştirmek mümkün hale gelir.


Python | Mob Drop Item Annotation Script

When developing Metin2 private servers, adjusting items dropped by mobs is a very important task. Manually editing each mob's drop list can be both laborious and time-consuming. At this point, a Python-based script can automate this process. In this article, we will discuss the tool called 'mob drop item annotation script', and explain how to use it step by step.

Overview of Mob Drop Systems

In Metin2, every mob drops certain items with specific probabilities. This system plays a critical role in managing in-game economy and player progression. Server developers usually manage these systems manually or via special editors. However, in servers with a large number of mobs and items, this process can become quite complex.

Automation with Python

Python, being a powerful language especially for automation and data processing, is frequently preferred by Metin2 developers. The mob drop item annotation script leverages Python’s advantages to automatically or semi-automatically manage drop lists.

Features of the Script

With this script:

- Special drop rates for certain mobs can be defined.
- Random amounts can be set for each drop item.
- Drop lists can be exported in formats like JSON or CSV.
- Updates or additions can be made to existing drop systems.

Use Case Scenario

For example, you may want to define special mobs for areas like Devil Square on your Metin2 server. You desire these mobs to drop specific items at certain rates. The Python script allows you to easily make these adjustments. Additionally, this script can work together with other systems like py root or uiscript to build more advanced systems.

What is Annotation?

Annotation refers to adding comments or marks to specific lines during coding. In this script, annotation includes information such as which mob drops which item and at what rate. This makes it easier for both humans and systems to read this information.

Using Python GUI

The script can run not only from the command line but also via a visual interface using py GUI. Thus, drop systems can be managed in a user-friendly manner.

Conclusion

The mob drop item annotation script is a highly useful tool for Metin2 private server developers. Thanks to Python's flexibility, both small and large-scale changes can be made easily. When used together with other systems shared on Metin2Lobby, it enables the creation of much stronger and customized servers.
 

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

Benzer konular

Geri
Üst Alt