Seviye 30: "Silah Görevi" [LUA]

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

Admin

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

Bu görev sayesinde 30.seviyeye gelen oyuncu 30 adet "Yabani Okçu" öldürürse, kendi sınıfına ait bir 30.seviye silahı kazanır.



Görevden Resimler:


OqYQYP.jpg




JYRPRj.jpg





Kod:
quest seviye_30 begin     state start begin         when login or levelup with pc.get_level() >= 30 and pc.get_level() <= 99 begin             if pc.getqf("seviye_30_gorev_tamam") == 0 then                 set_state(gorev_otuz)             end         end -- when login or levelup with pc.get_level() >= 30 and pc.get_level() <= 99 begin endi     end -- state start begin endi        state gorev_otuz begin         when letter with pc.get_level() >= 30 and pc.get_level() <= 99 begin             send_letter("Seviye 30: Silah Görevi")         end -- when letter with pc.get_level() >= 30 and pc.get_level() <= 99 begin endi         when info or button with pc.get_level() >= 30 and pc.get_level() <= 99 begin             oyuncu_isim = pc.get_name()             say_title("Bilgilendirme:")             say("")             say("Merhaba oyuncu, "..oyuncu_isim)             say("30 adet Yabani Okçu öldürerek dilediğin 30.seviye silahını[ENTER]alabilirsin.")             say("")             if pc.getqf("yabani_okcu_g") == 0 then                 pc.setqf("yabani_okcu", 30)                 pc.setqf("yabani_okcu_g",1)             end             q.set_counter("Yabani Okçu", pc.getqf("yabani_okcu"))         end -- when info or button with pc.get_level() >= 30 and pc.get_level() <= 99 begin endi                when 503.kill with pc.getqf("yabani_okcu_g") == 1 begin             oldurme = pc.getqf("yabani_okcu") - 1             if oldurme <= 30 and oldurme != 0 then                 pc.setqf("yabani_okcu", oldurme)                 q.set_counter("Yabani Okçu", oldurme)             else                 pc.setqf("seviye_30_gorev_tamam",1)                 say_title("Bilgilendirme:")                 say("")                 say("Tebrikler! oyuncu, "..oyuncu_isim)                 say("Görevi başarı ile yerine getirdin.")                 say("")                 oyuncu_sinif = pc.get_job()                 if oyuncu_sinif == 0 or oyuncu_sinif == 4 then -- savaşçı                     esya_al = select("Dolunay Kılıç+9","Kırmızı Demir Pala+9")                     if esya_al == 1 then                         pc.give_item2(299,1)                     elseif esya_al == 2 then                         pc.give_item2(3219,1)                     end                 elseif oyuncu_sinif == 1 or oyuncu_sinif == 5 then -- ninja                     esya_al = select("Dolunay Kılıç+9","Siyah Yaprak Hançer+9","Geyik Boynuzu Yay+9")                     if esya_al == 1 then                         pc.give_item2(299,1)                     elseif esya_al == 2 then                         pc.give_item2(1179,1)                     elseif esya_al == 3 then                         pc.give_item2(2159,1)                     end                 elseif oyuncu_sinif == 2 or oyuncu_sinif == 6 then -- sura                     pc.give_item2(299,1)                 elseif oyuncu_sinif == 3 or oyuncu_sinif == 7 then -- şaman                     esya_al = select("Sonbahar Yelpaze+9","Antik Çan+9")                     if esya_al == 1 then                         pc.give_item2(7169,1)                     elseif esya_al == 2 then                         pc.give_item2(5119,1)                     end                 end                 clear_letter()                 set_state(__COMPLETE__)             end         end     end -- state gorev_otuz begin endi         state __COMPLETE__ begin                end end -- quest seviye_30 begin endi


Bunu kaydedip çıkıyoruz.

2-)Putty'e geliyoruz.

cd /usr/game/share/locale/turkey/quest yazıp enterliyoruz. Daha sonra şu komutu yazıyoruz.

./qc seviye_30_gorev.lua

Putty ile de işimiz bitti.
3-) Oyuna dönüyoruz ve bir GM karakter ile "/reload q" çekiyoruz.
4-) Daha sonra yeni karakter açıp 30 seviye yaparak görevi kontrol edebilirsiniz.

Seviye 30: 'Silah Görevi' [LUA] - Metin2 Quest Sistemi

Metin2 Lobby olarak, quest sistemlerine odaklanan oyuncular için detaylı bir rehber sunuyoruz. Bu yazıda Seviye 30 seviyesinde başlayan 'Silah Görevi' adlı özel LUA tabanlı quest yapısını inceleyeceğiz. Bu quest, oyuncuların silahlarını geliştirmeleri için özel ödüller ve görevler içerir. Quest sistemi, Metin2'nin en önemli sosyal ve oynanış mekaniklerinden biridir ve doğru yapılmış bir LUA quest deneyimi sunar.

