Yaşlı kadında fal kısmı çalışsın istiyorsanız aşağıdaki questi kullanabilirsiniz.
Not : Quest İsmini : fortune_telling.lua Bu Yapınız
Not : Quest İsmini : fortune_telling.lua Bu Yapınız
Kod:
quest fortune_telling begin state start begin when oldwoman.chat."Senin falcı olduğunu duydum" begin if pc.level<=20 then say_title("Yaşlı kadın:") say("") --- l say("Görünüşe göre henüz buralarda yenisin.") say("Neden bu kadar çabuk kısmetini öğremek istiyorsun?") say("Problemlerin mi var?") say("Kısmetin bol çalışma istiyor.") say("Sonra bir daha gel.") say("") return end if get_time()-pc.getqf("time") < 8*60*60 then local passed_time = get_time() - pc.getqf("time") say_title("Yaşlı kadın:") say("") --- l say("Hayatını falcının söylediği gibi mi yaşamak") say("istiyorsun? Onun dedilerini çok ciddiye alma.") say("Mühim olan") say("düşüncelerin ve yüz ifaden,") say("ikisi de iyiyse, sana bir şey olmaz.") say("Hala falına baktırmak istiyorsan ") say("yarın bir daha gel.") say("") wait() local idx = pc.getqf("idx") if idx!=0 then say_title("Yaşlı kadın:") --- l say("Dediğim gibi, bugünle ilgili kehanetim şöyle:") say(locale.fortune_words[idx][1]) wait() if pc.getqf("talisman") == 0 and special.fortune_telling[idx][5] > 0 then local talisman_cost = special.fortune_telling[idx][5] wait() say_title("Yaşlı kadın:") say("") --- l say("Kısmetsiz olacaksın, ve daha seni") say("kötülükten koruyan muskayı almadın.. Benim") say("zenginlik muskamı almak ") say("ister misin?") local s = select("Evet onu almak istiyorum.","Hayır almak istemiyorum.") if s == 1 then if pc.gold < talisman_cost then say_title("Yaşlı kadın:") say("") --- l say("İyi biriyim, ama sana muskayı hediye edemem") say("uğursuzluktan korunmak istiyorsan") say("bana para ver.") say("") say("") pc.setqf("talisman", 0) else pc.give_item2(70052,1) pc.changegold(-talisman_cost) pc.setqf("talisman", 1) end else end end end end local gold = 7777 say_title("Yaşlı kadın:") say("") --- l say("Daha o kadar derin inlemek için çok gençsin!") say("Falına baktırmak ister misin?") say("") local s = select("Bana kaderimi söyle.", "Benim falıma bakma") if s == 2 then say_title("Yaşlı kadın:") say("") --- l say("Doğru. Hayatta en önemli şey, kendi istediğini") say("yapabilmek ve doğru yoldan şaşmamaktır. Görüşmek ") say("üzere!") return end say_title("Yaşlı kadın:") local n = number(1, 10000) local i local idx for i = 1, table.getn(special.fortune_telling) do if n<=special.fortune_telling[i][1] then idx = i break else n = n - special.fortune_telling[i][1] end end i = idx say(locale.fortune_words[i][2]) local t = {} n = 0 local j for j = 2,4 do if special.fortune_telling[i][j] != 0 then n=n+1 t[n] = j end end if n > 0 then n = number(1, n) __give_char_priv(t[n]-1, special.fortune_telling[i][t[n]]) end pc.setqf("time", get_time()) pc.setqf("idx", i) if special.fortune_telling[i][5]>0 then wait() say(locale.fortune_words[i][3]) local talisman_cost = special.fortune_telling[i][5] local s = select("Evet,bir tane istiyorum.","Hayır, sağol.") if s == 1 then say_title("Yaşlı kadın:") if pc.gold < talisman_cost then --- l say("Iyi biriyim ama sana muskayı hediye edemem") say("uğursuzlukdan korunmak istiyorsan") say("bana onun") say(" için para ver.") say("") say("Fiyatı "..gold.." Yang.") say("") pc.setqf("talisman", 0) else pc.give_item2(70052,1) pc.changegold(-talisman_cost) pc.setqf("talisman", 1) end elseif s == 2 then say_title("Yaşlı kadın:") say("") --- l say("Gidiyor musun? Belki haklısın. Uğursuzluk ve ") say("üzünç hayatın bir parçası.Kendine dikat et") say("Görüşmek üzere. şayet kararını değiştirirsen,") say("sonra bir daha gel.") pc.setqf("talisman", 0) end end end -- end_of_when end -- end_of_state end -- end_of_quest
Metin2 Yaşlı Kadın Falcı Quest
Metin2 oyunu, özellikle quest sistemleriyle oyunculara farklı deneyimler sunmaktadır. Bu sistemlerden biri de Yaşlı Kadın Falcı adlı özel quest'tir. Bu rehberde, Metin2 sunucularında kullanılabilecek Yaşlı Kadın Falcı quest'inin nasıl yapılandırılacağı, hangi lua komutlarının kullanılacağı ve quest sisteminin genel yapısı hakkında detaylı bilgiler yer alacaktır.
Metin2 oyununda quest sistemleri, oyuncuların karakterlerini geliştirmelerine yardımcı olurken aynı zamanda oyun içi hikâyeye derinlik katar. Quest geliştirme, Lua diline dayalıdır ve Metin2 sunucularında özel etkileşimler kurulmasını sağlar. Yaşlı Kadın Falcı gibi quest'ler, oyunculara hikayevi görevler sunarak oyun deneyimini zenginleştirir.
Quest Dosyası Oluşturma
Quest dosyaları genellikle .lua uzantılıdır ve Metin2 sunucusunun quest dizinine yerleştirilir. Yaşlı Kadın Falcı quest dosyası da bu yapıya uygun olarak hazırlanmalıdır. Öncelikle quest dosyasının başlangıcı tanımlanır:
Kod:
[B]quest[/B] yasli_kadin_falci [B]begin[/B][BR][/BR][B]state[/B] [B]start[/B] [B]begin[/B][BR][/BR][B]when[/B] npc.click [B]with[/B] npc.vnum == 20099 [B]or[/B] npc.name == 'Yaşlı Kadın Falcı'[BR][/BR][B]say[/B] 'Merhaba genç yolcu, geleceğini okuyabilir miyim?'[BR][/BR][B]local[/B] choice = [B]select[/B]('Geleceğimi Oku', 'Yardım Et', 'Vazgeç')[BR][/BR][BR][/BR][B]if[/B] choice == 1 [B]then[/B][BR][/BR] [B]say[/B] 'Evet, senin için parlak bir gelecek var... Ama önce bazı görevleri yerine getirmen gerekiyor.'[BR][/BR][B]elseif[/B] choice == 2 [B]then[/B][BR][/BR] [B]say[/B] 'Sana rehberlik edebilirim. Ama dikkatli ol, çünkü bu yol zor olabilir.'[BR][/BR][B]else[/B][BR][/BR] [B]return[/B][BR][/BR][B]end[/B][BR][/BR][B]end[/B][BR][/BR][B]end[/B]
Quest Reward Sistemi
Quest tamamlandığında oyuncuya ödül vermek önemlidir. Reward sistemi, item veya exp gibi ödüller içerebilir. Yaşlı Kadın Falcı quest'inde ödül olarak item vermek için aşağıdaki kod bloğu kullanılabilir:
Kod:
[B]pc.give_item2('item_vnum', amount)
Mob ve NPC Entegrasyonu
Quest içinde mob veya npc kullanımı oldukça yaygındır. Yaşlı Kadın Falcı, oyuncudan belirli mob'ları öldürmesini veya npc'ye gitmesini isteyebilir. Bu durumda trigger mekanizmaları aktif hale gelir. Örneğin:
Kod:
[B]when[/B] kill [B]with[/B] mob.vnum == 1001 [B]and[/B] pc.getqf('quest_state') == 1[BR][/BR][B]pc.setqf('quest_state', 2)[BR][/BR][B]chat[/B]('Görev tamamlandı! Geri dönün.'
Quest Hata Ayıklama
Quest geliştirirken hatalarla karşılaşmak kaçınılmazdır. Debug işlemleri için syslog veya chat fonksiyonları kullanılabilir. Bu sayede quest akışı izlenebilir ve sorunlar kolayca çözülebilir.
Özet
Metin2 için geliştirilen Yaşlı Kadın Falcı quest'i, oyunculara hikayevi derinlik ve interaktif görevler sunar. Lua tabanlı quest sistemleri sayesinde, sunuculara özel questler yazılabilir. Reward, timer, flag gibi mekanizmalar kullanılarak daha gelişmiş sistemler kurulabilir. Quest geliştirme süreci, hem Metin2 sunucu yöneticileri hem de geliştiriciler için önemli bir beceridir.
Metin2 Old Woman Fortune Teller Quest
Metin2 game offers players different experiences especially with its quest systems. One of these systems is the special quest called Old Woman Fortune Teller. In this guide, detailed information about how to configure the Old Woman Fortune Teller quest that can be used on Metin2 servers, which Lua commands should be used, and the general structure of the quest system will be provided.
In Metin2, quest systems help players develop their characters while also adding depth to the in-game story. Quest development is based on the Lua language and allows custom interactions to be set up on Metin2 servers. Quests like Old Woman Fortune Teller enrich the gaming experience by offering players narrative missions.
Creating a Quest File
Quest files are generally .lua extension files and placed in the quest directory of the Metin2 server. The Old Woman Fortune Teller quest file must be prepared accordingly. First, the beginning of the quest file is defined:
Kod:
[B]quest[/B] old_woman_fortune_teller [B]begin[/B][BR][/BR][B]state[/B] [B]start[/B] [B]begin[/B][BR][/BR][B]when[/B] npc.click [B]with[/B] npc.vnum == 20099 [B]or[/B] npc.name == 'Old Woman Fortune Teller'[BR][/BR][B]say[/B] 'Hello young traveler, may I read your future?'[BR][/BR][B]local[/B] choice = [B]select[/B]('Read My Future', 'Help Me', 'Cancel')[BR][/BR][BR][/BR][B]if[/B] choice == 1 [B]then[/B][BR][/BR] [B]say[/B] 'Yes, there is a bright future ahead of you... But first, you need to complete some tasks.'[BR][/BR][B]elseif[/B] choice == 2 [B]then[/B][BR][/BR] [B]say[/B] 'I can guide you. But be careful, because this path might be difficult.'[BR][/BR][B]else[/B][BR][/BR] [B]return[/B][BR][/BR][B]end[/B][BR][/BR][B]end[/B][BR][/BR][B]end[/B]
Quest Reward System
When a quest is completed, rewarding the player is important. The reward system can include rewards such as items or experience. To give an item as a reward in the Old Woman Fortune Teller quest, the following code block can be used:
Kod:
[B]pc.give_item2('item_vnum', amount)
Mob and NPC Integration
Using mobs or NPCs within a quest is quite common. The Old Woman Fortune Teller might ask the player to kill certain mobs or visit an NPC. In this case, trigger mechanisms become active. For example:
Kod:
[B]when[/B] kill [B]with[/B] mob.vnum == 1001 [B]and[/B] pc.getqf('quest_state') == 1[BR][/BR][B]pc.setqf('quest_state', 2)[BR][/BR][B]chat[/B]('Task completed! Go back.'
Quest Debugging
When developing quests, encountering errors is inevitable. For debug operations, syslog or chat functions can be used. This way, the quest flow can be monitored and problems resolved easily.
Summary
The Old Woman Fortune Teller quest developed for Metin2 provides players with narrative depth and interactive missions. Thanks to Lua-based quest systems, custom quests can be written for servers. More advanced systems can be built using mechanisms like reward, timer, flag. The quest development process is an important skill for both Metin2 server administrators and developers.
