غير متواجد
معلومات الكاتب ▼
رقم العضوية : 13
المشاركات : 37
الجنس : ذكر
يتابعهم : 1
يتابعونه : 2
الإجابات المقدمة : 2
الرصيد : 0$
قوة السمعة : 30
04-07-2020 12:36 مساء

فيه مشكلة اعتقد باغلب الملفات و هي نقاط الحياة عند الدخول تكون عشوائية لكل لاعب احيانًا للاعب تكون 700 و للاعب اخر 1200 وكذا

واذا استخدام إعادة توزيع نقاط الوضع بتختلف نقاط الحياة تزيد و تنقص ، فـ اللي يعرف حل لثتبيت نقاط الحياة لكل اللاعبين يا ليت يشاركنا


أفضل إجابة مقدمة من [Pro]Lord وهي:
هذه ليست مشكلة، بل هي صُنعت هكذا
المهم
questlua_pc.cpp
ابحث عن:
                if ( point == POINT_HT )
                {
                    BYTE job = ch->GetJob();
                    ch->SetRandomHP((ch->GetLevel()-1) * number(JobInitialPoints[job].hp_per_lv_begin, JobInitialPoints[job].hp_per_lv_end));
                }


وكما ذكرت أنت تماما، يمكن أن تكون نقاط حياة أحدهم 700 والأخر 1200
ف اذا كنت تريد تعديلها للأقل (بمعنى عندما يتم انشاء شخصية جديدة دائما تأخذ القيمة الأقل والتي هي 700)
قم بتعديل:

ch->SetRandomHP((ch->GetLevel()-1) * number(JobInitialPoints[job].hp_per_lv_begin, JobInitialPoints[job].hp_per_lv_end));

الى:

ch->SetRandomHP((ch->GetLevel()-1) *JobInitialPoints[job].hp_per_lv_begin);


أما ان كنت تريد تعديلها لأقصى قيمة (يحصل دائما على 1200)
قم بتعديلها لـ:
ch->SetRandomHP((ch->GetLevel()-1) * JobInitialPoints[job].hp_per_lv_end);

تحياتي.
عرض الإجابة







غير متواجد
معلومات الكاتب ▼
رقم العضوية : 10
المشاركات : 647
الجنس : ذكر
الدعوات : 1
يتابعهم : 4
يتابعونه : 25
الإجابات المقدمة : 16
الرصيد : 0$
قوة السمعة : 430
04-07-2020 01:21 مساء
[1]
مو عشوائيه هذي محدده من السورس اظن من ملف iuprt_login.cpp
او شي قريب لذا الاسم
حتى لو تلاحظ اذا اخترت شخصيه محارب بتلاقي نقاط الوضع تفرق عن شخصيه السورا
شخصيه المحارب فيها قوه اكثر
وشخصيه السورا فيها ذكاء اكثر
كلهم محددين من السورس

توقيع: CSS
عَنْ أَبِي هُرَيْرَةَ، أَنَّ رَسُولَ اللهِ صَلَّى اللهُ عَلَيْهِ وَسَلَّمَ، قَالَ: ” إِذَا مَاتَ الْإِنْسَانُ انْقَطَعَ عَنْهُ عَمَلُهُ إِلَّا مِنْ ثَلَاثَةٍ: إِلَّا مِنْ صَدَقَةٍ جَارِيَةٍ، أَوْ عِلْمٍ يُنْتَفَعُ بِهِ، أَوْ وَلَدٍ صَالِحٍ يَدْعُو لَهُ ” أخرجه مسلم في صحيحه (3/ 1255)
غير متواجد
معلومات الكاتب ▼
رقم العضوية : 13
المشاركات : 37
الجنس : ذكر
يتابعهم : 1
يتابعونه : 2
الإجابات المقدمة : 2
الرصيد : 0$
قوة السمعة : 30
04-07-2020 03:33 مساء
[2]
فاهم قصدك لكن لو أسوي 2 محاربين بحصل فرق بنقاط الحياة بينهم حتى لو بنفس الشخصية استخدم إعادة توزيع نقاط الوضع اكثر من مرة بكل مره بيعطيني حياة مختلفة


غير متواجد
معلومات الكاتب ▼
رقم العضوية : 10
المشاركات : 647
الجنس : ذكر
الدعوات : 1
يتابعهم : 4
يتابعونه : 25
الإجابات المقدمة : 16
الرصيد : 0$
قوة السمعة : 430
04-07-2020 03:49 مساء
[3]
انت قصدك لما تستعمل اعاده توزيع فقط
شي طبيعي بما انه يصفر الوضع ل1 او مدري كم نسيت صراحه
وفيه شي ثاني بعد
هذا ع حسب اذا كان عتادك فيه سحر او اذا مسوي مهمات تعطيك حياه
جرب انك تسوي شخصيتين جدد نفس الشي واستعمل اعاده الوضع وشف الي يحصل 

