Bot Kontrol Questi

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

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Zamanında irispanel için kodlamıştım ama şu an bakıyorum hiç hoşuma gitmeyen şekilde yapmışım ve dosyalarda gördüm. Belki birinin işine yarar diye paylaşıyorum.

🔎 Çalışma Mantığı​

  1. <li data-xf-list-type="ol">Başlangıç (login):
    • <li data-xf-list-type="ul">Oyuncu oyuna girince bot_gonder isimli bir sayaç başlatılıyor. <li data-xf-list-type="ul">Bu sayaç belli bir süre sonra bot kontrolünü tetikliyor.
    <li data-xf-list-type="ol">Yeni state (newstate):
    • <li data-xf-list-type="ul">Oyuncu logout/login yaparsa veya bağlantısı koparsa, guvendeyim kontrolü devreye giriyor. <li data-xf-list-type="ul">Eğer oyuncu belirli bir haritadaysa (örneğin index 256), bot doğrulaması yapılamıyor. <li data-xf-list-type="ul">Normal haritada ise “Bot doğrulanmamış” mesajı çıkıyor ve 10 saniyelik süre başlatılıyor.
    <li data-xf-list-type="ol">Kill event (npc öldürme):
    • <li data-xf-list-type="ul">Oyuncu bir yaratık öldürdüğünde sistem kontrol ediyor:
      • <li data-xf-list-type="ul">Eğer bot_gonder süresi dolmuşsa, oyuncuya “BOT KONTROL GELDİ” mesajı çıkıyor. <li data-xf-list-type="ul">60 saniyelik bir süre veriliyor ve oyuncunun yüzük kullanarak doğrulama yapması gerekiyor.
    <li data-xf-list-type="ol">Timerlar (beklebot, bekle2):
    • <li data-xf-list-type="ul">Eğer oyuncu doğrulama yapmazsa, sistem beklebot ve bekle2 timerlarını çalıştırıyor. <li data-xf-list-type="ul">Sonuç: “Hapis cezası aldınız” mesajı çıkıyor ve oyuncu cezalandırılıyor.
    <li data-xf-list-type="ol">Yüzük kullanımı (40003.use):
    • <li data-xf-list-type="ul">Oyuncu doğrulama yüzüğünü kullandığında şifre ekranı açılıyor. <li data-xf-list-type="ul">Sistem rastgele 6 şifre üretiyor (sifre1–sifre6). <li data-xf-list-type="ul">Bunlardan biri doğru şifre, diğerleri sahte. <li data-xf-list-type="ul">Oyuncuya renkli ipuçlarıyla doğru şifreyi seçmesi söyleniyor. <li data-xf-list-type="ul">Eğer doğru şifreyi seçerse → “Doğru şifreyi seçtin!” mesajı çıkıyor ve guvendeyim sıfırlanıyor. <li data-xf-list-type="ul">Yanlış seçerse → “Şifre hatalı, hapis cezası alıyorsunuz” mesajı çıkıyor.
