Ronark Sistemi Quest (İstek Gelirse Ronark Direk Paylaşılacak)

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

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Selam TurkMMO okuyucuları ben Meftun24,
Ronark sistemi sorunsuz olarak paylaşılmıştı forumda.
Ama bir Kaçı Db Şişirme gibi olaylar çıkarıyordu bizde yavaş yavaş sorumsuz ronark sistemini varezlemek istiyoruz.

Düzgün Okutulduğu zaman hata alınmaz ve ışınlamama gibi sorunlar çıkarmaz.
180411_62eba5f5177fb0f51a8146b6ad4f4b12.png


Questi nasıl okutabilirsiniz yeni başlayan arkadaşlar (Lua olarak paylaşıyorum ama quest demek daha cazip geliyor)

NotePAD++ ile bir dosya açıp kodumuzu atıyoruz (en alt satırda)
2.:Farklı kayıt et>ronark_bolgesi.lua
sonra filezilla login oluyoruz.


Filezilla:
/usr/game/share/locale/turkey/quest
İçine atıyoruz.

Sonra putty login oluyoruz.


Filezilla:
cd /usr/game/share/locale/turkey/quest enterliyoruz
./qc ronark_bolgesi.lua yazıp enterliyoruz.


Kod:
//Turkmmo için özel olarak yapılmıştır çalmak DoomDEV + Meftun24 Tarafından fiziksel ve psikolojik şiddet görmenizi sağlayabilir// quest ronark_system begin     state start begin         when letter with pc.is_gm() begin             send_letter("GM: Ronark Bölgesi ")         end         when info or button with pc.is_gm() begin             if pc.get_map_index() != 500 then                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi Yönetim Paneli  ")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Üzgünüm "..pc.get_name().." ")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("ronarkı başlatmak için ronark haritasında ")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("olman gerekiyor seni ronark haritasına")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("göndermemi ister misin ?")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                 local git = select(locale.yes,locale.no)                 if git == 1 then                     if pc.not_guild() then                         say_npc()                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi")                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Hay aksi!")                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Bir loncan bulunmadığı için seni içeri alamam")                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("lütfen bir loncaya katıl daha sonra gel.")                         return                     end                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi Yönetim Paneli  ")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say(pc.get_name().." seni ronark bölgesine gönderiyorum")                     wait()                     pc.warp(658259,7808633) -- GM Işınlanma kordinat                 elseif git == 2 then                     wait()                 end             end                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi Yönetim Paneli  ")             raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")             raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Merhaba, "..pc.get_name().." yönetim paneline hoşgeldin.")             raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("bu panel üzerinden ronark haritasını açıp kapatabilirsin.")             raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")             raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_reward("sistemini günde sadece bir sefer açarak sistemi oyun")             raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_reward("içerisinde değerli bir hale getirebilirsiniz.")             raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                         local csec123 = select("Ronark Bölgesini Başlat.","Ronark Bölgesini Sonlandır.","Vazgeç ")             if csec123 == 1 then                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi Yönetim Paneli  ")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Ronark sistemini aktif hale ")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Getirmek istiyor musun? ")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                 local ac = select(locale.yes,locale.no)                 if ac == 1 then                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi Yönetim Paneli  ")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Minimum giriş seviyesini gir.")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                     local minn = tonumber(input())                     if minn == nil or minn == 0 or minn > 250 then                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi Yönetim Paneli  ")                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Geçersiz değer.")                         return                     end                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi Yönetim Paneli  ")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Maksimum giriş seviyesini gir.")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                     local maks = tonumber(input())                     if maks == nil or maks == 0 or maks > 250 then                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi Yönetim Paneli  ")                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Geçersiz değer.")                         return                     end                     if minn > maks then                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi Yönetim Paneli  ")                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Minimum değer maksimum ")                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("değerden çok olamaz.")                         return                     end                     if maks < minn then                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi Yönetim Paneli  ")                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Maksimum değer minimum ")                         raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("değerden küçük olamaz.")                         return                     end                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi Yönetim Paneli  ")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_reward("Ronark bölgesi aktif hale getirildi.")                     game.set_event_flag("ronark_min",minn)                     game.set_event_flag("ronark_max",maks)                     notice_all("<Ronark Bölgesi> Ronark birazdan tekrar dirilecek.")                     notice_all("<Ronark Bölgesi> Girişlerin kapanmasına son 5 dakika.")                     notice_all("<Ronark Bölgesi> Loncana güveniyorsan sende ronarka urielden katılabilirsin..")                     notice_all("<Ronark Bölgesi> Giriş seviyesi Min : "..minn.." - Max : "..maks.." ")                     game.set_event_flag("ronarkbolgesi",1)                     game.set_event_flag("RonarkKill",0)                     server_timer("ronarkbolgesitimer",60)                 end             elseif csec123 == 2 then                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi Yönetim Paneli  ")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Ronark bölgesi deaktif hale")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("getirmek istiyor musun?")                 local ac = select(locale.yes,locale.no)                 if ac == 1 then                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi Yönetim Paneli  ")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Ronark bölgesi deaktif hale getirildi")                     notice_all("<Ronark Bölgesi> Ronark savaşı sona erdi")                     game.set_event_flag("ronarkbolgesi",0)                     game.set_event_flag("ronark_min",0)                     game.set_event_flag("ronark_max",0)                     game.set_event_flag("RonarkKill",0)                 end             end         end         when logout begin             if pc.get_map_index() == 500 then                 pc.remove_guild_online_member()             end         end         when login begin             if pc.get_map_index() == 500 then                 pc.guild_online_member()             end         end         when 20011.chat."Ronark Bölgesi" with game.get_event_flag("ronarkbolgesi") == 1 begin             raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi")             raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")             raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_reward(" Merhaba " .. pc.get_name() .. " ")             raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_reward("Seni ronark bölgesine ışınlamam için")             raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_reward("5.000.000 yang gerekiyor")             raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say(" ")             local ronark = select("Beni Ronark'a Gönder...","Vazgeçtim")             local level = pc.get_level()             local ronark_min = game.get_event_flag("ronark_min")             local ronark_max = game.get_event_flag("ronark_max")             if level < ronark_min then                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("ronark girebilmek için ")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("en az "..ronark_min.." level ")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("olman gerekiyor.")                 return             end             if level > ronark_max then                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Seviyen ronark giriş için ")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("uygun değil.")                 raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Maksimum Giriş Seviesi : "..ronark_max)                 return             end                         if ronark == 1 then                 if pc.get_money() < 5000000 then                     say_npc()                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Hay aksi!")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Seni içeri alamam envanterinde yeterli")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("yang bulamadım bana 5.000.000 yang getirmelisin.")                     return                 end                                                 if pc.not_guild() then                     say_npc()                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say_title("Ronark Bölgesi")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Hay aksi!")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("Bir loncan bulunmadığı için seni içeri alamam")                     raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") say("lütfen bir loncaya katıl daha sonra gel.")                     return                 end                                                 if pc.is_gm() then pc.warp(658259,7808633) return end                 if pc.get_empire() == 1 then                         pc.warp(687199,7822933) -- 1. Kordinat Kırmızı                         pc.change_money(-5000000)                 elseif pc.get_empire() == 2 then                         pc.warp(689464,7795215) -- 2. Kordinat Sarı                         pc.change_money(-5000000)                 elseif pc.get_empire() == 3 then                         pc.warp(690413,7808816) -- 3. Kordinat Mavi                         pc.change_money(-5000000)                 end             end         end         when ronarkbolgesitimer.server_timer begin             if game.get_event_flag("ronarkbolgesi") == 0 then return end             notice_all("<Ronark Bölgesi> Ronark'ın dirilmesine son 4 dakika!")             notice_all("<Ronark Bölgesi> Ronark'a uriel'den loncan ile beraber katılabilirsin!")             notice_all("<Ronark Bölgesi> Girişler 4 dakika sonra kapanacak.")             server_timer("ronarkbasla1",60)         end         when ronarkbasla1.server_timer begin             if game.get_event_flag("ronarkbolgesi") == 0 then return end             notice_all("<Ronark Bölgesi> Ronark'ın dirilmesine son 3 dakika!")             notice_all("<Ronark Bölgesi> Ronark'a uriel'den loncan ile beraber katılabilirsin!")             notice_all("<Ronark Bölgesi> Girişler 3 dakika sonra kapanacak.")             server_timer("ronarkbasla2",60)         end         when ronarkbasla2.server_timer begin             if game.get_event_flag("ronarkbolgesi") == 0 then return end             notice_all("<Ronark Bölgesi> Ronark'ın dirilmesine son 2 dakika!")             notice_all("<Ronark Bölgesi> Ronark'a uriel'den loncan ile beraber katılabilirsin!")             notice_all("<Ronark Bölgesi> Girişler 2 dakika sonra kapanacak.")             server_timer("ronarkbasla3",60)         end         when ronarkbasla3.server_timer begin             if game.get_event_flag("ronarkbolgesi") == 0 then return end             notice_all("<Ronark Bölgesi> Ronark'ın dirilmesine son 1 dakika!")             notice_all("<Ronark Bölgesi> Ronark'a uriel'den loncan ile beraber katılabilirsin!")             notice_all("<Ronark Bölgesi> Girişler 1 dakika sonra kapanacak.")             server_timer("ronarkbasla5",60)         end         when ronarkbasla5.server_timer begin             if game.get_event_flag("ronarkbolgesi") == 0 then return end             game.set_event_flag("ronarkbolgesi",0)             regen_in_map(500,"data/ronark/ronarkdungeon.txt")         end     end end

