get_time() ile devam edelim. Kelime anlamı olarak tam karşılamasa da o an için zamanın tam olarak ne olduğunu kaydeder.
Bu fonksiyon timer'a benzer. Farkı tek bir oyuncu için çalışabilir olmasıdır. setqf veya event_flag ile kullanılabilir. Çok işe yarar bir komuttur. Örnekle açıklayalım.
Yukarıdaki quest ile bir eşyaya süre koydum. Sadece yarım saat içinde 1 kere kullanılabilir oldu. Nasıl oldu peki? Oyuncunun ilk tıklayışında qf("actinmi") kayıtını o anki zamanın üzerine 1800 ekleyerek kaydettirdim. 1800, 30 dakika yapar. Eğer 2. tıkladığında yarım saat geçmemiş ise 12222 numaralı eşyayı vermeyecektir. Zaman süreki işlediğinden dolayı oyuncunun ilk tıkladığı zamanın 1800 fazlasına da elbet gelecektir. Çıkarma işlemi ile aradaki farktan yararlanıyorum. Bu iki sayısal değer birbirne eşit olduğunda çıkarma işlemi yaptığınızda 0 olacak. Eğer get_time() + 1800 hala oyuncunun 2. tıkladığı zamandaki get_time() dan büyük ise yarım saat geçmemiş demektir. Çok iyi anlatamadım burayı. O yüzden yukarıdaki questi dikkatle inceleyin umarım anlarsınız.
İkinci kodumuz ise setf(). Bu komutu kullanarak 2 quest arasında bağlantı kurabiliriz. Mesela şöyle yapalım.
2 questi nasıl birletirdiğime bakın. 1. questte setf komutu ile yine bir kelime üzerine o anı bir sayısal değer olarak düşünürsek 24*60*60 fazlasını kaydettirdim. 2. questte nasıl bağladımı dikkatlice inceleyin. pc.getf("azrail_kesildi","ornek_quest") Önce kelimemiz sonra ilk questin adı. Bu şekilde bağlamayı yapabiliriz. Bunu d.getf ya da d.setf ile de yapabiliriz. d. koyarak yaptığımızda o an orada olan herkes için kayıt yapılır.
Quest Yazma Dersleri 5
Metin2 Lobby olarak, Metin2 quest sistemine dair derinlemesine bilgiler sunmaya devam ediyoruz. Bu dersimizde, Quest Yazma Dersleri 5 başlığı altında, Metin2 quest geliştirme sürecinde önemli yer tutan ileri düzey konulara odaklanacağız. Metin2 quest sistematiği, Lua diline dayalıdır ve doğru yapılandırıldığında hem oyuncu deneyimini artırır hem de sunucu yöneticilerine büyük esneklik sağlar.
Quest geliştirme sürecinde, önceki derslerde temellerini attığımız yapıların üzerine inşa ederek daha karmaşık senaryolar yaratmamız mümkündür. Bu bağlamda, quest chain (görev zinciri), quest timer (zamanlayıcı), flag (bayrak sistemi), state (durum yönetimi) gibi kavramlar oldukça önem kazanmaktadır. Bu yapılar,.quest dosyaları içinde tanımlanarak, oyuncuların farklı durumlara göre farklı davranışlar sergilemesini sağlar.
Örneğin bir Metin2 quest, belirli bir süre sonra yeniden aktif hale gelebilir. Bunun için timer kullanılır. Aynı zamanda, oyuncunun questi tamamlama durumu, flag adı verilen veri saklama birimi ile kontrol edilir. Quest state ise, mevcut questin hangi aşamada olduğunu belirtir. Tüm bu unsurlar, Metin2 quest sistematiğinde doğru programlama ile bir araya getirildiğinde, güçlü ve kullanıcı dostu görevler ortaya çıkar.
Metin2 quest script yazarken, Lua dilinin syntax yapısına dikkat etmek gerekir. Hatalar genellikle küçük yazım yanlışlıklarından veya parantez eksikliğinden kaynaklanabilir. Debug işlemleri sırasında, log dosyaları üzerinden hata mesajları takip edilmeli ve quest dosyaları üzerinde gerekli düzenlemeler yapılmalıdır. Metin2 quest hata ayıklama (debug), özellikle büyük projelerde büyük zaman kazandırır.
Quest reward (ödül) sistematiği, oyuncunun motivasyonunu doğrudan etkiler. Item, EXP, gold veya özel ödüller, doğru şekilde tanımlandığında oyuncu ilgisini çekebilir. Quest item kullanımı, Metin2 özelinde oldukça yaygındır. Oyuncuya özel eşyalar, sınırlı süreli ödüller veya koleksiyon görevleri gibi konseptler, quest sistemine derinlik katacaktır.
Metin2 quest geliştirme sürecinde, NPC (non-player character) rolleri büyük öneme sahiptir. NPC'ler, quest başlangıcı, görev verme, ödül dağıtımı gibi işlemleri yönetir. Quest trigger (tetikleyici), oyuncunun belirli bir NPC ile etkileşimine göre görevi başlatır. Mob (canavar) kullanımında ise, belirli düşmanları öldürerek görev tamamlama mekanizması çalışır. Bu tür questler, oyuncuların seyahat etmesini ve aktif savaş yapmasını teşvik eder.
Metin2 daily quest (günlük görev) sistemleri, oyuncuların her gün oyuna giriş yapmasını teşvik eder. Bu görevler genellikle kolay ve hızlı tamamlanabilir niteliktedir. Ancak yine de doğru tasarlandığında sunucu aktifliğini artırabilir. Daily quest yapıları, Metin2 quest sistematiğinde sıkça kullanılan ve etkili yöntemlerden biridir.
Sonuç olarak, Metin2 quest yazma, hem teknik hem de yaratıcı yönüyle dikkat isteyen bir alandır. Doğru stratejiyle geliştirilen questler, oyuncuların oyun içi süresini uzatır ve sunucu sadakatini artırır. Metin2 lobby olarak, quest sistemlerine dair tüm detayları paylaşmaya devam edeceğiz. Quest geliştirme sürecinde sorularınız varsa, sitemizdeki diğer rehberlerden faydalanabilirsiniz.
Quest Writing Lessons 5
At Metin2 Lobby, we continue to provide in-depth information about the Metin2 quest system. In this lesson, under the title Quest Writing Lessons 5, we will focus on advanced topics that play a significant role in the process of developing Metin2 quests. The Metin2 quest system is based on the Lua language, and when properly configured, it enhances player experience while providing great flexibility to server administrators.
During the quest development process, building upon the foundations laid in previous lessons allows us to create more complex scenarios. Concepts such as quest chains, timers, flags, and states become highly important. These structures are defined within .quest files and allow players to exhibit different behaviors depending on various conditions.
For instance, a Metin2 quest can reactivate after a certain period using a timer. Meanwhile, whether a player has completed a quest is checked using a flag data unit. Quest state indicates which phase the current quest is in. When these elements are combined correctly through proper programming in the Metin2 quest system, powerful and user-friendly quests emerge.
When writing Metin2 quest scripts, attention must be paid to the syntax of the Lua language. Errors often stem from small typos or missing brackets. During debugging, error messages should be monitored via log files, and necessary adjustments made to the quest files. Debugging in Metin2 quests saves considerable time, especially in larger projects.
The quest reward system directly impacts player motivation. Properly defined items, EXP, gold, or special rewards can attract player interest. Using quest-specific items is common in Metin2. Special equipment, limited-time rewards, or collection quests add depth to the quest system.
In the process of Metin2 quest development, NPCs (non-player characters) hold significant importance. NPCs manage functions like starting quests, assigning tasks, and distributing rewards. Quest triggers initiate a quest when a player interacts with a specific NPC. In mob usage, defeating certain enemies completes the quest. Such quests encourage travel and active combat.
Daily quest systems in Metin2 incentivize players to log in every day. These quests are usually simple and quick to complete but can effectively increase server activity if designed well. Daily quest structures are frequently used and effective methods within the Metin2 quest system.
In conclusion, writing Metin2 quests requires both technical and creative attention. Well-designed quests developed with the right strategy extend player engagement and boost server loyalty. As Metin2 Lobby, we will continue sharing all details regarding quest systems. If you have questions during the quest development process, you can benefit from other guides available on our site.
Bu fonksiyon timer'a benzer. Farkı tek bir oyuncu için çalışabilir olmasıdır. setqf veya event_flag ile kullanılabilir. Çok işe yarar bir komuttur. Örnekle açıklayalım.
Kod:
quest ornek_quest begin state start begin when 20000.use begin if pc.getqf("actinmi") - get_time() > 0 then say("Bu eşyayı 30 dakikada bir kullanabilirsin.") else pc.give_item2("12222",1) pc.setqf("actinmi",get_time() + 1800) end end end
Yukarıdaki quest ile bir eşyaya süre koydum. Sadece yarım saat içinde 1 kere kullanılabilir oldu. Nasıl oldu peki? Oyuncunun ilk tıklayışında qf("actinmi") kayıtını o anki zamanın üzerine 1800 ekleyerek kaydettirdim. 1800, 30 dakika yapar. Eğer 2. tıkladığında yarım saat geçmemiş ise 12222 numaralı eşyayı vermeyecektir. Zaman süreki işlediğinden dolayı oyuncunun ilk tıkladığı zamanın 1800 fazlasına da elbet gelecektir. Çıkarma işlemi ile aradaki farktan yararlanıyorum. Bu iki sayısal değer birbirne eşit olduğunda çıkarma işlemi yaptığınızda 0 olacak. Eğer get_time() + 1800 hala oyuncunun 2. tıkladığı zamandaki get_time() dan büyük ise yarım saat geçmemiş demektir. Çok iyi anlatamadım burayı. O yüzden yukarıdaki questi dikkatle inceleyin umarım anlarsınız.
İkinci kodumuz ise setf(). Bu komutu kullanarak 2 quest arasında bağlantı kurabiliriz. Mesela şöyle yapalım.
Kod:
quest ornek_quest begin state start begin when 1093.kill begin pc.setf("azrail_kesildi",get_time() + 24*60*60) end end end
Kod:
quest ornek_quest2 begin state start begin when 20005.chat."İçeri gir" begin if pc.getf("azrail_kesildi","ornek_quest") - get_time() > 0 then say("içeri girebilirsin.") else say("son 24 saat içinde azraili öldürmüş olman gerekiyor.") end end end end
2 questi nasıl birletirdiğime bakın. 1. questte setf komutu ile yine bir kelime üzerine o anı bir sayısal değer olarak düşünürsek 24*60*60 fazlasını kaydettirdim. 2. questte nasıl bağladımı dikkatlice inceleyin. pc.getf("azrail_kesildi","ornek_quest") Önce kelimemiz sonra ilk questin adı. Bu şekilde bağlamayı yapabiliriz. Bunu d.getf ya da d.setf ile de yapabiliriz. d. koyarak yaptığımızda o an orada olan herkes için kayıt yapılır.
Quest Yazma Dersleri 5
Metin2 Lobby olarak, Metin2 quest sistemine dair derinlemesine bilgiler sunmaya devam ediyoruz. Bu dersimizde, Quest Yazma Dersleri 5 başlığı altında, Metin2 quest geliştirme sürecinde önemli yer tutan ileri düzey konulara odaklanacağız. Metin2 quest sistematiği, Lua diline dayalıdır ve doğru yapılandırıldığında hem oyuncu deneyimini artırır hem de sunucu yöneticilerine büyük esneklik sağlar.
Quest geliştirme sürecinde, önceki derslerde temellerini attığımız yapıların üzerine inşa ederek daha karmaşık senaryolar yaratmamız mümkündür. Bu bağlamda, quest chain (görev zinciri), quest timer (zamanlayıcı), flag (bayrak sistemi), state (durum yönetimi) gibi kavramlar oldukça önem kazanmaktadır. Bu yapılar,.quest dosyaları içinde tanımlanarak, oyuncuların farklı durumlara göre farklı davranışlar sergilemesini sağlar.
Örneğin bir Metin2 quest, belirli bir süre sonra yeniden aktif hale gelebilir. Bunun için timer kullanılır. Aynı zamanda, oyuncunun questi tamamlama durumu, flag adı verilen veri saklama birimi ile kontrol edilir. Quest state ise, mevcut questin hangi aşamada olduğunu belirtir. Tüm bu unsurlar, Metin2 quest sistematiğinde doğru programlama ile bir araya getirildiğinde, güçlü ve kullanıcı dostu görevler ortaya çıkar.
Metin2 quest script yazarken, Lua dilinin syntax yapısına dikkat etmek gerekir. Hatalar genellikle küçük yazım yanlışlıklarından veya parantez eksikliğinden kaynaklanabilir. Debug işlemleri sırasında, log dosyaları üzerinden hata mesajları takip edilmeli ve quest dosyaları üzerinde gerekli düzenlemeler yapılmalıdır. Metin2 quest hata ayıklama (debug), özellikle büyük projelerde büyük zaman kazandırır.
Quest reward (ödül) sistematiği, oyuncunun motivasyonunu doğrudan etkiler. Item, EXP, gold veya özel ödüller, doğru şekilde tanımlandığında oyuncu ilgisini çekebilir. Quest item kullanımı, Metin2 özelinde oldukça yaygındır. Oyuncuya özel eşyalar, sınırlı süreli ödüller veya koleksiyon görevleri gibi konseptler, quest sistemine derinlik katacaktır.
Metin2 quest geliştirme sürecinde, NPC (non-player character) rolleri büyük öneme sahiptir. NPC'ler, quest başlangıcı, görev verme, ödül dağıtımı gibi işlemleri yönetir. Quest trigger (tetikleyici), oyuncunun belirli bir NPC ile etkileşimine göre görevi başlatır. Mob (canavar) kullanımında ise, belirli düşmanları öldürerek görev tamamlama mekanizması çalışır. Bu tür questler, oyuncuların seyahat etmesini ve aktif savaş yapmasını teşvik eder.
Metin2 daily quest (günlük görev) sistemleri, oyuncuların her gün oyuna giriş yapmasını teşvik eder. Bu görevler genellikle kolay ve hızlı tamamlanabilir niteliktedir. Ancak yine de doğru tasarlandığında sunucu aktifliğini artırabilir. Daily quest yapıları, Metin2 quest sistematiğinde sıkça kullanılan ve etkili yöntemlerden biridir.
Sonuç olarak, Metin2 quest yazma, hem teknik hem de yaratıcı yönüyle dikkat isteyen bir alandır. Doğru stratejiyle geliştirilen questler, oyuncuların oyun içi süresini uzatır ve sunucu sadakatini artırır. Metin2 lobby olarak, quest sistemlerine dair tüm detayları paylaşmaya devam edeceğiz. Quest geliştirme sürecinde sorularınız varsa, sitemizdeki diğer rehberlerden faydalanabilirsiniz.
Quest Writing Lessons 5
At Metin2 Lobby, we continue to provide in-depth information about the Metin2 quest system. In this lesson, under the title Quest Writing Lessons 5, we will focus on advanced topics that play a significant role in the process of developing Metin2 quests. The Metin2 quest system is based on the Lua language, and when properly configured, it enhances player experience while providing great flexibility to server administrators.
During the quest development process, building upon the foundations laid in previous lessons allows us to create more complex scenarios. Concepts such as quest chains, timers, flags, and states become highly important. These structures are defined within .quest files and allow players to exhibit different behaviors depending on various conditions.
For instance, a Metin2 quest can reactivate after a certain period using a timer. Meanwhile, whether a player has completed a quest is checked using a flag data unit. Quest state indicates which phase the current quest is in. When these elements are combined correctly through proper programming in the Metin2 quest system, powerful and user-friendly quests emerge.
When writing Metin2 quest scripts, attention must be paid to the syntax of the Lua language. Errors often stem from small typos or missing brackets. During debugging, error messages should be monitored via log files, and necessary adjustments made to the quest files. Debugging in Metin2 quests saves considerable time, especially in larger projects.
The quest reward system directly impacts player motivation. Properly defined items, EXP, gold, or special rewards can attract player interest. Using quest-specific items is common in Metin2. Special equipment, limited-time rewards, or collection quests add depth to the quest system.
In the process of Metin2 quest development, NPCs (non-player characters) hold significant importance. NPCs manage functions like starting quests, assigning tasks, and distributing rewards. Quest triggers initiate a quest when a player interacts with a specific NPC. In mob usage, defeating certain enemies completes the quest. Such quests encourage travel and active combat.
Daily quest systems in Metin2 incentivize players to log in every day. These quests are usually simple and quick to complete but can effectively increase server activity if designed well. Daily quest structures are frequently used and effective methods within the Metin2 quest system.
In conclusion, writing Metin2 quests requires both technical and creative attention. Well-designed quests developed with the right strategy extend player engagement and boost server loyalty. As Metin2 Lobby, we will continue sharing all details regarding quest systems. If you have questions during the quest development process, you can benefit from other guides available on our site.