توقيع: CSS
عَنْ أَبِي هُرَيْرَةَ، أَنَّ رَسُولَ اللهِ صَلَّى اللهُ عَلَيْهِ وَسَلَّمَ، قَالَ: ” إِذَا مَاتَ الْإِنْسَانُ انْقَطَعَ عَنْهُ عَمَلُهُ إِلَّا مِنْ ثَلَاثَةٍ: إِلَّا مِنْ صَدَقَةٍ جَارِيَةٍ، أَوْ عِلْمٍ يُنْتَفَعُ بِهِ، أَوْ وَلَدٍ صَالِحٍ يَدْعُو لَهُ ” أخرجه مسلم في صحيحه (3/ 1255)
غير متواجد
معلومات الكاتب ▼
رقم العضوية : 256
المشاركات : 428
الجنس : ذكر
يتابعهم : 16
يتابعونه : 8
الإجابات المقدمة : 19
الرصيد : 0$
قوة السمعة : 210
موقعي : زيارة موقعي
04-07-2020 03:50 مساء
[4]
المشاركة الأصلية كتبت بواسطة: Mae

فيه مشكلة اعتقد باغلب الملفات و هي نقاط الحياة عند الدخول تكون عشوائية لكل لاعب احيانًا للاعب تكون 700 و للاعب اخر 1200 وكذا

واذا استخدام إعادة توزيع نقاط الوضع بتختلف نقاط الحياة تزيد و تنقص ، فـ اللي يعرف حل لثتبيت نقاط الحياة لكل اللاعبين يا ليت يشاركنا

اعتقد ان في الاخر مجموعهم ثابت
ويمكن عشوائي فعلا ولكن هل مثلا 
لو كنت محارب كان الذكاء اكبر من القوه ؟
اعتقد انها نسبه وتناسب لكن في الاخر الاساسيات ثابته وهي القوه اكبر من الذكاء او كنت محارب او علي حسب نوع الشخصيه
اتمني تكون فهمت وجهه نظري
تم تحرير الموضوع بواسطة :Dev Ahmed Shaban بتاريخ:04-07-2020 03:51 مساء. سبب التعديل : تصحيح
غير متواجد
معلومات الكاتب ▼
رقم العضوية : 13
المشاركات : 37
الجنس : ذكر
يتابعهم : 1
يتابعونه : 2
الإجابات المقدمة : 2
الرصيد : 0$
قوة السمعة : 30
04-07-2020 04:04 مساء
[5]
يا اخوان فاهم قصدكم انها تفرق عشان الحيوية و باقي نقاط الوضع اكثر انا اتكلم عن حساب جديد فاضي بدون عتاد و بدون ازيد نقاط الوضع
اسوي محارب احصل حياته 700 اسوي محارب ثاني احصله 1100 اسوي ثالث احصله 500 و كلهم بدون البس عتاد و كلهم نفس الشخصية و كلهم ما غيرت فيهم نقاط الوضع

غير متواجد
معلومات الكاتب ▼
رقم العضوية : 13
المشاركات : 37
الجنس : ذكر
يتابعهم : 1
يتابعونه : 2
الإجابات المقدمة : 2
الرصيد : 0$
قوة السمعة : 30
04-07-2020 04:05 مساء
[6]
غير اني استخدام اعادة التوزيع بدون ازيد نقاط الوضع استخدمها و نقاط الوضع ثابته ما زدتها و بكل مره يعطيني حياة مختلفة


غير متواجد
معلومات الكاتب ▼
رقم العضوية : 167
المشاركات : 681
الجنس : ذكر
الدعوات : 2
الإنذارات : 2
يتابعهم : 5
يتابعونه : 7
الإجابات المقدمة : 34
الرصيد : 0$
قوة السمعة : 420
04-07-2020 05:36 مساء
[7]
المشاركة الأصلية كتبت بواسطة: Mae
يا اخوان فاهم قصدكم انها تفرق عشان الحيوية و باقي نقاط الوضع اكثر انا اتكلم عن حساب جديد فاضي بدون عتاد و بدون ازيد نقاط الوضع
اسوي محارب احصل حياته 700 اسوي محارب ثاني احصله 1100 اسوي ثالث احصله 500 و كلهم بدون البس عتاد و كلهم نفس الشخصية و كلهم ما غيرت فيهم نقاط الوضع


اظن سبب الثغرة هذي هو أمر /level 
جرب تطورهم ب خبرة عادية وشوف هل راح يكون فيه فرق او لا

توقيع: dooooodi
مُعتزل