Silah Görevi, oyuncuların belirli seviyeye ulaştığında etkinleşen bir görevdir. Bu görevde, oyuncudan istenenler genellikle özel mob öldürmeleri, item toplamaları veya NPC ile etkileşim kurulmasıdır. Bu görevin amacı, oyuncuya silah geliştirme konusunda destek sağlamaktır. Oyun içi ödüller ile oyuncu, silahını daha güçlü hale getirebilir.

Quest Başlangıcı:
Quest başlatıldığında, oyuncuya NPC üzerinden görev verilir. Bu NPC genellikle bir silah ustası veya görev verici karakteridir. Görev tanımı yapılırken, quest.lua dosyasında belirlenen trigger ve state sistemleri aktif olur. Flag kontrolü sayesinde, oyuncunun daha önce bu görevi yapmış olup olmadığı kontrol edilir.

Görev Adımları:
1. Oyuncudan belirli bir silah veya eşya istenebilir. Bu eşya, oyuncunun envanterinde olmalıdır.
2. Belirtilen mob türlerinden belli sayıda öldürülmesi istenebilir.
3. NPC'ye geri dönüp görevi tamamlaması beklenir.

Quest Kod Yapısı:
LUA tabanlı bir quest dosyasında genellikle aşağıdaki gibi yapılar kullanılır:
quest weapon_quest begin
state start begin
when login or levelup with pc.get_level() >= 30 begin
say('Silah görevine hoş geldiniz!')
end
end

Quest Ödülleri:
Görev başarıyla tamamlandığında, oyuncuya silah geliştirme araçları, özel item veya experience puanı verilir. Bu ödüller, oyuncunun ilerlemesini desteklemek için dikkatle seçilir. Reward sistemleri, quest'in değerini artırır ve oyuncuların tekrar oynamasını sağlar.

Hata Ayıklama ve Debug:
Bazı durumlarda quest çalışmayabilir. Bu gibi durumlarda quest debug işlemleri yapılmalıdır. Log kayıtları incelenerek hatalar tespit edilir. Timer veya flag hataları sıkça karşılaşılan sorunlardır. Quest edit sırasında dikkat edilmelidir.

Sonuç:
Seviye 30 Silah Görevi, Metin2'de oyuncuların ilerlemesini destekleyen etkili bir custom quest örneğidir. Doğru yapılmış LUA scriptleri ile bu tür görevler sunucularınızda büyük yankı yaratır. Quest geliştirme, hem teknik hem de yaratıcılık gerektiren bir alandır. Her quest, oyuncunun dikkatini çekecek şekilde tasarlanmalıdır.


Level 30: 'Weapon Quest' [LUA] - Metin2 Quest System

Metin2 Lobby provides a detailed guide for players focusing on quest systems. In this article, we will examine the structure of a special LUA-based quest called 'Weapon Quest' which starts at Level 30. This quest includes special rewards and tasks to help players enhance their weapons. The quest system is one of the most important social and gameplay mechanics in Metin2 and offers a well-crafted LUA quest experience.

Weapon Quest is a mission activated when the player reaches a certain level. The quest typically requires killing specific mobs, collecting items, or interacting with an NPC. Its goal is to support the player in enhancing their weapon. Through in-game rewards, players can strengthen their weapons.

Quest Start:
When the quest begins, an NPC assigns the mission to the player. This NPC is usually a weapon master or quest giver. When defining the quest, trigger and state systems defined in the quest.lua file become active. A flag check ensures whether the player has already completed this quest before.

Quest Steps:
1. The player may be required to have a specific weapon or item. This item must be present in the player's inventory.
2. The player must kill a certain number of specified mobs.
3. The player returns to the NPC to complete the quest.

Quest Code Structure:
In a LUA-based quest file, structures like the following are generally used:
quest weapon_quest begin
state start begin
when login or levelup with pc.get_level() >= 30 begin
say('Welcome to the Weapon Quest!')
end
end

Quest Rewards:
Upon successful completion of the quest, the player receives items such as weapon enhancement tools, special items, or experience points. These rewards are carefully selected to support the player's progression. Reward systems increase the value of the quest and encourage players to replay it.

Debugging and Error Handling:
Sometimes, a quest may not work properly. In such cases, quest debug procedures should be performed. Errors can be identified by reviewing log records. Timer or flag errors are common issues encountered. Care must be taken during quest edit.

Conclusion:
Level 30 Weapon Quest is an effective example of a custom quest that supports player advancement in Metin2. Well-made LUA scripts make such quests impactful on your servers. Quest development requires both technical skills and creativity. Every quest should be designed to capture the attention of the player.
 

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

Geri
Üst Alt