Ferdinant'dan Paylaşımlar Biyolog Sıfırlama Questi Oluşturma Kanıtlı

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

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0

[/FONT]


Son günlerde gerek oyuncuların gerekse oyun sahiplerinin başına dert olan
VaYqlj.jpg



Öncelikle sistemi birazcık anlatalım. Biyolog görevlerinin kaydolduğu iki tablo vardır. Bunlar player > quest ve player > affect tablolarıdır. Biyolog aşamaları quest tablosuna, alınan özellikler ise affect tablosuna kaydolur. Örneğin bir görev aldınız diyelim quest tablosunda karakter id'sinin bulunduğu satırın karşısına görevi aldığınız sayısal değerlerle işlenir. Her görevin kendine ait sayısal değerler vardır ve bu değerlerin karşılığı usr/game/share/locale/turkey/quest/object/state klasöründe bulunan biyolog ya da buna benzer dosyada bulunur. Görevi aldığınızda set _state(gorev_adi) çalışır ve biyolog dosyası içinde görev_adi'na karşılık gelen numara quest tablosuna yerleşir.

Görev yapıldığında ise yine set_state () kodu ile size yeni bir görev başlangıcı verir ama öncesinde size vereceği özellikleri alırsınız. Aldığınızda ek değerler affect tablosunuza yansır. Birçok 'de biyolog özellik kaybolma sebebi ise veritabanına tam kaydolmadan oyuncunun ışınlanması, ölmesi vs. gibi durumlarda değerlerin tam işlenemesinden kaynaklanıyor.

Görevleri affect ve quest tablosunda oyuncu oyunda değilken dwPID sütununda sıfırlamak istediğiniz karakter idsini bularak tüm değerleri silerek sıfırlayabilirsiniz. Sıfırlanan biyolog görevleri tekrar alınmak üzere oyuna girdiğinde oyuncunun karşısına çıkar. Ancak karakter oyundayken bu işlemi yaparsanız biyolog görevleri üst üste alınabilir. Peki bu nasıl olur? Quest tablosu işlem görür affect tablosu işlem görmezse ek özellikler kalır, görevler tekrardan alınır ve görevleri bitirdiğinizde bulunan ek özelliklerin üzerine aynılar eklenir ve karakter 2 kat daha güçlü olur.

En sağlıklısı oyun içerisinden bir questle sıfırlamanız olacaktır. Bunun için ek özelliklerin nasıl verildiğini öğrenmek yeterlidir.

affect . add_collect ( apply . ATT_GRADE_BONUS , 50 , 60 * 60 * 24 * 365 * 60 )

Yukarıdaki kod +50 saldırı değeri veriyor. Bu kodun hemen aldında ise set_state ( "yeni_görev" ) kodunu görüyoruz. Biz kendimize bir menü yaparsak ve affect . add yerine affect. remove kullanırsak özelliği kaldırmış oluruz. Hemen altına da set_state ( "talk30lv" ) görevine dönmesini yazdırırsak bonuslar sıfırlanmış olacak 30 level görevi yeniden alabilecek hale gelecektir.
Örnekaffect . remove_collect ( apply . ATT_GRADE_BONUS , 50 , 60 * 60 * 24 * 365 * 60 )
set_state ( "talk_to_disciple_lv30" )

Ferdinant'dan Paylaşımlar: Metin2 Biyolog Sıfırlama Questi Oluşturma Kanıtlı Yöntem

Metin2 sunucularında yetenek sıfırlama gibi sistemlerin oyuncular tarafından kolayca erişilebilir olması, hem oyun deneyimini artırır hem de sunucu sadakatini güçlendirir. Bu bağlamda, Ferdinant tarafından geliştirilen ve paylaşılan 'Biyolog Sıfırlama Questi', birçok geliştirici tarafından kullanılmaktadır. Bu rehberde, bu questin nasıl doğru şekilde kurulacağını ve hangi Lua dosyalarının düzenleneceğini adım adım ele alacağız.

Metin2 Quest Sistemi Nedir?

Metin2, quest sistemi sayesinde oyunculara görevler vererek oyun içi etkileşim ve gelişim sağlar. Quest sistemi, Lua dili üzerinden çalışır ve geliştiricilerin kendi özel görevlerini tanımlamasına olanak tanır. Quest dosyaları genellikle 'quest' klasörü altında yer alır ve 'quest.lua' gibi dosyalarla tetiklenir.

Ferdinant Biyolog Questinin Özellikleri