Kod:
state start begin         when login begin         pc.setqf("bot_gonder", get_time() + 60*1*1)-----oyuncu bot şifre gelmesi için gerekli süre         set_state("newstate")         end end     state newstate begin         when logout or disconnect or login with  pc.getqf("guvendeyim") == 1 begin         if pc.get_map_index() == 256 then             syschat("Burada bot doğrulaması yapamazsın.")             else             syschat("Bot Doğrulanmamış")             syschat("Şifre girmek için 10sn. Süren başladı!")             --pc.tagver(359,60)             timer("beklebot",10)         end         end     when kill with not npc.is_pc() begin     local botSorguSure2 = pc.getqf("bot_suregir")     local botSorguSure = pc.getf("grv_panel_04","bot_gonder")     local botDogruladi = pc.getqf("guvendeyim")     --pc.setqf("bot_gonder", get_time() +1)------bot tag sonrasında yüzük şifre için verilen süre     if botSorguSure != 0 and get_time() &gt; botSorguSure then         chat("BOT KONTROL GELDİ. YÜZÜĞÜ KULLAN")         chat("YÜZÜK İÇİN 60SN. SÜRE VAR.")         --pc.tagver(359,60)         pc.setqf("guvendeyim",1)         timer("beklebot",1)     end---botSorguSure end--when kill     when beklebot.timer with pc.getqf("guvendeyim") == 1 begin         timer("bekle2",10)     end     when bekle2.timer with pc.getqf("guvendeyim") == 1 begin         syschat("Hapis cezası aldınız.")         syschat("Lütfen doğrulamayı yaptıktan sonra oynamaya devam ediniz.")         --pc.hapiset(15)         --pc.tagver(359,0)     end     when 40003.use with pc.getqf("guvendeyim") == 0 begin         syschat("Bot doğrulamasını zaten yaptın. Neyin peşindesin ?")     end     when 40003.use with pc.getqf("guvendeyim") == 1 begin         if pc.get_map_index() == 256 then         syschat("Bu haritada bot doğrulaması yasaklıdır.")         else         local kontrolSure = pc.getqf("bot_control")         pc.setqf("bot_control", get_time()+60) ----- şifre giriş süresi         say_size(300, 350)         say_title("Bot Kontrol:")         local sifre1 = number(1000,99999)         local sifre2 = number(1000,99999)         local sifre3 = number(1000,99999)         local sifre4 = number(1000,99999)         local sifre5 = number(1000,99999)         local sifre6 = number(1000,99999)         local kontrolsifre = number(2,7)         local sifre         if kontrolsifre == 2 then             sifre = sifre1         elseif kontrolsifre == 3 then             sifre = sifre2         elseif kontrolsifre == 4 then             sifre = sifre3         elseif kontrolsifre == 5 then             sifre = sifre4         elseif kontrolsifre == 6 then             sifre = sifre5         elseif kontrolsifre == 7 then             sifre = sifre6         end         local fakesifre1 = number(1000,99999)         local fakesifre2 = number(1000,99999)         local fakesifre3 = number(1000,99999)         local fakesifre4 = number(1000,99999)         local fakesifre5 = number(1000,99999)         local fakesifre6 = number(1000,99999)         local kontrolfakesifre = number(2,7)         local fakesifre         if kontrolfakesifre == 2 then             fakesifre = fakesifre1         elseif kontrolfakesifre == 3 then             fakesifre = fakesifre2         elseif kontrolfakesifre == 4 then             fakesifre = fakesifre3         elseif kontrolfakesifre == 5 then             fakesifre = fakesifre4         elseif kontrolfakesifre == 6 then             fakesifre = fakesifre5         elseif kontrolfakesifre == 7 then             fakesifre = fakesifre6         end                  local secim = math.random(1,4) --- random şifre sorgu         if secim == 1 then ----random1             say("|cff91e40f Yeşil |cffffffff renk şifreyi seç!")             say("Doğru olan şifre: |cff7eed1a"..sifre.." ")             say("Doğru olan şifre: |cff1aedd3"..fakesifre.."1 ")             say("Doğru olan şifre: |cff2807fd"..fakesifre.."3 ")             say("|cffffffffŞifre süre:|cffec882760Sn.|cffffffff")             local sifre = select("Vazgeç ",sifre1,sifre2,sifre3,sifre4,sifre5,sifre6)         if get_time() &gt; pc.getqf("bot_control") then             say_title("Bot Kontrol:")                          say("Sana doğru şifreyi seçmen için")             say("20 saniye vermiştim!")             pc.setqf("bot_control",get_time()+0)             return         end         if sifre == kontrolsifre then             say_title("Bot Kontrol:")             say("|cff1ec908Doğru şifreyi seçtin!")             pc.setqf("guvendeyim",0)             pc.setqf("bot_gonder",get_time() +60)             --pc.tagver(359,0)             say("")         else             say_title("Bot Kontrol:")             say("|cffff0000Şifre Hatalı. Hapis cezası alıyorsunuz.")             --pc.tagver(359,0)             --pc.hapiset(10)             pc.setqf("guvendeyim",1)         end         elseif secim == 2 then ----random2             say("|cfffd07bd Pembe|cffffffffrenk şifreyi seç!")             say("Doğru olan şifre: |cffffffff"..fakesifre.."3 ")             say("Doğru olan şifre: |cff1aedd3"..fakesifre.."1 ")             say("Doğru olan şifre: |cfffd07bd"..sifre.." ")             say("2.deneme")             say("|cffffffffŞifre süre:|cffec882760Sn.|cffffffff")             local sifre = select("Vazgeç ",sifre1,sifre2,sifre3,sifre4,sifre5,sifre6)         if get_time() &gt; pc.getqf("bot_control") then             say_title("Bot Kontrol:")             say("Sana doğru şifreyi seçmen için")             say("20 saniye vermiştim!")             pc.setqf("bot_control",get_time()+0)             pc.setqf("guvendeyim",1)             --pc.hapiset(30)             --pc.tagver(359,0)             return         end         if sifre == kontrolsifre then             say_title("Bot Kontrol:")                          say("|cff1ec908Doğru şifreyi seçtin!")             --pc.tagver(359,0)             pc.setqf("guvendeyim",0)             pc.setqf("bot_gonder",get_time() +60)             say("")         else             say_title("Bot Kontrol:")             say("|cffff0000Şifre Hatalı. Hapis cezası alıyorsunuz.")             pc.setqf("guvendeyim",1)             --pc.tagver(359,0)             --pc.hapiset(10)         end                 elseif secim == 3 then ----random3             say("|cfffd07bd Pembe|cffffffffrenk şifreyi seç!")             say("Doğru olan şifre: |cffffffff"..fakesifre.."3 ")             say("Doğru olan şifre: |cff1aedd3"..fakesifre.."1 ")             say("Doğru olan şifre: |cfffd07bd"..sifre.." ")             say("3.deneme")             say("|cffffffffŞifre süre:|cffec882760Sn.|cffffffff")             local sifre = select("Vazgeç ",sifre1,sifre2,sifre3,sifre4,sifre5,sifre6)         if get_time() &gt; pc.getqf("bot_control") then             say_title("Bot Kontrol:")                          say("Sana doğru şifreyi seçmen için")             say("20 saniye vermiştim!")             pc.setqf("bot_control",get_time()+0)             pc.setqf("guvendeyim",1)             --pc.hapiset(30)             --pc.tagver(359,0)             return         end         if sifre == kontrolsifre then             say_title("Bot Kontrol:")                          say("|cff1ec908Doğru şifreyi seçtin!")             --pc.tagver(359,0)             pc.setqf("guvendeyim",0)             pc.setqf("bot_gonder",get_time() +60)             say("")         else             say_title("Bot Kontrol:")             say("|cffff0000Şifre Hatalı. Hapis cezası alıyorsunuz.")             pc.setqf("guvendeyim",1)             --pc.tagver(359,0)             --pc.hapiset(10)         end                 elseif secim == 4 then  ----random4             say("|cfffd07bd Pembe|cffffffffrenk şifreyi seç!")             say("Doğru olan şifre: |cffffffff"..fakesifre.."3 ")             say("Doğru olan şifre: |cff1aedd3"..fakesifre.."1 ")             say("Doğru olan şifre: |cfffd07bd"..sifre.." ")             say("234.deneme")             say("|cffffffffŞifre süre:|cffec882760Sn.|cffffffff")             local sifre = select("Vazgeç ",sifre1,sifre2,sifre3,sifre4,sifre5,sifre6)         if get_time() &gt; pc.getqf("bot_control") then             say_title("Bot Kontrol:")                          say("Sana doğru şifreyi seçmen için")             say("20 saniye vermiştim!")             pc.setqf("bot_control",get_time()+0)             pc.setqf("guvendeyim",1)             --pc.hapiset(30)             --pc.tagver(359,0)             return         end         if sifre == kontrolsifre then             say_title("Bot Kontrol:")                          say("|cff1ec908Doğru şifreyi seçtin!")             --pc.tagver(359,0)             pc.setqf("guvendeyim",0)             pc.setqf("bot_gonder",get_time() +60)             say("")         else             say_title("Bot Kontrol:")             say("|cffff0000Şifre Hatalı. Hapis cezası alıyorsunuz.")             pc.setqf("guvendeyim",1)             --pc.tagver(359,0)             --pc.hapiset(10)         end         end         end     end end

