السلام عليكم ورحمة الله وبركاته
اليوم سأعد لكم شرح عن
كيفية ترقيع ثغرة سوق المحاربين
لكي ينعم سيرفركم بالهدوء التام واللعب الرزين والمتكافئ بين كافة اللاعبين بدون استثناء
أولاً : شرح الثغرة .
سبب الثغرة هو أن صندوق النص اللي يتم وضع عدد الجنود فيه يقبل اضافة الحروف , وهذه الثغرة استغلها الكثيرون بوضع ارقام باستخدام النظام السادس عشر ( نظام عددي ) .
ومن حسن طالعهم أن السكربت يفهم النظام السادس عشر .
وسبب استخدام ذهب قليل لتطبيق الثغرة , باعتقادي ان كود خصم الذهب لا يفهم سوى الارقام التي تسبق الحروف , وطالما ان الارقام التي تسبق الحروف هي إما 1 أو 2 فإن الذهب المخصوم لن يزيد عن 2 ذهب
ثانياً : الاكواد المستخدمة في استغلال الثغرة
لتدريب واحد تلريون
1e12
لتدريب 2 تلريون
2e13
ويمكن استخدام أي أرقام ( بشرط ان تكون مكون من 4 أرقام و ثاني رقم هو حرف e )
ثالثاً: الفكرة العامة لترقيع الثغرة
الفكرة العامة تتلخص في الأفكار التالية
إما .. تعديل شروط سوق المحاربين بحيث يتم جعل صندوق النص لا يقبل حروف .
أو .. إلغاء عمل سوق المحاربين بالمرة
ولكون ملفات اللعبة مشفرة
سنلجأ لتطبيق الفكرة الثانية ..
رابعاً: كيفية إلغاء عمل سوق المحاربين
بعمل شروط بناء غير قابلة للتحقيق
او إلغاء عمل سوق المحاربين إما بحذف اكواد سوق المحاربين كلها
الطريقة الأولى
من المعروف أن شروط بناء سوق المحاربين هي ( البيت الرئيسي مستوى 10 , الاسطبل مستوى 5 )
لإلغاء السوق نعدل الشرو ط ونخليها مستحيلة كجعل الشروط ( بيت رئيسي مستوى 21 أو 22 المهم + 20 أو الاسطبل مستوى 21 أو 22 ... الخ )
خامساً : تطبيق الفكرة
افتح ملف الميتاداتا metadata.php الموجود داخل مجلد app من مجلدات اللعبة
يفضل استخدام محرر php لتسهيل البحث وعرض الاكواد بصورة سليمة
ابحث عن التالي
ستجده بالتحديد في السطر 14237 كما في الصورة
من هذه النقطة تظهر أكواد بناء سوق المحاربين
لاحظ في الصورة

اللي داخل الدائرة السوادء مكتوب التالي
أي ان من شروط البناء هو أن يكون المبنى رقم 20 ( اللي هو الاسطبل ) عند مستوى 5
واللي داخل الدائرة الزرقاء
أي أن من شروط البناء هو أن يكون المبنى اللي رقمه 15 ( اللي هو المبنى الرئيسي ) عند مستوى 10
الحين وصلت الفكرة أكيد
نقوم بتعديل القيمة سواء للاسطبل أو للمبنى الرئيسي أو لكلاهما إلى الرقم 21 أو أكثر
لكن !!
لماذا الرقم 21 أو أكثر؟
الجواب بكل بساطة
لا احد يستطيع بناء أي مبنى إلى مستوى أكثر من مستوى 20
المهم
وستكون النتيجة كالتالي

لاحظ في الصورة أنه تم تعديل شروط البناء لتكون

الاسطبل مستوى 21
البيت الرئيسي مستوى 21
وهذه الشروط ابدا لن تتحقق
وقد قمت بالاختبار بعد تطوير الاسطبل والبيت الرئيسي لمستوى 20 ولكن لم اتمكن من بناء سوق المحاربين
لان الشروط لم تتحقق

