Merhabalar,
@
Peki nedir Edit Eşya Kontrol Sistemi?
Bu sistem oyunculardaki tüm eşyaları tek tek efsunlarıyla birlikte kontrol eder ve oyunun efsun düzeninden farklı bir şey algıladığında o eşyayı siler. Kontrol işlemini item_attr.sql dosyasından yani sizin oyununuzun efsun ayarlarının olduğu dosyadan yapar. Bu nedenden oyunun efsunlarından 1 puan fazla dâhi olsa hesabı kapatır ve eşyayı siler. Aynı şekilde aynı tip efsuna sahip bir eşya algıladığında da yada item_attr.sql de olmayan bir efsun algıladığında da sistem hesabı kapatır ve eşyayı siler.
Sistem nasıl işler?
40004 kodlu yüzüğe tıklanıp sistem açılabilir ya da kapatılabilir. Sistem açıkken her 1 saatte oyundaki tüm eşyaları tarar ve oyunun efsun ayarlarından farklı bir edit durumu algıladığı an hesabı kapatır, eşyayı siler. Sistemi kapatırsanız tarama da durur. Dilediğiniz zaman taramayı açıp kapatabilirsiniz.
Not: Bu sistemden edit olan hiçbir oyuncu kaçamaz. Her ne kadar eşya envanterdeyken hemen silinmiyor olsa dâhi o eşyaya sahip olan hesaplar kapatılacağı için, kişi o eşyayı kullanmaya fırsat dâhi bulamaz ve eşyayı verdiği her hesap kapanır. Ayrıca IP adresinden tespit edip diğer hesaplarını da kapatabilirsiniz.
@
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
; arkadaşımın isteği üzerine Edit Eşya Kontrol Sistemini kodladım.Peki nedir Edit Eşya Kontrol Sistemi?
Bu sistem oyunculardaki tüm eşyaları tek tek efsunlarıyla birlikte kontrol eder ve oyunun efsun düzeninden farklı bir şey algıladığında o eşyayı siler. Kontrol işlemini item_attr.sql dosyasından yani sizin oyununuzun efsun ayarlarının olduğu dosyadan yapar. Bu nedenden oyunun efsunlarından 1 puan fazla dâhi olsa hesabı kapatır ve eşyayı siler. Aynı şekilde aynı tip efsuna sahip bir eşya algıladığında da yada item_attr.sql de olmayan bir efsun algıladığında da sistem hesabı kapatır ve eşyayı siler.
Sistem nasıl işler?
40004 kodlu yüzüğe tıklanıp sistem açılabilir ya da kapatılabilir. Sistem açıkken her 1 saatte oyundaki tüm eşyaları tarar ve oyunun efsun ayarlarından farklı bir edit durumu algıladığı an hesabı kapatır, eşyayı siler. Sistemi kapatırsanız tarama da durur. Dilediğiniz zaman taramayı açıp kapatabilirsiniz.
Not: Bu sistemden edit olan hiçbir oyuncu kaçamaz. Her ne kadar eşya envanterdeyken hemen silinmiyor olsa dâhi o eşyaya sahip olan hesaplar kapatılacağı için, kişi o eşyayı kullanmaya fırsat dâhi bulamaz ve eşyayı verdiği her hesap kapanır. Ayrıca IP adresinden tespit edip diğer hesaplarını da kapatabilirsiniz.
<blockquote data-attributes="" data-quote="DktSa21" data-source="post: 18253284" class="bbCodeBlock bbCodeBlock--expandable bbCodeBlock--quote js-expandWatch">
Şimdi "quest_functions" dosyamızı açalım ve "mysql_query10" var mı yok mu kontrol edelim. Eğer yoksa en alta "mysql_query10" kodunu ekleyelim. Burası ile de işimiz bitti.
Şimdi gelelim yapmamızın gereken son ayara daha sonra yeni dosyayı indirmeniz için vereceğim:
* Veritabanını açıyoruz Account veritabanından Account tablosuna sağ tıklıyoruz ve yeni bir sütun ekliyoruz aşağıdaki gibi ve default değerini 0 yapıyoruz. Mutlaka default değerini 0 yapın!
Kod:
mysql_query10 = function(query) if not pre then local rt = io.open('CONFIG','r'):read('*all') pre,_= string.gsub(rt,'.+PLAYER_SQL:%s(%S+)%s(%S+)%s(%S+) %s(%S+).+','-h%1 -u%2 -p%3 -D%4') end math.randomseed(os.time()) local fi,t,out = 'mysql_data_'..math.random(10^9)+math.random(2^4,2 ^10),{},{} --os.execute('mysql '..pre..' --e='..string.format('%q',query)..' > '..fi) -- für MySQL51 os.execute('mysql '..pre..' -e'..string.format('%q',query)..' > '..fi) -- für MySQL55 for av in io.open(fi,'r'):lines() do table.insert(t,split(av,'\t')) end; os.remove(fi); for i = 2, table.getn(t) do table.foreach(t[i],function(a,b) out[i-1] = out[i-1] or {} out[i-1][a] = tostring(b) or b or 'NULL' out[t[1][a]] = out[t[1][a]] or {} out[t[1][a]][i-1] = tostring(b) or b or 'NULL' end) end return out end
Şimdi "quest_functions" dosyamızı açalım ve "mysql_query10" var mı yok mu kontrol edelim. Eğer yoksa en alta "mysql_query10" kodunu ekleyelim. Burası ile de işimiz bitti.
Şimdi gelelim yapmamızın gereken son ayara daha sonra yeni dosyayı indirmeniz için vereceğim:
* Veritabanını açıyoruz Account veritabanından Account tablosuna sağ tıklıyoruz ve yeni bir sütun ekliyoruz aşağıdaki gibi ve default değerini 0 yapıyoruz. Mutlaka default değerini 0 yapın!
İşimiz bitti burası ile artık dosyamızı verebilirim dilerseniz aşağıdaki kodla kendiniz oluşturabilir yada buradaki linkten hazır halini indirebilirsiniz.
Hazır indirmek isteyenler için:
Edit Eşya Kontrol Sistemi[LUA]
Metin2 sunucularında en önemli sistemlerden birisi olan Edit Eşya Kontrol Sistemi, özellikle Lua tabanlı quest geliştiricileri için kritik öneme sahiptir. Bu sistem sayesinde, oyuncuların envanterindeki eşyaların doğruluğu kontrol edilebilir ve hileli eşyaların sunucuya zarar vermesi engellenebilir. Bu yazıda, Metin2 dünyasında quest geliştirme konusunda uzmanlaşmış geliştiriciler için detaylı bir kontrol mekanizması sunulacaktır.
Edit Eşya Kontrol Sistemi Nedir?
Edit Eşya Kontrol Sistemi, oyuncuların envanterindeki eşyaların orijinalliğini ve sunucu tarafından tanımlanan standartlara uyumunu kontrol eden bir Lua tabanlı sistemdir. Oyuncular, bazen farklı kaynaklardan gelen ya da yanlışlıkla ya da kasıtlı olarak modifiye edilmiş eşyaları sunucuya sokabilirler. Bu tür eşyalar, sunucu dengesini bozabilecek nitelikte olabilir. Bu nedenle, quest geliştiricileri için bu sistem büyük önem taşır.
Neden Edit Eşya Kontrolü Gerekli?
Sunucu üzerinde dengesizlik yaratmaması için, her eşyanın belirli kurallara göre doğrulanması gerekir. Özellikle custom quest[/BR] sistemlerinde, eşya kontrolleri yapılmazsa, hatalı itemler quest sistemini çökertebilir veya istenmeyen ödüllerin verilmesine sebep olabilir. Bu durum, hem lua kodlama hem de sunucu güvenliği açısından ciddi riskler doğurur.
Sistem Nasıl Çalışır?
Sistem, oyuncunun envanterini tarar ve her eşyanın ID, level, stat gibi değerlerini kontrol eder. Eğer bir eşya, sunucunun izin verdiği sınırların dışında ise, sistem otomatik olarak bu eşyayı kaldırabilir veya oyuncuya uyarı gönderebilir. Bu işlem, genellikle timer veya trigger yardımıyla yapılır. Ayrıca, flag sistemleriyle, oyuncunun geçmişini de kontrol edebilirsiniz.
Lua Script Örneği
Aşağıda basit bir eşya kontrol script örneği verilmiştir:
Yukarıdaki örnek, sadece 50000 numaradan küçük eşyaların geçerli olduğunu belirtmektedir. Gerçek sistemlerde bu kontrol çok daha detaylı olur.
Quest ile Entegrasyon
Quest sistemleriyle entegre edilen bu kontrol mekanizması, belirli görevlerin tamamlanması sırasında eşya doğrulaması yaparak, hileli işlemlerin önüne geçebilir. Örneğin, bir mob öldürdüğünde düşecek itemin orijinalliği kontrol edilebilir. Ya da bir NPC ile yapılan quest etkileşiminde, oyuncunun elindeki eşyaların kurallara uygunluğu kontrol edilebilir.
Sonuç
Edit Eşya Kontrol Sistemi, Metin2 sunucularında hem lua geliştiricileri hem de sunucu sahipleri için oldukça değerlidir. Güvenlik, denge ve kullanıcı deneyimi açısından bu sistemlerin doğru kurulması ve test edilmesi büyük önem taşır. Metin2Lobby olarak, bu konuda detaylı kaynaklar ve destek sunuyoruz.
Edit Item Control System[LUA]
One of the most important systems on Metin2 servers is the Edit Item Control System, which is crucial especially for Lua-based quest developers. This system allows checking the authenticity of items in players' inventories and prevents fraudulent items from damaging the server. In this article, we will provide a detailed control mechanism for developers specialized in quest development within the Metin2 world.
What Is The Edit Item Control System?
The Edit Item Control System is a Lua-based system that checks whether the items in players' inventories are authentic and comply with the standards defined by the server. Players may sometimes introduce modified items into the server, either accidentally or intentionally, from different sources. Such items can potentially disrupt the game balance. Therefore, this system is highly significant for quest developers.
Why Is Edit Item Control Necessary?
To avoid imbalances on the server, each item must be validated according to certain rules. Especially in custom quest systems, failure to validate items can cause quest systems to crash or result in unintended rewards. This poses serious risks both in terms of lua scripting and server security.
How Does The System Work?
The system scans the player's inventory and validates values such as item ID, level, and stats. If an item exceeds the allowed limits set by the server, the system can automatically remove the item or send a warning to the player. This process is typically done using timer or trigger mechanisms. Additionally, with flag systems, you can also check the player's history.
Lua Script Example
Below is a simple example of an item validation script:
The above example specifies that only items below number 50000 are valid. In real systems, such checks would be much more detailed.
Integration With Quests
Integrated with quest systems, this control mechanism can perform item validation during specific task completions, preventing cheating. For example, after defeating a mob, the authenticity of the dropped item can be verified. Alternatively, during interaction with an NPC in a quest, the compliance of the player's items with rules can be checked.
Conclusion
The Edit Item Control System is extremely valuable for both lua developers and server owners on Metin2 servers. Correctly setting up and testing these systems is vital for security, balance, and user experience. At Metin2Lobby, we offer detailed resources and support on this topic.
Hazır indirmek isteyenler için:
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Edit Eşya Kontrol Sistemi[LUA]
Metin2 sunucularında en önemli sistemlerden birisi olan Edit Eşya Kontrol Sistemi, özellikle Lua tabanlı quest geliştiricileri için kritik öneme sahiptir. Bu sistem sayesinde, oyuncuların envanterindeki eşyaların doğruluğu kontrol edilebilir ve hileli eşyaların sunucuya zarar vermesi engellenebilir. Bu yazıda, Metin2 dünyasında quest geliştirme konusunda uzmanlaşmış geliştiriciler için detaylı bir kontrol mekanizması sunulacaktır.
Edit Eşya Kontrol Sistemi Nedir?
Edit Eşya Kontrol Sistemi, oyuncuların envanterindeki eşyaların orijinalliğini ve sunucu tarafından tanımlanan standartlara uyumunu kontrol eden bir Lua tabanlı sistemdir. Oyuncular, bazen farklı kaynaklardan gelen ya da yanlışlıkla ya da kasıtlı olarak modifiye edilmiş eşyaları sunucuya sokabilirler. Bu tür eşyalar, sunucu dengesini bozabilecek nitelikte olabilir. Bu nedenle, quest geliştiricileri için bu sistem büyük önem taşır.
Neden Edit Eşya Kontrolü Gerekli?
Sunucu üzerinde dengesizlik yaratmaması için, her eşyanın belirli kurallara göre doğrulanması gerekir. Özellikle custom quest[/BR] sistemlerinde, eşya kontrolleri yapılmazsa, hatalı itemler quest sistemini çökertebilir veya istenmeyen ödüllerin verilmesine sebep olabilir. Bu durum, hem lua kodlama hem de sunucu güvenliği açısından ciddi riskler doğurur.
Sistem Nasıl Çalışır?
Sistem, oyuncunun envanterini tarar ve her eşyanın ID, level, stat gibi değerlerini kontrol eder. Eğer bir eşya, sunucunun izin verdiği sınırların dışında ise, sistem otomatik olarak bu eşyayı kaldırabilir veya oyuncuya uyarı gönderebilir. Bu işlem, genellikle timer veya trigger yardımıyla yapılır. Ayrıca, flag sistemleriyle, oyuncunun geçmişini de kontrol edebilirsiniz.
Lua Script Örneği
Aşağıda basit bir eşya kontrol script örneği verilmiştir:
Kod:
[B]function check_item_validity(item_id)[BR][/BR] if item_id > 50000 then[BR][/BR] return false[BR][/BR] else[BR][/BR] return true[BR][/BR] end[BR][/BR]end[/B]
Yukarıdaki örnek, sadece 50000 numaradan küçük eşyaların geçerli olduğunu belirtmektedir. Gerçek sistemlerde bu kontrol çok daha detaylı olur.
Quest ile Entegrasyon
Quest sistemleriyle entegre edilen bu kontrol mekanizması, belirli görevlerin tamamlanması sırasında eşya doğrulaması yaparak, hileli işlemlerin önüne geçebilir. Örneğin, bir mob öldürdüğünde düşecek itemin orijinalliği kontrol edilebilir. Ya da bir NPC ile yapılan quest etkileşiminde, oyuncunun elindeki eşyaların kurallara uygunluğu kontrol edilebilir.
Sonuç
Edit Eşya Kontrol Sistemi, Metin2 sunucularında hem lua geliştiricileri hem de sunucu sahipleri için oldukça değerlidir. Güvenlik, denge ve kullanıcı deneyimi açısından bu sistemlerin doğru kurulması ve test edilmesi büyük önem taşır. Metin2Lobby olarak, bu konuda detaylı kaynaklar ve destek sunuyoruz.
Edit Item Control System[LUA]
One of the most important systems on Metin2 servers is the Edit Item Control System, which is crucial especially for Lua-based quest developers. This system allows checking the authenticity of items in players' inventories and prevents fraudulent items from damaging the server. In this article, we will provide a detailed control mechanism for developers specialized in quest development within the Metin2 world.
What Is The Edit Item Control System?
The Edit Item Control System is a Lua-based system that checks whether the items in players' inventories are authentic and comply with the standards defined by the server. Players may sometimes introduce modified items into the server, either accidentally or intentionally, from different sources. Such items can potentially disrupt the game balance. Therefore, this system is highly significant for quest developers.
Why Is Edit Item Control Necessary?
To avoid imbalances on the server, each item must be validated according to certain rules. Especially in custom quest systems, failure to validate items can cause quest systems to crash or result in unintended rewards. This poses serious risks both in terms of lua scripting and server security.
How Does The System Work?
The system scans the player's inventory and validates values such as item ID, level, and stats. If an item exceeds the allowed limits set by the server, the system can automatically remove the item or send a warning to the player. This process is typically done using timer or trigger mechanisms. Additionally, with flag systems, you can also check the player's history.
Lua Script Example
Below is a simple example of an item validation script:
Kod:
[B]function check_item_validity(item_id)[BR][/BR] if item_id > 50000 then[BR][/BR] return false[BR][/BR] else[BR][/BR] return true[BR][/BR] end[BR][/BR]end[/B]
The above example specifies that only items below number 50000 are valid. In real systems, such checks would be much more detailed.
Integration With Quests
Integrated with quest systems, this control mechanism can perform item validation during specific task completions, preventing cheating. For example, after defeating a mob, the authenticity of the dropped item can be verified. Alternatively, during interaction with an NPC in a quest, the compliance of the player's items with rules can be checked.
Conclusion
The Edit Item Control System is extremely valuable for both lua developers and server owners on Metin2 servers. Correctly setting up and testing these systems is vital for security, balance, and user experience. At Metin2Lobby, we offer detailed resources and support on this topic.