Bot Kontrol Questi Nedir? Metin2'de Görev Sistemine Yeni Bir Soluk

Metin2, MMORPG türünde oynanabilen ve uzun yıllardır aktif olan bir oyundur. Oyuncuların sürekli olarak gelişim gösterdiği, görevlerin (quest) önemli bir yere sahip olduğu bu evrende, bot kontrolü gibi gelişmiş sistemlerin entegrasyonu giderek artmaktadır. Özellikle sunucuların kendi özelleştirilmiş quest sistemleri ile donatılması, oyun deneyimini daha da zenginleştiriyor. Bu yazıda özellikle Bot Kontrol Questi adı verilen özel bir.quest yapısından bahsedeceğiz.

Metin2 Quest Sistemi ve Lua Script

Metin2'de quest sistemleri genellikle Lua dili kullanılarak yazılır. Quest dosyaları (.lua uzantılıdır) ve server-side çalışır. Quest yazımı, geliştirme süreci oldukça teknik bilgi gerektirir. Metin2 quest lua dosyaları, oyuncunun belirli eylemleri gerçekleştirmesi durumunda tetiklenir. Bu tetiklemeler (trigger), görevin başlatılmasını ya da bitirilmesini sağlar.

Quest Başlatma ve Bitirme Süreçleri

Her questin bir başlangıç (quest begin) ve bitiş (quest end) noktası vardır. Bu süreçte oyuncu, NPC ile etkileşim kurabilir, belirli mobları öldürebilir veya eşyalar toplayabilir. Quest sistemleri, zamanlayıcı (timer), bayrak (flag), durum (state) gibi yapılarla desteklenir. Bu yapılar, questin doğru akışını ve kontrolünü sağlar.

Bot Kontrol Questi Ne İşe Yarar?