الطريقة الثانية
حذف شروط بناء سوق المحاربين بالمرة
وهذه الطريقة انا شخصيا لا أحبذها
ولكن نذكرها للعلم
الفكرة تقوم على اساس حذف شروط البناء من ملف الميتاداتا metadata.php
وبالتالي لن يتمكن احد من البناء
والشروط كما اوضحت لكم سابقا تبدأ من السطر رقم 14237 وتنهتي في السطر رقم 14451
وهذه الاكواد كالتالي
تقوم بحذفها
أنا لن أقوم بتجريبها ولن اعرض نتائج تجريبها لاني لا أحبذها
في الأخير اتمنى الشرح كان كافي ووافي
وان الكل استوعبه
وتقبلوا خالص تحيات اخوانكم في شبكة ومنتديات البعداني
والسلام عليكم ورحمة الله وبركاته
اليوم سأعد لكم شرح عن
كيفية ترقيع ثغرة سوق المحاربين
لكي ينعم سيرفركم بالهدوء التام واللعب الرزين والمتكافئ بين كافة اللاعبين بدون استثناء
أولاً : شرح الثغرة .
سبب الثغرة هو أن صندوق النص اللي يتم وضع عدد الجنود فيه يقبل اضافة الحروف , وهذه الثغرة استغلها الكثيرون بوضع ارقام باستخدام النظام السادس عشر ( نظام عددي ) .
ومن حسن طالعهم أن السكربت يفهم النظام السادس عشر .
وسبب استخدام ذهب قليل لتطبيق الثغرة , باعتقادي ان كود خصم الذهب لا يفهم سوى الارقام التي تسبق الحروف , وطالما ان الارقام التي تسبق الحروف هي إما 1 أو 2 فإن الذهب المخصوم لن يزيد عن 2 ذهب
ثانياً : الاكواد المستخدمة في استغلال الثغرة
لتدريب واحد تلريون
1e12
لتدريب 2 تلريون
2e13
ويمكن استخدام أي أرقام ( بشرط ان تكون مكون من 4 أرقام و ثاني رقم هو حرف e )
ثالثاً: الفكرة العامة لترقيع الثغرة
الفكرة العامة تتلخص في الأفكار التالية
إما .. تعديل شروط سوق المحاربين بحيث يتم جعل صندوق النص لا يقبل حروف .
أو .. إلغاء عمل سوق المحاربين بالمرة
ولكون ملفات اللعبة مشفرة
سنلجأ لتطبيق الفكرة الثانية ..
رابعاً: كيفية إلغاء عمل سوق المحاربين
بعمل شروط بناء غير قابلة للتحقيق
او إلغاء عمل سوق المحاربين إما بحذف اكواد سوق المحاربين كلها
الطريقة الأولى
من المعروف أن شروط بناء سوق المحاربين هي ( البيت الرئيسي مستوى 10 , الاسطبل مستوى 5 )
لإلغاء السوق نعدل الشرو ط ونخليها مستحيلة كجعل الشروط ( بيت رئيسي مستوى 21 أو 22 المهم + 20 أو الاسطبل مستوى 21 أو 22 ... الخ )
خامساً : تطبيق الفكرة
افتح ملف الميتاداتا metadata.php الموجود داخل مجلد app من مجلدات اللعبة
يفضل استخدام محرر php لتسهيل البحث وعرض الاكواد بصورة سليمة
ابحث عن التالي
كود PHP:
'42'=> array (
ستجده بالتحديد في السطر 14237 كما في الصورة
من هذه النقطة تظهر أكواد بناء سوق المحاربين
لاحظ في الصورة

اللي داخل الدائرة السوادء مكتوب التالي
كود PHP:
'20' => 5
أي ان من شروط البناء هو أن يكون المبنى رقم 20 ( اللي هو الاسطبل ) عند مستوى 5
واللي داخل الدائرة الزرقاء
كود PHP:
'15' => 10
أي أن من شروط البناء هو أن يكون المبنى اللي رقمه 15 ( اللي هو المبنى الرئيسي ) عند مستوى 10
الحين وصلت الفكرة أكيد

نقوم بتعديل القيمة سواء للاسطبل أو للمبنى الرئيسي أو لكلاهما إلى الرقم 21 أو أكثر
لكن !!
لماذا الرقم 21 أو أكثر؟
الجواب بكل بساطة
لا احد يستطيع بناء أي مبنى إلى مستوى أكثر من مستوى 20
المهم
وستكون النتيجة كالتالي

لاحظ في الصورة أنه تم تعديل شروط البناء لتكون


الاسطبل مستوى 21
البيت الرئيسي مستوى 21
وهذه الشروط ابدا لن تتحقق
وقد قمت بالاختبار بعد تطوير الاسطبل والبيت الرئيسي لمستوى 20 ولكن لم اتمكن من بناء سوق المحاربين
لان الشروط لم تتحقق



الطريقة الثانية
حذف شروط بناء سوق المحاربين بالمرة
وهذه الطريقة انا شخصيا لا أحبذها
ولكن نذكرها للعلم
الفكرة تقوم على اساس حذف شروط البناء من ملف الميتاداتا metadata.php
وبالتالي لن يتمكن احد من البناء
والشروط كما اوضحت لكم سابقا تبدأ من السطر رقم 14237 وتنهتي في السطر رقم 14451
وهذه الاكواد كالتالي
كود PHP:
'42'=> array (
'support_multiple' => FALSE, 'built_in_capital' => TRUE, 'built_in_non_capital' => TRUE, 'built_in_special_only' => FALSE, 'max_lvl_in_non_capital' => NULL,
'for_tribe_id' => array( '1' => 1, '2' => 1, '3' => 1, '4' => 1, '6' => 1, '7' => 1 ),
'pre_requests' => array( '20' => 21, '15' => 21 ),
'levels'=> array(
array(
'value' => 20, 'time_consume' => 2200, 'cp' => 4, 'people_inc' => 5,
'resources' => array( '1' => 780, '2' => 420, '3' => 660, '4' => 540 )
),
array(
'value' => 19, 'time_consume' => 3150, 'cp' => 4, 'people_inc' => 3,
'resources' => array( '1' => 1000, '2' => 540, '3' => 845, '4' => 690 )
),
array(
'value' => 18, 'time_consume' => 4260, 'cp' => 5, 'people_inc' => 3,
'resources' => array( '1' => 1280, '2' => 690, '3' => 1080, '4' => 885 )
),
array(
'value' => 17, 'time_consume' => 5540, 'cp' => 6, 'people_inc' => 3,
'resources' => array( '1' =>1635, '2' => 880, '3' => 1385, '4' => 1130 )
),
array(
'value' => 16, 'time_consume' => 7020, 'cp' => 7, 'people_inc' => 3,
'resources' => array( '1' => 2095, '2' => 1125, '3' => 1770, '4' => 1450 )
),
array(
'value' => 15, 'time_consume' => 8750, 'cp' => 9, 'people_inc' => 3,
'resources' => array( '1' => 2680, '2' => 1445, '3' => 2270, '4' => 1855 )
),
array(
'value' => 14, 'time_consume' => 10750, 'cp' => 11, 'people_inc' => 3,
'resources' => array( '1' => 3430, '2' => 1845, '3' => 2905, '4' => 2375 )
),
array(
'value' => 13, 'time_consume' => 13070, 'cp' => 13, 'people_inc' => 3,
'resources' => array( '1' => 4390, '2' => 2365, '3' => 3715, '4' => 3040 )
),
array(
'value' => 12, 'time_consume' => 15760, 'cp' => 15, 'people_inc' => 3,
'resources' => array( '1' => 5620, '2' => 3025, '3' => 4755, '4' => 3890 )
),
array(
'value' => 11, 'time_consume' => 18880, 'cp' => 19, 'people_inc' => 3,
'resources' => array( '1' => 7195, '2' => 3875, '3' => 6085, '4' => 4980 )
),
array(
'value' => 10, 'time_consume' => 22500, 'cp' => 22, 'people_inc' => 4,
'resources' => array( '1' => 9210, '2' => 4960, '3' => 7790, '4' => 6375 )
),
array(
'value' => 9, 'time_consume' => 26700, 'cp' => 27, 'people_inc' => 4,
'resources' => array( '1' =>11785, '2' => 6345, '3' => 9975, '4' => 8160 )
),
array(
'value' => 8, 'time_consume' => 31570, 'cp' => 32, 'people_inc' => 4,
'resources' => array( '1' => 15085, '2' => 8125, '3' => 12765, '4' => 10445 )
),
array(
'value' => 7, 'time_consume' => 37220, 'cp' => 39, 'people_inc' => 4,
'resources' => array( '1' => 19310, '2' => 10400, '3' => 16340, '4' => 13370 )
),
array(
'value' => 6, 'time_consume' => 43780, 'cp' => 46, 'people_inc' => 4,
'resources' => array( '1' => 24720, '2' => 13310, '3' => 20915, '4' =>17115 )
),
array(
'value' => 5, 'time_consume' => 51380, 'cp' => 55, 'people_inc' => 4,
'resources' => array( '1' => 31640, '2' => 17035, '3' => 26775, '4' => 21905 )
),
array(
'value' => 4, 'time_consume' => 60200, 'cp' => 67, 'people_inc' => 4,
'resources' => array( '1' => 40500, '2' => 21810, '3' => 34270, '4' => 28040 )
),
array(
'value' => 3, 'time_consume' => 70430, 'cp' => 80, 'people_inc' => 4,
'resources' => array( '1' => 51840, '2' => 27915, '3' => 43865, '4' => 35890 )
),
array(
'value' => 2, 'time_consume' => 82300, 'cp' => 96, 'people_inc' => 4,
'resources' => array( '1' => 66355, '2' => 35730, '3' => 56145, '4' => 45940 )
),
array(
'value' => 0.01, 'time_consume' => 96070, 'cp' => 115, 'people_inc' => 4,
'resources' => array( '1' => 84935, '2' => 45735, '3' => 71870, '4' => 58800 )
),
)
)
تقوم بحذفها
أنا لن أقوم بتجريبها ولن اعرض نتائج تجريبها لاني لا أحبذها



في الأخير اتمنى الشرح كان كافي ووافي
وان الكل استوعبه
وتقبلوا خالص تحيات اخوانكم في شبكة ومنتديات البعداني
والسلام عليكم ورحمة الله وبركاته
الموضوع الاصلي في منتدانا الغالي على الرابط التالي
ردحذفhttp://albadani.net/vb/showthread.php?t=1508
اشكرك شكر وافر وكثير
ردحذفلكن اخوي انا في خطوة تقولي يظهر لك
'pre_requests' => array( '20' => 5, '15' => 10 )
انا ماتظهري لي الاعداد يطلع عندي
'pre_requests' => array( ),
بس هذا السطر وان جيت اضيف الاعداد يخرب السيرفر
ارجع ارفع الملف العادي من جديد
وصارت تقطيعات في السيرفر بالهبل
والله طفشت منه ماقدرت اعدل ابد ابد ابد
وبقي سوق المحاربين زي ماهو ..
في انتظار ردك