Ronark Sistemi Quest (İstek Gelirse Ronark Direk Paylaşılacak)

Metin2'de Quest Sistemleri ve Ronark Entegrasyonu

Metin2 sunucularında özel quest sistemleri, oyuncuların deneyimini zenginleştirmek ve oyun içi etkileşimi artırmak için büyük önem taşır. Özellikle quest sistemleri, oyuncuların belirli görevleri yerine getirmesiyle ilerlemelerine olanak tanır. Bu sistemler genellikle lua tabanlıdır ve Metin2 geliştiricileri tarafından özelleştirilerek sunucuya entegre edilir. Ronark sistemi gibi gelişmiş quest yapıları, oyunculara karmaşık görev zincirleri sunarak oyunun tekrarlayan yönlerini azaltabilir.

Ronark Sistemi Nedir?

Ronark sistemi, Metin2 sunucularında kullanılan gelişmiş bir quest yönetim sistemidir. Oyunculara görev tamamlama esnekliği sağlar. Bu sistem sayesinde, görevlerin otomatik olarak başlatılması, durum takibi ve ödüllerin yönetimi kolaylaştırılır. Özellikle quest chain (görev zinciri) yapısı sayesinde, oyuncular önceki görevleri başarıyla tamamlamadıkça sonraki görevlere erişemezler. Bu, oyun içi hikaye akışını da destekler.