Bot Kontrol Questi, oyuncuların oyun içinde bot kullanımı yaparken dikkatli olmalarını sağlayan, ancak aynı zamanda botların belirli görevleri otomatik yerine getirmesine izin veren özel bir quest türüdür. Bu quest sayesinde sunucu yöneticileri, bot kullanımının denetimini sağlarken, kullanıcılar da bazı görevleri daha kolay tamamlayabilirler.

Ancak bu sistem, yanlış kullanıldığında sunucu dengesini bozabilecek risk taşır. Bu nedenle, quest debug ve quest hata ayıklama işlemleri önemlidir. Geliştiriciler, quest dosyasında meydana gelen hataları tespit edip düzeltebilirler.

Görev Zinciri ve Daily Quest Kavramları

Metin2'de questler bazen birbirine bağlı olabilir. Bu tür görevlere quest chain adı verilir. Bir görevin bitimi diğer görevin başlamasını tetikleyebilir. Aynı zamanda günlük görevler (daily quest) ile oyuncular, her gün belirli ödüller kazanabilirler. Ödüller, item (quest item), EXP veya para şeklinde olabilir.

NPC ve Mob Entegrasyonu

Quest sistemleri, NPC'ler ve moblar ile yoğun şekilde entegre çalışır. Quest NPC[/BR] görevin başlamasını sağlarken, quest mob[/BR] ise görevin tamamlanması için öldürülmesi gereken düşmandır. Bu yapılar, oyuncuların oyun içindeki etkileşimini artırır.

Özel ve Geliştirici Seviyesi Questler

Metin2 sunucuları, custom quest veya özel quest adı verilen sistemlerle kendilerini farklılaştırabilir. Bu questler, sadece o sunucuya özgüdür ve oyuncuların ilgisini çekecek niteliktedir. Metin2dev quest veya martysama quest gibi sistemler, profesyonel geliştiriciler tarafından yazılmış örneklerdir.

Sonuç

Bot Kontrol Questi, Metin2 dünyasında hem eğlence hem de güvenlik açısından önemli bir rol üstlenmektedir. Doğru tasarlandığında, oyuncuların oyun içi deneyimini artırırken, sunucu dengesini koruyabilir. Quest sistemleri, Lua bilgisiyle geliştirilebilecek güçlü yapılardır. Bu nedenle, quest yazma ve quest edit konularında bilgi sahibi olmak, Metin2 sunucusu yöneticileri için büyük avantaj sağlar.


What is Bot Control Quest? A New Breath for the Mission System in Metin2

Metin2 is a MMORPG game that has been active for many years. In this world, where players continuously develop and missions (quests) hold a significant place, the integration of advanced systems such as bot control is increasingly common. Especially with servers being equipped with their own customized quest systems, the gaming experience becomes even richer. In this article, we will specifically talk about a special type of quest called Bot Control Quest.

Metin2 Quest System and Lua Script

In Metin2, quest systems are generally written using the Lua language. Quest files (.lua extension) run on the server side. Writing quests requires quite technical knowledge. Metin2 quest lua files are triggered when the player performs specific actions. These triggers initiate or complete the quest.

Starting and Ending Quest Processes

Every quest has a start (quest begin) and end (quest end) point. During this process, the player may interact with NPCs, kill certain mobs, or collect items. Quest systems are supported by structures like timers, flags, and states. These structures ensure correct flow and control of the quest.

What Does Bot Control Quest Do?

Bot Control Quest is a special type of quest that allows players to use bots more carefully within the game, while also permitting bots to automatically perform certain tasks. This quest helps server administrators maintain control over bot usage, while allowing players to complete certain missions more easily.

However, if misused, this system can risk disturbing the server balance. Therefore, quest debug and quest error detection processes are important. Developers can detect and fix errors in the quest file.

Quest Chain and Daily Quest Concepts

In Metin2, quests may sometimes be interconnected. Such quests are called quest chains. The completion of one quest may trigger the start of another. Additionally, with daily quests (daily quest), players can earn rewards every day. Rewards can come in the form of items (quest item), EXP, or money.

NPC and Mob Integration

Quest systems work heavily integrated with NPCs and mobs. While quest NPCs initiate the quest, quest mobs must be killed to complete the quest. These structures enhance player interaction within the game.

Custom and Developer-Level Quests

Metin2 servers can differentiate themselves with systems named custom quest or special quest. These quests are unique to that server and have the quality to attract players. Systems like Metin2dev quest or martysama quest are examples written by professional developers.

Conclusion

Bot Control Quest plays an important role in the world of Metin2 both in terms of entertainment and security. When designed correctly, it can increase the in-game experience of players while maintaining server balance. Quest systems are powerful structures that can be developed with Lua knowledge. Therefore, having knowledge about writing quests and editing quests offers great advantages for Metin2 server administrators.
 

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

Benzer konular

Geri
Üst Alt