غير متواجد
معلومات الكاتب ▼
رقم العضوية : 13
المشاركات : 37
الجنس : ذكر
يتابعهم : 1
يتابعونه : 2
الإجابات المقدمة : 2
الرصيد : 0$
قوة السمعة : 30
04-07-2020 06:19 مساء
[8]
المشاركة الأصلية كتبت بواسطة: dooooodi
المشاركة الأصلية كتبت بواسطة: Mae
يا اخوان فاهم قصدكم انها تفرق عشان الحيوية و باقي نقاط الوضع اكثر انا اتكلم عن حساب جديد فاضي بدون عتاد و بدون ازيد نقاط الوضع
اسوي محارب احصل حياته 700 اسوي محارب ثاني احصله 1100 اسوي ثالث احصله 500 و كلهم بدون البس عتاد و كلهم نفس الشخصية و كلهم ما غيرت فيهم نقاط الوضع


اظن سبب الثغرة هذي هو أمر /level 
جرب تطورهم ب خبرة عادية وشوف هل راح يكون فيه فرق او لا

حُبي انا اقول اسوي شخصيتين كلهم لفل 1 حتى ما احركهم من اماكنهم ما اغير اي شيء حرفيًا و نقاط الحياة تختلف بينهم و يبقى فرق الحياة بينهم ما يتعدل حتى لو طورتهم يبقي الفرق ثابت

غير متواجد
معلومات الكاتب ▼
رقم العضوية : 924
المشاركات : 19
الجنس : ذكر
يتابعهم : 0
يتابعونه : 0
الإجابات المقدمة : 1
الرصيد : 0$
قوة السمعة : 20
04-07-2020 06:40 مساء
[9]
المشاركة الأصلية كتبت بواسطة: Mae
المشاركة الأصلية كتبت بواسطة: dooooodi
المشاركة الأصلية كتبت بواسطة: Mae
يا اخوان فاهم قصدكم انها تفرق عشان الحيوية و باقي نقاط الوضع اكثر انا اتكلم عن حساب جديد فاضي بدون عتاد و بدون ازيد نقاط الوضع
اسوي محارب احصل حياته 700 اسوي محارب ثاني احصله 1100 اسوي ثالث احصله 500 و كلهم بدون البس عتاد و كلهم نفس الشخصية و كلهم ما غيرت فيهم نقاط الوضع


اظن سبب الثغرة هذي هو أمر /level 
جرب تطورهم ب خبرة عادية وشوف هل راح يكون فيه فرق او لا

حُبي انا اقول اسوي شخصيتين كلهم لفل 1 حتى ما احركهم من اماكنهم ما اغير اي شيء حرفيًا و نقاط الحياة تختلف بينهم و يبقى فرق الحياة بينهم ما يتعدل حتى لو طورتهم يبقي الفرق ثابت

حبيبي هذا محددة من السورس بمعني ان حياة مثلا المحارب في البدايات تنحصر بين 500 الي 1100 ولا تزيد عن هكذا 
و رح تحصل هذا الشئ في كل الشخصيات 
و لكن باستخدام لفيفة اعادة تعيين نقاط الوضع .. بكل مرة تسويها الحياة رح تختلف من حيث الزيادة او النقصان 
هذة ليست ثغرة ولكنها خطا 
ولا رح يكون فرق كبير بالحياة بين الاعبين الا اشياء بسيطة فرق 500 حياة او 700 حياة 
اتمني اكون جاوبت لك علي سؤالك

توقيع: Mr.Strange
Discord:Mr.Strange#1226

غير متواجد
معلومات الكاتب ▼
رقم العضوية : 437
المشاركات : 66
الجنس : ذكر
يتابعهم : 0
يتابعونه : 1
الإجابات المقدمة : 4
الرصيد : 0$
قوة السمعة : 70
04-07-2020 08:52 مساء
[10]
هذه ليست مشكلة، بل هي صُنعت هكذا
المهم
questlua_pc.cpp
ابحث عن:
                if ( point == POINT_HT )
                {
                    BYTE job = ch->GetJob();
                    ch->SetRandomHP((ch->GetLevel()-1) * number(JobInitialPoints[job].hp_per_lv_begin, JobInitialPoints[job].hp_per_lv_end));
                }


وكما ذكرت أنت تماما، يمكن أن تكون نقاط حياة أحدهم 700 والأخر 1200
ف اذا كنت تريد تعديلها للأقل (بمعنى عندما يتم انشاء شخصية جديدة دائما تأخذ القيمة الأقل والتي هي 700)
قم بتعديل:

ch->SetRandomHP((ch->GetLevel()-1) * number(JobInitialPoints[job].hp_per_lv_begin, JobInitialPoints[job].hp_per_lv_end));

الى:

ch->SetRandomHP((ch->GetLevel()-1) *JobInitialPoints[job].hp_per_lv_begin);


أما ان كنت تريد تعديلها لأقصى قيمة (يحصل دائما على 1200)
قم بتعديلها لـ:
ch->SetRandomHP((ch->GetLevel()-1) * JobInitialPoints[job].hp_per_lv_end);

تحياتي.
تم تحرير الموضوع بواسطة :[Pro]Lord بتاريخ:04-07-2020 08:53 مساء. سبب التعديل : تعديل رقم