Ferdinant tarafından geliştirilen bu quest, belirli bir NPC ile etkileşim kurarak oyuncuların biyolog sınıfı yeteneklerını sıfırlamalarını sağlar. Quest, belirli item ve altın giderimi ile aktif edilir. Ayrıca, sınırlamalar ve güvenlik önlemleri içerir ki bu da hile karşıtı korumayı artırır. Quest dosyası, lua formatında olup doğrudan 'quest_list' kısmına entegre edilir.

Quest Kurulum Adımları

Öncelikle, 'quest_list' dosyasına yeni bir quest tanımlaması yapılır:

quest biyolog_sifirlama begin
state start begin
when login with pc.get_job() == 3 begin
say_title('Biyolog Yetenek Sıfırlama')
say('Yeteneklerini sıfırlamak ister misin?')
local s = select('Evet', 'Hayır')
if s == 1 then
if pc.get_gold() >= 5000000 then
pc.set_gold(pc.get_gold() - 5000000)
pc.reset_skill()
chat('Yeteneklerin başarıyla sıfırlandı.')
else
chat('Yeterli altınınız yok.')
end
end
end
end

Quest Trigger ve Flag Kullanımı

Quest sisteminde trigger'lar, belirli olaylarda questin çalışmasını sağlar. Flag'ler ise quest durumu takibi için kullanılır. Örneğin, bir oyuncunun bu questten bir kez yararlanıp yararlanmadığı kontrol edilebilir:

if pc.getqf('biyolog_sifirlama_kullanim') == 0 then
pc.setqf('biyolog_sifirlama_kullanim', 1)

Güvenlik ve Debugging

Quest geliştirme sırasında karşılaşılan hatalar, genellikle syntax veya logic hatalarından kaynaklanır. Quest debug işlemleri için loglama yöntemleri kullanılabilir. Chat komutları ile hata ayıklama yapmak oldukça faydalıdır.

Sonuç

Ferdinant tarafından geliştirilen Biyolog Sıfırlama Questi, Metin2 sunucularında yaygın olarak kullanılan bir özelliktir. Doğru şekilde entegre edildiğinde, oyuncuların yetenek sıfırlama işlemlerini kolayca gerçekleştirmesi sağlanır. Quest geliştirme konusunda deneyim kazanmak isteyen geliştiriciler için bu örnek oldukça öğreticidir.


Ferdinant's Shared Content: Verified Method for Creating Metin2 Biologist Reset Quest

In Metin2 servers, having systems like skill resets accessible to players easily enhances both the gaming experience and server loyalty. In this context, the 'Biologist Reset Quest' developed and shared by Ferdinant is widely used by many developers. This guide will detail step-by-step instructions on how to properly install this quest and which Lua files need to be edited.

What is the Metin2 Quest System?

Metin2 uses a quest system to assign tasks to players, enabling in-game interaction and progression. The quest system operates via the Lua language, allowing developers to define custom quests. Quest files are usually located under the 'quest' folder and triggered via files like 'quest.lua'.

Features of Ferdinant's Biologist Quest

Developed by Ferdinant, this quest allows players to reset their biologist class skills through interaction with a specific NPC. The quest requires certain items and gold to activate. Additionally, it includes limitations and security measures, increasing anti-cheat protection. The quest file is in lua format and directly integrated into the 'quest_list'.

Quest Installation Steps

Firstly, a new quest definition is added to the 'quest_list' file:

quest biyolog_sifirlama begin
state start begin
when login with pc.get_job() == 3 begin
say_title('Biologist Skill Reset')
say('Do you want to reset your skills?')
local s = select('Yes', 'No')
if s == 1 then
if pc.get_gold() >= 5000000 then
pc.set_gold(pc.get_gold() - 5000000)
pc.reset_skill()
chat('Skills successfully reset.')
else
chat('You do not have enough gold.')
end
end
end
end

Using Quest Triggers and Flags

Triggers in the quest system allow quests to run during specific events. Flags are used to track quest states. For instance, whether a player has already used this quest can be checked:

if pc.getqf('biyolog_sifirlama_kullanim') == 0 then
pc.setqf('biyolog_sifirlama_kullanim', 1)

Security and Debugging

Errors encountered during quest development often stem from syntax or logical errors. For quest debugging, logging methods can be useful. Using chat commands for debugging can be very helpful.

Conclusion

The Biologist Reset Quest developed by Ferdinant is a commonly used feature in Metin2 servers. When correctly integrated, it enables players to easily reset their skills. This example is highly educational for developers looking to gain experience in quest development.
 

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

Benzer konular

Geri
Üst Alt