Herkese Merhaba
Edit Kontrol Sistemi Nedir ?
Bu sistem, bireysel takılar oyuncularla kontrol ve öğeleri farklı oyun efsun sipariş şey tüm nesneleri algılayan veya silin. Dosyadan item_attr.sql dosyadan Kontrol işlemleri böylece ayarı oyununuzu egzersiz yapar. Bu deha hesaplarını kapatır ve öğeleri silmek olsa oyunun takılar bir kez daha gol nedeni budur. Efsaneye aynı tip aynı şekilde olmayan bir efsunlu bir nesne tespit ya item_attr.sql zamanda sistem algılar kapatır ve hesap öğeleri siler zaman.
Nasıl Calışır ?
40004 kodlu halkalar açılmış veya tıklanan ve sistem kapatılabilir olması. her bir saat içinde size oyun ve hesabın ayarlarına tarafından algılanan farklı bir editör durumu kapatmak ise sistem öğeleri silmek, tüm öğeleri tarar. Eğer sisteme kapatırsanız da taramayı durdurur. Istediğiniz zaman açık veya kapalı gezen kapatabilirsiniz.
Not: Oyuncuların hiçbiri bu sistemin editörü kaçamıyorum. Mal rağmen, hemen kapalı olduğu için mal hesapları envanterdeyk deha silinmez rağmen, insanlar her hesap verilen aletleri ve mal kapatır deha kullanmak için fırsat bulamıyor. Ayrıca IP adresini tespit etmek için diğer hesapları kapatabilirsiniz.
Edit Kontrol Sistemi Nedir ?
Bu sistem, bireysel takılar oyuncularla kontrol ve öğeleri farklı oyun efsun sipariş şey tüm nesneleri algılayan veya silin. Dosyadan item_attr.sql dosyadan Kontrol işlemleri böylece ayarı oyununuzu egzersiz yapar. Bu deha hesaplarını kapatır ve öğeleri silmek olsa oyunun takılar bir kez daha gol nedeni budur. Efsaneye aynı tip aynı şekilde olmayan bir efsunlu bir nesne tespit ya item_attr.sql zamanda sistem algılar kapatır ve hesap öğeleri siler zaman.
Nasıl Calışır ?
40004 kodlu halkalar açılmış veya tıklanan ve sistem kapatılabilir olması. her bir saat içinde size oyun ve hesabın ayarlarına tarafından algılanan farklı bir editör durumu kapatmak ise sistem öğeleri silmek, tüm öğeleri tarar. Eğer sisteme kapatırsanız da taramayı durdurur. Istediğiniz zaman açık veya kapalı gezen kapatabilirsiniz.
Not: Oyuncuların hiçbiri bu sistemin editörü kaçamıyorum. Mal rağmen, hemen kapalı olduğu için mal hesapları envanterdeyk deha silinmez rağmen, insanlar her hesap verilen aletleri ve mal kapatır deha kullanmak için fırsat bulamıyor. Ayrıca IP adresini tespit etmek için diğer hesapları kapatabilirsiniz.
Kod:
quest kontrol begin
Kod:
state start begin when 40004.use with pc.is_gm() begin if game.get_event_flag("editKontrolSistemi") == 0 then kontrolSuresi = 10 -- Burası saniye cinsindendir. Yani 60*60 = 3600 saniye o da 1 saat yapar. 1 güne bir kontrol etsin istiyorsanız şu şekilde yapabilirsiniz: -- 60*60*24 -- > 60*60 = 3600 saniye yapar. Yani 1 saat. 3600*24 = 86400 saniye o da 24 saat yapar. Mantık bu. server_loop_timer("editKontrol",kontrolSuresi,get_server_timer_arg()) game.set_event_flag("editKontrolSistemi",1) syschat("Sistem: Otomatik Edit Silme Sistemi aktif edilmiştir.") elseif game.get_event_flag("editKontrolSistemi") == 1 then clear_server_timer("editKontrol",get_server_timer_arg()) game.set_event_flag("editKontrolSistemi",0) syschat("Sistem: Otomatik Edit Silme Sistemi kapatılmıştır.") end end when editKontrol.server_timer begin tumEsyalarKontrol = mysql_query10("select * from player.item") tumEsyalarKontrolSay = tonumber(table.getn(tumEsyalarKontrol)) notice_all("Toplam taranan eşya sayısı: "..tumEsyalarKontrolSay) if tumEsyalarKontrolSay < 1 then notice_all("Oyunda kayıtlı hiç eşya bulunamadi") return end editliOyuncular = {} editliEsyalar = {} editliEsyaKodlari = {} oyuncuEfsunTipiDizi = {} oyuncuEsyaEfsunDiziTipY = {} k=1 b=1 for i=1,tumEsyalarKontrolSay,1 do for m=13,25,2 do esyaEfsunTipveDeger = tonumber(tumEsyalarKontrol[i][m]) if esyaEfsunTipveDeger != 0 then esyaEfsunDeger = tonumber(tumEsyalarKontrol[i][m+1]) esyaEfsunTipi = kontrol.efsun(tonumber(tumEsyalarKontrol[i][m])) if esyaEfsunTipi == "BECERI_HASARI" then if esyaEfsunDeger > 30 then editliOyuncular[k] = tonumber(tumEsyalarKontrol.owner_id[i]) editliEsyalar[k] = tonumber(tumEsyalarKontrol.id[i]) editliEsyaKodlari[k] = tonumber(tumEsyalarKontrol.vnum[i]) k = k + 1 l = 1 break end elseif esyaEfsunTipi == "ORTALAMA_ZARAR" then if esyaEfsunDeger > 60 then editliOyuncular[k] = tonumber(tumEsyalarKontrol.owner_id[i]) editliEsyalar[k] = tonumber(tumEsyalarKontrol.id[i]) editliEsyaKodlari[k] = tonumber(tumEsyalarKontrol.vnum[i]) k = k + 1 l = 1 break end elseif esyaEfsunTipi == "B_H_KARSI_KOYMA" or esyaEfsunTipi == "O_Z_KARSI_KOYMA" then if esyaEfsunDeger > 0 then editliOyuncular[k] = tonumber(tumEsyalarKontrol.owner_id[i]) editliEsyalar[k] = tonumber(tumEsyalarKontrol.id[i]) editliEsyaKodlari[k] = tonumber(tumEsyalarKontrol.vnum[i]) k = k + 1 l = 1 break end else efsunTipiDegerKontrol = mysql_query10("select * from player.item_attr where apply='"..esyaEfsunTipi.."' ") if tonumber(table.getn(efsunTipiDegerKontrol)) > 0 then efsunTipiDeger = tonumber(efsunTipiDegerKontrol.lv5[1]) if esyaEfsunDeger > efsunTipiDeger then editliOyuncular[k] = tonumber(tumEsyalarKontrol.owner_id[i]) editliEsyalar[k] = tonumber(tumEsyalarKontrol.id[i]) editliEsyaKodlari[k] = tonumber(tumEsyalarKontrol.vnum[i]) k = k +1 l = 1 break end -- edit kontrol if endi else editliOyuncular[k] = tonumber(tumEsyalarKontrol.owner_id[i]) editliEsyalar[k] = tonumber(tumEsyalarKontrol.id[i]) editliEsyaKodlari[k] = tonumber(tumEsyalarKontrol.vnum[i]) k = k + 1 l = 1 break end end oyuncuEfsunTipiDizi[b] = tonumber(tumEsyalarKontrol[i][m]) b = b + 1 end-- efsun tip kontrol endi end -- efsun sütun kontrol endi if l == 1 then l = 0 break end oyuncuEfsunTipiDiziSay = tonumber(table.getn(oyuncuEfsunTipiDizi)) if oyuncuEfsunTipiDiziSay > 0 then for p=1,oyuncuEfsunTipiDiziSay,1 do m=0 oyuncuEsyaEfsunDiziTipY[p] = oyuncuEfsunTipiDizi[p] for c=1,oyuncuEfsunTipiDiziSay,1 do if oyuncuEsyaEfsunDiziTipY[p] == oyuncuEfsunTipiDizi[c] then m = m + 1 if m != 1 and oyuncuEsyaEfsunDiziTipY[p] != 0 then editliOyuncular[k] = tonumber(tumEsyalarKontrol.owner_id[i]) editliEsyalar[k] = tonumber(tumEsyalarKontrol.id[i]) editliEsyaKodlari[k] = tonumber(tumEsyalarKontrol.vnum[i]) k = k + 1 break end end end if m != 1 then break end end end end -- eşya kontrol endi editliOyuncularSay = tonumber(table.getn(editliOyuncular)) notice_all("Toplam edit sayısı: "..editliOyuncularSay) if editliOyuncularSay == 0 then notice_all("Editli oyuncu bulunamadı.") else for i=1,editliOyuncularSay,1 do oyuncuHesapKimlik = tonumber(editliOyuncular[i]) oyuncuEsyaKimlik = tonumber(editliEsyalar[i]) oyuncuEsyaKodu = tonumber(editliEsyaKodlari[i]) oyuncuBilgiCek = mysql_query10("select * from player.player where account_id='"..oyuncuHesapKimlik.."' ") if tonumber(table.getn(oyuncuBilgiCek)) > 0 then oyuncuBilgiAd = tostring(oyuncuBilgiCek.name[1]) oyuncununHesabiKapat = mysql_query10("UPDATE account.account SET status='BLOCK' where id='"..oyuncuHesapKimlik.."' ") oyuncununHesabiKapatD = mysql_query10("UPDATE account.account SET edit_ban='1' where id='"..oyuncuHesapKimlik.."' ") oyuncununEsyasiniSil = mysql_query10("DELETE FROM player.item where owner_id='"..oyuncuHesapKimlik.."' and id='"..oyuncuEsyaKimlik.."' ") notice_all(oyuncuBilgiAd.." isimli oyuncuda edit bulunmuş, hesabı kapatılmış ve eşyası silinmiştir. Eşya Kodu: "..oyuncuEsyaKodu) else oyuncuBilgiCek = mysql_query10("select * from player.player where id='"..oyuncuHesapKimlik.."' ") oyuncuHesap_id = tonumber(oyuncuBilgiCek.account_id[1]) oyuncuBilgiAd = tostring(oyuncuBilgiCek.name[1]) oyuncununHesabiKapat = mysql_query10("UPDATE account.account SET status='BLOCK' where id='"..oyuncuHesap_id.."' ") oyuncununHesabiKapatD = mysql_query10("UPDATE account.account SET edit_ban='1' where id='"..oyuncuHesap_id.."' ") oyuncununEsyasiniSil = mysql_query10("DELETE FROM player.item where owner_id='"..oyuncuHesapKimlik.."' and id='"..oyuncuEsyaKimlik.."' ") notice_all(oyuncuBilgiAd.." isimli oyuncuda edit bulunmuş, hesabı kapatılmış ve eşyası silinmiştir. Eşya Kodu: "..oyuncuEsyaKodu) end end end end when 40004.use with not pc.is_gm() begin syschat("Sistem: Bu yüzük oyunculara kapalıdır. Sadece yöneticiler kullanabilir.") end function efsun(efsun_kodu) efsun = { --[0] = {"EfsunYok"} [1] = {"MAX_HP"}, [2] = {"MAX_SP"}, [3] = {"INT"}, [4] = {"CON"}, [5] = {"STR"}, [6] = {"DEX"}, [7] = {"ATT_SPEED"}, [8] = {"MOV_SPEED"}, [9] = {"CAST_SPEED"}, [10] = {"HP_REGEN"}, [11] = {"SP_REGEN"}, [12] = {"POISON_PCT"}, [13] = {"STUN_PCT"}, [14] = {"SLOW_PCT"}, [15] = {"CRITICAL_PCT"}, [16] = {"PENETRATE_PCT"}, [17] = {"ATTBONUS_HUMAN"}, [18] = {"ATTBONUS_ANIMAL"}, [19] = {"ATTBONUS_ORC"}, [20] = {"ATTBONUS_MILGYO"}, [21] = {"ATTBONUS_UNDEAD"}, [22] = {"ATTBONUS_DEVIL"}, [23] = {"STEAL_HP"}, [24] = {"STEAL_SP"}, [25] = {"MANA_BURN_PCT"}, [26] = {" "}, [27] = {"BLOCK"}, [28] = {"DODGE"}, [29] = {"RESIST_SWORD"}, [30] = {"RESIST_TWOHAND"}, [31] = {"RESIST_DAGGER"}, [32] = {"RESIST_BELL"}, [33] = {"RESIST_ELEC"}, [34] = {"RESIST_BOW"}, [35] = {"RESIST_FIRE"}, [36] = {" "}, [37] = {"RESIST_MAGIC"}, [38] = {"RESIST_WIND"}, [39] = {"REFLECT_MELEE"}, [40] = {"CURSE_PCT"}, [41] = {"POISON_REDUCE"}, [42] = {"KILL_SP_RECOVER"}, [43] = {"EXP_DOUBLE_BONUS"}, [44] = {"GOLD_DOUBLE_BONUS"}, [45] = {"ITEM_DROP_BONUS"}, [46] = {"POTION_BONUS"}, [47] = {"KILL_HP_RECOVER"}, [48] = {"IMMUNE_STUN"}, [49] = {"IMMUNE_SLOW"}, [50] = {"IMMUNE_FALL"}, [51] = {" "}, [52] = {"BOW_DISTANCE"}, [53] = {"ATT_GRADE_BONUS"}, [54] = {"DEF_GRADE_BONUS"}, [55] = {"MAGIC_ATT_GRADE"}, [56] = {"MAGIC_DEF_GRADE"}, [57] = {" "}, [58] = {"MAX_STAMINA"}, [59] = {"ATT_BONUS_TO_WARRIOR"}, [60] = {"ATT_BONUS_TO_ASSASSIN"}, [61] = {"ATT_BONUS_TO_SURA"}, [62] = {"ATT_BONUS_TO_SHAMAN"}, [63] = {"ATTBONUS_MONSTER"}, [64] = {"ATT_GRADE_BONUS"}, [65] = {"DEF_GRADE_BONUS"}, [66] = {" "}, [67] = {" "}, [68] = {" "}, [69] = {" "}, [70] = {" "}, [71] = {"BECERI_HASARI"}, [72] = {"ORTALAMA_ZARAR"}, [73] = {"B_H_KARSI_KOYMA"}, [74] = {"O_Z_KARSI_KOYMA"}, [75] = {" "}, [76] = {" "}, [77] = {" "}, [78] = {"RESIST_WARRIOR"}, [79] = {"RESIST_ASSASSIN"}, [80] = {"RESIST_SURA"}, [81] = {"RESIST_SHAMAN"} } return efsun[efsun_kodu][1] end end end
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Metin2 - Edit Kontrol Sistemi [LUA]
Metin2 sunucularında gelişmiş görev sistemleri oluşturmak isteyen geliştiriciler için Lua tabanlı Edit Kontrol Sistemi, büyük önem taşımaktadır. Bu sistem, quest dosyalarında yapılan düzenlemelerin kontrol edilmesini ve istenmeyen değişikliklerin engellenmesini sağlar. Özellikle Metin2 geliştiricileri için önemli olan quest güvenliği, bu sistem sayesinde daha da artırılır.
Lua Quest Sistemine Genel Bakış
Metin2'de quest sistemleri, oyuncuların oyun içinde belirli görevleri yaparak ödüller kazanmasını sağlayan yapılardır. Bu görevler Lua dili ile yazılmaktadır. Lua, güçlü bir betik dili olup, Metin2 gibi oyun motorlarında sıklıkla kullanılmaktadır. Quest sistemleri, oyuncu etkileşimlerini, NPC davranışlarını, görev zincirlerini ve ödülleri yönetmek için idealdir.
Edit Kontrol Sistemi Nedir?
Edit Kontrol Sistemi, Metin2 sunucularında quest dosyalarında yapılan değişiklikleri izlemek ve bunları doğrulamak için kullanılan bir yöntemdir. Bu sistem sayesinde, sunucuya yüklenen quest dosyalarının orijinal yapıdan sapıp sapmadığı kontrol edilir. Eğer bir.quest dosyasında izinsiz bir değişiklik varsa, bu sistem tarafından tespit edilir ve sunucu bu questin çalışmasına izin vermeyebilir.
Neden Edit Kontrol Gereklidir?
Gelişmiş Metin2 sunucularında, özellikle özel sunucularda, quest sistemleri sunucu deneyimini büyük ölçüde etkiler. Ancak bazı geliştiriciler veya yetkililer, quest dosyalarında izinsiz değişiklikler yapabilir. Bu durum, sunucunun dengesini bozabilir ve güvenlik açıklarına neden olabilir. Edit Kontrol Sistemi, bu tür riskleri en aza indirger.
Edit Kontrolün Uygulanması
Edit Kontrol sistemi genellikle sunucu tarafında bir hash doğrulaması ile yapılır. Her.quest dosyası için benzersiz bir hash değeri oluşturulur. Sunucu başlatıldığında, bu değerler karşılaştırılır. Farklılık tespit edildiğinde, sistem uyarı verir veya questin çalışmasını engeller. Bu sayede.quest dosyalarının orijinalliği korunur.
Quest Hata Ayıklama ve Kontrol
Quest geliştirme sürecinde, özellikle büyük sistemlerde hatalar oluşabilir. Edit Kontrol Sistemi, hata ayıklama süreçlerini kolaylaştırır. Çünkü sistem, her.quest dosyasının orijinalliğini takip ettiği için, hatanın kaynağını daha hızlı bulmak mümkündür. Ayrıca, geliştiricilerin yanlışlıkla.quest dosyasında değişiklik yapması önlenir.
Edit Kontrol ile Güvenlik Artışı[/COORD]
Metin2 sunucularında güvenlik, her zaman önceliklidir. Edit Kontrol Sistemi, quest dosyalarının izinsiz değiştirilmesini engelleyerek, sunucu güvenliğini artırır. Bu sayede, kötü niyetli kullanıcılar tarafından yüklenen zararlı.quest dosyaları tespit edilir ve çalıştırılmaz.
Sonuç
Metin2 Edit Kontrol Sistemi, özellikle gelişmiş sunucularda önemli bir rol oynar. Quest sistemlerinin güvenli ve doğru çalışması için bu kontrol mekanizmasının kullanılması önerilir. Geliştiriciler, quest sistemlerini daha verimli ve güvenli hale getirmek için bu sistemi mutlaka değerlendirmelidir.
Metin2 - Edit Control System [LUA]
For developers who want to create advanced quest systems on Metin2 servers, the Lua-based Edit Control System holds great importance. This system allows monitoring of edits made to quest files and prevents unauthorized modifications. Especially for Metin2 developers, the security of quests is significantly enhanced by this system.
Overview of the Lua Quest System
In Metin2, quest systems are structures that allow players to earn rewards by completing certain tasks in the game. These tasks are written in the Lua language. Lua is a powerful scripting language frequently used in game engines like Metin2. Quest systems are ideal for managing player interactions, NPC behaviors, quest chains, and rewards.
What is the Edit Control System?
The Edit Control System is a method used to monitor and validate changes made to quest files on Metin2 servers. With this system, deviations from the original structure in quest files uploaded to the server can be detected. If there is an unauthorized change in a .quest file, it can be identified by this system and the server may prevent the quest from running.
Why is Edit Control Necessary?
On advanced Metin2 servers, especially private ones, quest systems greatly influence the gameplay experience. However, some developers or administrators might make unauthorized changes to quest files. Such actions can disrupt the balance of the server and lead to security vulnerabilities. The Edit Control System minimizes these risks.
Implementation of Edit Control
The Edit Control system typically operates via a hash validation on the server side. A unique hash value is generated for each .quest file. When the server starts up, these values are compared. If any discrepancies are detected, the system issues an alert or blocks the quest from running. In this way, the authenticity of .quest files is preserved.
Quest Debugging and Control
During the quest development process, especially in large systems, errors may occur. The Edit Control System simplifies debugging processes. Since the system tracks the originality of each .quest file, identifying the source of an error becomes faster. Moreover, it prevents developers from accidentally modifying .quest files.
Increased Security with Edit Control
Security is always a priority in Metin2 servers. The Edit Control System increases server security by preventing unauthorized alterations to quest files. Thus, malicious .quest files uploaded by bad actors are detected and not executed.
Conclusion
The Metin2 Edit Control System plays a vital role in advanced servers. It is recommended to use this control mechanism to ensure quest systems run securely and correctly. Developers should definitely consider this system to make their quest systems more efficient and secure.