Quest Geliştirme Süreci

Metin2 quest geliştirme süreci, Lua dili bilgisine dayanır. Quest dosyaları, genellikle 'quest.lua' dosyasında tanımlanır. Her quest, bir başlangıç (quest begin) ve bitiş (quest end) bloğuna sahiptir. Bu bloklar arasında, trigger, timer, flag, state gibi yapılar kullanılır. Örneğin bir görevin aktif olması için state 'start', tamamlandığında ise 'completed' olarak değiştirilir. Timer kullanımı ile belirli görevler zaman sınırlı olarak ayarlanabilir. Günlük görevler (daily quest) bu yapıya örnek olabilir.

Hata Ayıklama ve Debug

Quest geliştirirken karşılaşılan hatalar, oyun deneyimini ciddi şekilde etkileyebilir. Quest debug işlemleri sırasında, sunucu logları incelenmeli ve Lua kodlarında mantık hataları aranmalıdır. Hatalar genellikle quest hata mesajları şeklinde görünür. Geliştiriciler, test sunucularında quest'leri ayrıntılıca test ederek sorunları önceden yakalayabilir.

NPC ve Mob Entegrasyonu

Bir quest sisteminde NPC ve Mob rolleri kritik öneme sahiptir. NPC'ler görevleri verirken, bazı görevlerde belirli mob türlerinin öldürülmesi istenebilir. Ödül olarak item veya exp verilebilir. Bu süreçler doğru tanımlanmazsa, oyuncular görevi tamamlayamayabilir. Ronark sistemi bu süreçleri daha düzenli hale getirir.

