Commander
2019-08-09, 04:54 AM
بسم الله الرحمن الرحيم
الفكرة موجوده في سيرفر والفكره هي
فكره كنت شوفتها فى السيرفر الاول ع العالم Immortals
عايز وار تبقى 3 مرات فى اليوم
عباره عن انبى سى بيدخل الناس الوار بس لما يجى يدخل لازم يدفع عدد معين من السى بى اس
واللى بيدفعه ده بيزود جايزة اللى هيكسب الوار
فا مثلآ الجايز الاساسيه 500 الف سى بى اس
و كل اللى يدخل يدفع 50 الف سى بى اس
فا تزيد الجايزة
ملحوظه واللى يموت يرجع التوين ولو عايز يدخل يدفع و يدخل تانى
بالمناسبه الصح هيا توين مش تاون
انا هقولكو الفكره وقصة بقي تخلوها في الوار او في حرب تانيه انا هقولكو الفكرة
هنروح كلاس
class Entity
وتحت القوس نضيف
public ulong login = 0;
بعدين نروح للاضافة للان بي سي الي بيدخلك للحرب
لو مثلا الديلوج ده الي بيدخلك الحرب في الان بي سي
dialog.Option("Yes Please", 122);
هنخليه كدا
dialog.Input("Yes Please", 122 , 32);
input يعني بتقوله اعملي حقل ادخال واكتب ونفذ رقم case 122 ويكون maxlength = 32 و ده براحتك انت بقي
نروح بقي ل case 122 الي بيتنفذ فيها الكود مش لازم تعملوها 122 زيي علي حسب انتو عندكو رقمها كام
if (client.Entity.ConquerPoints < Convert.ToUInt64(npcRequest.Input))
{
client.MessageBox("Your CPS is less than what you entered");
}
else
{
client.Entity.ConquerPoints -= Convert.ToUInt64(npcRequest.Input);
client.Entity.login += Convert.ToUInt64(npcRequest.Input);
}
وتحت السطر ده
client.Entity.login += Convert.ToUInt64(npcRequest.Input);
ضيف الاكواد الي كانت بتتنفذ بس
شرح الكود هو لو ان السي بي اس الي مع اللاعب اقل من الي هو دخله يقوله الرساله لو مش اقل يخصم الي هو حطه و يزود قيمة المتغير الي احنا عملناه
كدا اضافة دخول الحرب
اضافة الخروج هتيجي في الكود الي بيتنفذ لما الحرب تخلص او استلام الجايزه وتحط فيها السطرين دول
client.Entity.ConquerPoints += client.Entity.login;
client.Entity.login = 0;
شرح الكود هو ان هيدي اللاعب قيمة المتغير الي هو كل السي بي اس الي اللاعيبه حطته وبعدين يخلي قيمة المتغير صفر بحيث لما الحرب تبدأ تاني ميفضلش يضيف علي القيمة القديمه ويحصل ثغرة
كدا انا شرحتلهم الفكره علي قد ما اقدر وشكرا ليكم ويا رب يكون موضوعي جيه بفايده
السلام عليكم ورحمة الله وبركاته
الفكرة موجوده في سيرفر والفكره هي
فكره كنت شوفتها فى السيرفر الاول ع العالم Immortals
عايز وار تبقى 3 مرات فى اليوم
عباره عن انبى سى بيدخل الناس الوار بس لما يجى يدخل لازم يدفع عدد معين من السى بى اس
واللى بيدفعه ده بيزود جايزة اللى هيكسب الوار
فا مثلآ الجايز الاساسيه 500 الف سى بى اس
و كل اللى يدخل يدفع 50 الف سى بى اس
فا تزيد الجايزة
ملحوظه واللى يموت يرجع التوين ولو عايز يدخل يدفع و يدخل تانى
بالمناسبه الصح هيا توين مش تاون
انا هقولكو الفكره وقصة بقي تخلوها في الوار او في حرب تانيه انا هقولكو الفكرة
هنروح كلاس
class Entity
وتحت القوس نضيف
public ulong login = 0;
بعدين نروح للاضافة للان بي سي الي بيدخلك للحرب
لو مثلا الديلوج ده الي بيدخلك الحرب في الان بي سي
dialog.Option("Yes Please", 122);
هنخليه كدا
dialog.Input("Yes Please", 122 , 32);
input يعني بتقوله اعملي حقل ادخال واكتب ونفذ رقم case 122 ويكون maxlength = 32 و ده براحتك انت بقي
نروح بقي ل case 122 الي بيتنفذ فيها الكود مش لازم تعملوها 122 زيي علي حسب انتو عندكو رقمها كام
if (client.Entity.ConquerPoints < Convert.ToUInt64(npcRequest.Input))
{
client.MessageBox("Your CPS is less than what you entered");
}
else
{
client.Entity.ConquerPoints -= Convert.ToUInt64(npcRequest.Input);
client.Entity.login += Convert.ToUInt64(npcRequest.Input);
}
وتحت السطر ده
client.Entity.login += Convert.ToUInt64(npcRequest.Input);
ضيف الاكواد الي كانت بتتنفذ بس
شرح الكود هو لو ان السي بي اس الي مع اللاعب اقل من الي هو دخله يقوله الرساله لو مش اقل يخصم الي هو حطه و يزود قيمة المتغير الي احنا عملناه
كدا اضافة دخول الحرب
اضافة الخروج هتيجي في الكود الي بيتنفذ لما الحرب تخلص او استلام الجايزه وتحط فيها السطرين دول
client.Entity.ConquerPoints += client.Entity.login;
client.Entity.login = 0;
شرح الكود هو ان هيدي اللاعب قيمة المتغير الي هو كل السي بي اس الي اللاعيبه حطته وبعدين يخلي قيمة المتغير صفر بحيث لما الحرب تبدأ تاني ميفضلش يضيف علي القيمة القديمه ويحصل ثغرة
كدا انا شرحتلهم الفكره علي قد ما اقدر وشكرا ليكم ويا رب يكون موضوعي جيه بفايده
السلام عليكم ورحمة الله وبركاته