Özel ve Günlük Görevler

Sunuculara özel custom quest geliştirilerek, oyunculara benzersiz deneyimler sunulabilir. Aynı zamanda daily quest sistemleri ile oyuncuların günlük olarak oyuna giriş yapması teşvik edilir. Bu tür görevler genellikle küçük ödüllerle birlikte gelir ama uzun vadede oyuncu sadakatini artırır.

Ronark Paylaşımı İçin Talep

Topluluk içinde talep arttıkça, Ronark sistemi doğrudan paylaşılabilir. Bu paylaşım sayesinde Metin2 geliştiricileri, kendi sunucularında gelişmiş quest sistemlerini hızlıca entegre edebileceklerdir. Ancak bu paylaşım, sadece geliştirme amacıyla kullanılmalı ve lisans kurallarına uyulmalıdır.

Sonuç

Metin2 quest sistemleri, oyun deneyimini derinleştiren önemli unsurlardır. Ronark gibi gelişmiş sistemlerle, görevler daha esnek ve kullanıcı dostu hale getirilebilir. Geliştiricilerin dikkat etmesi gereken en önemli konulardan birisi, Lua kodlarının doğru yazılması ve test edilmesidir. Bu sayede, sunucularda görev sistemleri sorunsuz çalışabilir ve oyuncular daha keyifli vakit geçirebilir.


Ronark System Quest (Direct Sharing Available Upon Request)

Metin2 Quest Systems and Ronark Integration

In Metin2 servers, custom quest systems are crucial for enriching player experience and increasing in-game interaction. These quest systems allow players to progress by completing specific tasks. They are usually based on Lua and can be customized by developers before being integrated into the server. Advanced systems like Ronark provide complex quest chains to players, reducing repetitive aspects of the game.

What is the Ronark System?

The Ronark system is an advanced quest management system used in Metin2 servers. It offers flexibility to players during quest completion. This system allows automatic quest starts, status tracking, and reward management. Thanks to its quest chain structure, players cannot access subsequent quests without completing previous ones, supporting the game's story flow.

Quest Development Process

Developing Metin2 quests requires knowledge of the Lua language. Quest files are typically defined in 'quest.lua'. Each quest has a start (quest begin) and an end (quest end) block. Within these blocks, structures like trigger, timer, flag, and state are used. For example, a quest's state might be 'start' initially and change to 'completed' upon finishing. The timer can be used for time-limited quests. Daily quests (daily quest) are examples of such implementations.

Debugging and Error Handling

Errors encountered during quest development can seriously affect gameplay. During quest debug operations, server logs should be reviewed, and logic errors in Lua code should be checked. Errors often appear as quest error messages. Developers can catch issues early by testing quests thoroughly on test servers.

NPC and Mob Integration

In a quest system, the roles of NPCs and Mobs are critical. NPCs give quests, while certain quests may require killing specific mob types. Rewards such as items or experience can be given. If these processes are not properly defined, players may fail to complete the quest. The Ronark system helps organize these processes more efficiently.

Custom and Daily Quests

Developing custom quests for servers can offer unique experiences to players. Additionally, daily quests encourage players to log in regularly. These quests often come with small rewards but help increase long-term player loyalty.

Request for Ronark Sharing

As community demand increases, the Ronark system could be shared directly. With this sharing, Metin2 developers will be able to quickly integrate advanced quest systems into their own servers. However, this sharing must be used solely for development purposes and comply with licensing rules.

Conclusion

Metin2 quest systems are vital elements that deepen the gaming experience. Advanced systems like Ronark make quests more flexible and user-friendly. One of the most important things developers must pay attention to is correctly writing and testing Lua code. This ensures that quest systems run smoothly on servers, allowing players to enjoy a better gaming experience.
 

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

Benzer konular

Geri
Üst Alt