سبحان الله وبحمده سبحان الله العظيم





غير متواجد
معلومات الكاتب ▼
رقم العضوية : 540
المشاركات : 102
الجنس : ذكر
الإنذارات : 3
يتابعهم : 0
يتابعونه : 2
الإجابات المقدمة : 4
الرصيد : 0$
قوة السمعة : 70
07-06-2020 06:43 مساء
السلام عليكم ورحمة الله وبركاته ،،

أقدم إليكم بعض شروحات السورس التي يبحث عنها معظم الناس .

1- تفعيل ميزات 6 و 7 في السورس

قم بفتح ملف char_item.cpp وقم بالبحث عن (مرتين) : 

                if (LC_IsEurope() || LC_IsSingapore() || LC_IsVietnam())
                    return false;


وقم بوضع علامتي // قبلهما (تعطيلهما حتى يظهروا باللون الأخضر)
أو حذفهما

2- تعديل نسبة نجاح الأحجار

قم بفتح ملف char_item.cpp وقم بالبحث عن :

for (i = 0; i < ITEM_SOCKET_MAX_NUM; ++i)
                    if (item2->GetSocket(i) >= 1 && item2->GetSocket(i) <= 2 && item2->GetSocket(i) >= item->GetValue(2))
                    {
                        if (number(1, 100) <= 30) // 30 Is Success Rate(30 هي نسبة النجاح)


بإمكانك تعديلها لأي رقم تريد .

3- إزالة ال3% ضرائب مبيعات عند بيع بند 
قم بفتح ملفي shop.cpp و shop_manager.cpp وقم بالبحث عن :
iVal = 3;

وقم بتغييرها إلى :
iVal = 0;


أو أي نسبة تريد.

4- تفعيل بيع بنود بسعر 0 يانغ (عند وضع بند سعره 0 يظهر أنك لا تملك ما يكفي من اليانغ)
نقوم بفتح ملف shop.cpp ونقوم بالبحث عن : 
if (r_item.price <= 0)


ونقوم بإستبدالها بـ :

if (r_item.price < 0)


5- تفعيل أمر pc.change_name
نقوم بفتح ملف questlua_pc.cpp

ونقوم بالبحث عن (في دالة pc_change_name) : 

        if ( LC_IsEurope() )
        {
            lua_pushnumber(L, 5);
            return 1;
        }


ونقوم بحذفها أو تعطيلها (وضع // أو /*)

6- تفعيل بيع كرات البركة وخام نحاس سحري لدى المتاجر 

نقوم بفتح ملف shop.cpp والبحث عن : 

        if (quest::CQuestManager::instance().GetEventFlag("hivalue_item_sell") == 0)
        {
            if (item->GetVnum() == 70024 || item->GetVnum() == 70035)
            {
                return SHOP_SUBHEADER_GC_END;
            }
        }


ونقوم بحذفه أو تعطيله (وضع علامتي //)
ونقوم بالبحث عن : 

        if (quest::CQuestManager::instance().GetEventFlag("hivalue_item_sell") == 0)
        {
            if (item.vnum == 70024 || item.vnum == 70035)
            {
                continue;
            }
        }


ونقوم بنفس الشيئ (تعطيل أو حذف)

7- تعطيل مميزات 6 و 7 للأزياء 

نقوم بفتح ملف char_item.cpp ونقوم بالبحث عن : 

case 71051:


وبداخلها نقوم بالبحث عن : 

if (!IsValidItemPosition(DestCell) || !(item2 = GetInventoryItem(wDestCell)))



ونضيف بعدها : 

            if (item2->GetType() == ITEM_COSTUME)
            {
                ChatPacket(CHAT_TYPE_INFO, LC_TEXT("You can't add 6&7 bonuses on costumes"));
                return false;
            }


8- تعديل وقت إغلاق السيرفر بأمر shutdown (الطبيعي 10 ثوانٍ)

نقوم بفتح ملف cmd_general.cpp ونقوم بالبحث عن : 

Shutdown(10);


قم بإستبدالها بـ : 

Shutdown(30); // Close After 30 Seconds


9- تعديل أقصى مستوى 

نقوم بفتح length.h في مجلد common ونقوم بالبحث عن : 

                    PLAYER_EXP_TABLE_MAX    = 120,
                    PLAYER_MAX_LEVEL_CONST    = 120,


ونقوم بإستبدال 120 بأي رقم نريده مثلاً 255

بعدها يجب عليك الذهاب إلى ملف constans.cpp في مجلد game
ونقوم بتعديل 

const DWORD exp_table_common[PLAYER_EXP_TABLE_MAX + 1] =


(الطبيعي انها 120 لكن اعتقد في سورس مارتي حتى مستوى 255) 
المهم أن هذه الدالة المسؤولة عن الخبرة لكل مستوى ويسهل تعديلها لا تحتاج إلى شرح فقط إضافة أسطر جديدة .

10 - تعطيل طلب زجاج الإدراك عند عرض بند 
نقوم بفتح ملف i*nput_main.cpp ونقوم بالبحث عن : 

int ProcessTextTag(LPCHARACTER ch, const char * c_pszText, size_t len)
{

ونقوم بإضافة 

 return 0; 


11- حل مشكلة أمر dice وظهور كتابة غريبة
نقوم بفتح ملف cmd_general.cpp ونقوم بالبحث عن : 
ACMD(do_dice)


ونقوم بإستبدال الدالة كاملة (من { إلى }) بـ :
ACMD(do_dice)
{
    ch->ChatPacket(CHAT_TYPE_INFO, "This command has been disabled.");
}



12- تعطيل إلقاء اليانغ على الأرض للاعبين 
نقوم بفتح ملف char_item.cpp ونبحث عن : 
bool CHARACTER::DropGold(int gold)


ونقوم بإستبدال محتوى الدالة كاملاً بـ : 
return false;


13- تعطيل الوقت بين العلاوات (60 ثانية واحيانا 10 دقائق)

نقوم بفتح ملف char_item.cpp ونقوم بالبحث عن : 

    if (pPC)
    {
        DWORD dwNowMin = get_global_time() / 60;

        DWORD dwLastChangeItemAttrMin = pPC->GetFlag(msc_szLastChangeItemAttrFlag);

        [ Bla Bla About Function ]
        pPC->SetFlag(msc_szLastChangeItemAttrFlag, dwNowMin);
    }


ونقوم بحذفه أو تعطيله .

14 - تعديل وقت إختفاء البنود الملقاة على الأرض
نقوم بفتح ملف item.h ونقوم بالبحث عن : 

void    StartDestroyEvent(int iSec=300);

ونقوم بتغيير ال300(ثانية) إلى أي رقم نريده
ونقوم بفتح ملف char_item.cpp ونقوم بالبحث عن : 

pkItemToDrop->StartDestroyEvent();


ونقوم بوضع أي رقم بداخل () ، كمثال : 
pkItemToDrop->StartDestroyEvent(500);


15- جعل الدواب قابلة للضرب من فوقها 

نقوم بفتح ملف char_item.cpp ونقوم بالبحث عن : 
case 20118:


ونقوم بإضافة

​case mount_vnum:

أسفلها حيث mount_vnum = كود الدابة ، كمثال : 


case 20118:
case 20249:
case 20250:


16- تعديل أقصى نقاط وضع (الطبيعي 90)

نقوم بفتح ملف cmd_general.cpp ونقوم بالبحث عن : 
#define MAX_STAT 90


ونقوم بتغيير 90 لأي رقم نريد (ملحوظة هذا الرقم سيكون لل4 نقاط (حيوية-مناورة-ذكاء-قوة)

17- تعطيل أو تعديل الlimit_time (مدة عمل الملفات بعدها تتعطل)

للتعطيل : 
نقوم بفتح ملف limit_time.h ونقوم بالبحث عن : 
#define ENABLE_LIMIT_TIME

ونقوم بحذف السطر أو تعطيله 

للتعديل : 
نقوم بفتح ملف 
update_limit_time.py 

ونقوم بالبحث عن : 

limitTime = time.mktime(time.localtime()) + 3600 * 24 * 180 * 2


وتقوم بتعديل الأرقام كما تشاء (هذه المدة الحالية هي عامين 360 يوم)

بعدها نقوم بكتابة : 

gmake limit_time


في الputty أو الVirtual Box

18- تفعيل المشاعر والرقصات بدون قناع عاطفة 

نقوم بفتح ملف cmd_emotion.cpp ونقوم بالبحث عن : 

bool CHARACTER_CanEmotion(CHARACTER& rch)


ونقوم بإستبدال محتوى الدالة كاملةً بـ : 

return true;


19- إصلاح خطأ Game Core بسبب حروب الروابط

نقوم بفتح  ملف cmd_general.cpp ونقوم بالبحث عن : 

    if (*arg2)
    {
        str_to_number(type, arg2);

        if (type >= GUILD_WAR_TYPE_MAX_NUM)
            type = GUILD_WAR_TYPE_FIELD;
    }


نقوم بالإستبدال بـ : 


    if (*arg2)
    {
        str_to_number(type, arg2);

        if (type >= GUILD_WAR_TYPE_MAX_NUM || type < 0)
            type = GUILD_WAR_TYPE_FIELD;
    }


20 - تعديل صلاحيات الأكواد من السورس
كمثال : نقوم بفتح ملف cmd.cpp 
{ "shutdown",    do_shutdown,        0,            POS_DEAD,    GM_HIGH_WIZARD    },


ونقوم بتعديل GM_HIGH_WIZARD للصلاحية التي نريد ، كمثال بعد التعديل : 

    { "shutdown",    do_shutdown,        0,            POS_DEAD,    GM_IMPLEMENTOR    },


21- إصلاح خطأ عدم إعطاء نقاط وضع بعد المستوى 91 

نقوم بفتح ملف char.cpp ونقوم بالبحث عن : 
if (GetLevel() < 91) PointChange(POINT_STAT, 1);


نقوم بتغيير 91 لأي رقم نريد (أقصى مستوى لسيرفرك)

ونقوم بالبحث عن (في نفس الملف) : 
    if(iLv <= 90)
        PointChange(POINT_STAT, ((MINMAX(1, iLv, 90) - 1) * 3) + GetPoint(POINT_LEVEL_STEP) - GetPoint(POINT_STAT));



ونقوم بتغيير 90 إلى الرقم الذي تريد (أقصى مستوى لسيرفرك)

22- إزالة الجرع عند زيادة المستوى 
نقوم بفتح ملف char.cpp ونقوم بالبحث عن : 


    if (GetLevel() <= 10)
        AutoGiveItem(27001, 2);
    else if (GetLevel() <= 30)
        AutoGiveItem(27002, 2);
    else
    {
        AutoGiveItem(27002, 2);
//        AutoGiveItem(27003, 2);
    }


يمكنك تعطيلهم أو حذفهم .

23- إصلاح خطأ فحص نسخة الكلاينت 
نقوم بفتح ملف config.cpp ونقوم بالبحث عن : 
if (version > date)


ونقوم بإستبدالها بـ : 
if (version != date)


نكتفي بهذا القدر ،،

كل الود ،،

والسلام خير ختام ~
تم تحرير الموضوع بواسطة :Dev Ahmed Shaban بتاريخ:22-06-2020 03:50 صباحا. سبب التعديل : تغيير العنوان ليتناسق مع باقي العناوين فقط


توقيع: sharqawy
" ما جادلت عالماً إلا غلبته ، وما جادلت جاهلاً إلا غلبني "

أفضل ملفات عربية للعمل عليها

يجب عليك التسجيل لمشاهدة الرابط يجب عليك التسجيل لمشاهدة الرابط

غير متواجد
معلومات الكاتب ▼
رقم العضوية : 10
المشاركات : 647
الجنس : ذكر
الدعوات : 1
يتابعهم : 4
يتابعونه : 25
الإجابات المقدمة : 16
الرصيد : 0$
قوة السمعة : 430
07-06-2020 07:07 مساء
[1]
ماشاءالله موضوع جميل
يعطيك العافيه ننتظر جديدك❤️

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

توقيع: itachi
discord

itachi#9057

itachi server file  v2 coming soon
غير متواجد
معلومات الكاتب ▼
رقم العضوية : 657
المشاركات : 120
الجنس : ذكر
الإنذارات : 1
يتابعهم : 0
يتابعونه : 1
الرصيد : 0$
قوة السمعة : 10
07-06-2020 07:30 مساء
[3]
أخي شرقاوي أريد أن أرفع لك ملف char_item وتشوف لي شو المشكله لو سمحت 
لما أقفل تغره الأكسير الخ ماتضبط لما أعمل كومبايل 
هاهوا رابط أتمنى تشوفو 
 https://mega.nz/file/VxEEhQIT#MjmR_r3MTRCqVG3isKx6UPCKk1VzNM5EWao01w7bjSA 


وشكرا لك على هذه الشروحات

غير متواجد
معلومات الكاتب ▼
رقم العضوية : 540
المشاركات : 102
الجنس : ذكر
الإنذارات : 3
يتابعهم : 0
يتابعونه : 2
الإجابات المقدمة : 4
الرصيد : 0$
قوة السمعة : 70
07-06-2020 07:45 مساء
[4]
المشاركة الأصلية كتبت بواسطة: CSS
ماشاءالله موضوع جميل
يعطيك العافيه ننتظر جديدك❤️


تسلم لمرورك نورت الموضوع

المشاركة الأصلية كتبت بواسطة: itachi
موضوع جميل من شخص أجمل


تسلم ، انت الجميل

توقيع: sharqawy
" ما جادلت عالماً إلا غلبته ، وما جادلت جاهلاً إلا غلبني "

أفضل ملفات عربية للعمل عليها

يجب عليك التسجيل لمشاهدة الرابط يجب عليك التسجيل لمشاهدة الرابط
غير متواجد
معلومات الكاتب ▼
رقم العضوية : 660
المشاركات : 17
الجنس : ذكر
يتابعهم : 0
يتابعونه : 0
الرصيد : 0$
قوة السمعة : 10
07-06-2020 07:53 مساء
[5]
أخى أنا أبى أفعل 6/7 فى فروزين بس ما لقيت دالة الى تقول عليها فى ملف char_item.cpp ؟؟

غير متواجد
معلومات الكاتب ▼
رقم العضوية : 540
المشاركات : 102
الجنس : ذكر
الإنذارات : 3
يتابعهم : 0
يتابعونه : 2
الإجابات المقدمة : 4
الرصيد : 0$
قوة السمعة : 70
07-06-2020 07:58 مساء
[6]
المشاركة الأصلية كتبت بواسطة: salim
أخي شرقاوي أريد أن أرفع لك ملف char_item وتشوف لي شو المشكله لو سمحت 
لما أقفل تغره الأكسير الخ ماتضبط لما أعمل كومبايل 
هاهوا رابط أتمنى تشوفو 
 https://mega.nz/file/VxEEhQIT#MjmR_r3MTRCqVG3isKx6UPCKk1VzNM5EWao01w7bjSA 


وشكرا لك على هذه الشروحات


تقدر تفتح موضوع في قسم المشاكل مع وضع صورة للمشكلة وما قمت بتعديله وإن شاء الله يتم حلها

توقيع: sharqawy
" ما جادلت عالماً إلا غلبته ، وما جادلت جاهلاً إلا غلبني "

أفضل ملفات عربية للعمل عليها

يجب عليك التسجيل لمشاهدة الرابط يجب عليك التسجيل لمشاهدة الرابط
غير متواجد
معلومات الكاتب ▼
رقم العضوية : 660
المشاركات : 17
الجنس : ذكر
يتابعهم : 0
يتابعونه : 0
الرصيد : 0$
قوة السمعة : 10
07-06-2020 08:01 مساء
[7]
المشاركة الأصلية كتبت بواسطة: JONIOR
أخى أنا أبى أفعل 6/7 فى فروزين بس ما لقيت دالة الى تقول عليها فى ملف char_item.cpp ؟؟

المشاركة الأصلية كتبت بواسطة: JONIOR
أخى أنا أبى أفعل 6/7 فى فروزين بس ما لقيت دالة الى تقول عليها فى ملف char_item.cpp ؟؟


....

غير متواجد
معلومات الكاتب ▼
رقم العضوية : 540
المشاركات : 102
الجنس : ذكر
الإنذارات : 3
يتابعهم : 0
يتابعونه : 2
الإجابات المقدمة : 4
الرصيد : 0$
قوة السمعة : 70
07-06-2020 08:03 مساء
[8]
المشاركة الأصلية كتبت بواسطة: JONIOR
المشاركة الأصلية كتبت بواسطة: JONIOR
أخى أنا أبى أفعل 6/7 فى فروزين بس ما لقيت دالة الى تقول عليها فى ملف char_item.cpp ؟؟

المشاركة الأصلية كتبت بواسطة: JONIOR
أخى أنا أبى أفعل 6/7 فى فروزين بس ما لقيت دالة الى تقول عليها فى ملف char_item.cpp ؟؟


....


رجاءً قم بنسخ ملف char_item.cpp هنا وقم بوضع الرابط 

 https://pastebin.com/ 
تم تحرير الموضوع بواسطة :sharqawy بتاريخ:07-06-2020 08:04 مساء.
توقيع: sharqawy
" ما جادلت عالماً إلا غلبته ، وما جادلت جاهلاً إلا غلبني "

أفضل ملفات عربية للعمل عليها

يجب عليك التسجيل لمشاهدة الرابط يجب عليك التسجيل لمشاهدة الرابط
غير متواجد
معلومات الكاتب ▼
رقم العضوية : 256
المشاركات : 428
الجنس : ذكر
يتابعهم : 16
يتابعونه : 8
الإجابات المقدمة : 19
الرصيد : 0$
قوة السمعة : 210
موقعي : زيارة موقعي
07-06-2020 08:07 مساء
[9]
المشاركة الأصلية كتبت بواسطة: sharqawy
السلام عليكم ورحمة الله وبركاته ،،

أقدم إليكم بعض شروحات السورس التي يبحث عنها معظم الناس .

1- تفعيل ميزات 6 و 7 في السورس

قم بفتح ملف char_item.cpp وقم بالبحث عن (مرتين) : 

                if (LC_IsEurope() || LC_IsSingapore() || LC_IsVietnam())
                    return false;


وقم بوضع علامتي // قبلهما (تعطيلهما حتى يظهروا باللون الأخضر)
أو حذفهما

2- تعديل نسبة نجاح الأحجار

قم بفتح ملف char_item.cpp وقم بالبحث عن :

for (i = 0; i < ITEM_SOCKET_MAX_NUM; ++i)
                    if (item2->GetSocket(i) >= 1 && item2->GetSocket(i) <= 2 && item2->GetSocket(i) >= item->GetValue(2))
                    {
                        if (number(1, 100) <= 30) // 30 Is Success Rate(30 هي نسبة النجاح)


بإمكانك تعديلها لأي رقم تريد .

3- إزالة ال3% ضرائب مبيعات عند بيع بند 
قم بفتح ملفي shop.cpp و shop_manager.cpp وقم بالبحث عن :
iVal = 3;

وقم بتغييرها إلى :
iVal = 0;


أو أي نسبة تريد.

4- تفعيل بيع بنود بسعر 0 يانغ (عند وضع بند سعره 0 يظهر أنك لا تملك ما يكفي من اليانغ)
نقوم بفتح ملف shop.cpp ونقوم بالبحث عن : 
if (r_item.price <= 0)


ونقوم بإستبدالها بـ :

if (r_item.price < 0)


5- تفعيل أمر pc.change_name
نقوم بفتح ملف questlua_pc.cpp

ونقوم بالبحث عن (في دالة pc_change_name) : 

        if ( LC_IsEurope() )
        {
            lua_pushnumber(L, 5);
            return 1;
        }


ونقوم بحذفها أو تعطيلها (وضع // أو /*)

6- تفعيل بيع كرات البركة وخام نحاس سحري لدى المتاجر 

نقوم بفتح ملف shop.cpp والبحث عن : 

        if (quest::CQuestManager::instance().GetEventFlag("hivalue_item_sell") == 0)
        {
            if (item->GetVnum() == 70024 || item->GetVnum() == 70035)
            {
                return SHOP_SUBHEADER_GC_END;
            }
        }


ونقوم بحذفه أو تعطيله (وضع علامتي //)
ونقوم بالبحث عن : 

        if (quest::CQuestManager::instance().GetEventFlag("hivalue_item_sell") == 0)
        {
            if (item.vnum == 70024 || item.vnum == 70035)
            {
                continue;
            }
        }


ونقوم بنفس الشيئ (تعطيل أو حذف)

7- تعطيل مميزات 6 و 7 للأزياء 

نقوم بفتح ملف char_item.cpp ونقوم بالبحث عن : 

case 71051:


وبداخلها نقوم بالبحث عن : 

if (!IsValidItemPosition(DestCell) || !(item2 = GetInventoryItem(wDestCell)))



ونضيف بعدها : 

            if (item2->GetType() == ITEM_COSTUME)
            {
                ChatPacket(CHAT_TYPE_INFO, LC_TEXT("You can't add 6&7 bonuses on costumes"));
                return false;
            }


8- تعديل وقت إغلاق السيرفر بأمر shutdown (الطبيعي 10 ثوانٍ)

نقوم بفتح ملف cmd_general.cpp ونقوم بالبحث عن : 

Shutdown(10);


قم بإستبدالها بـ : 

Shutdown(30); // Close After 30 Seconds


9- تعديل أقصى مستوى 

نقوم بفتح length.h في مجلد common ونقوم بالبحث عن : 

                    PLAYER_EXP_TABLE_MAX    = 120,
                    PLAYER_MAX_LEVEL_CONST    = 120,


ونقوم بإستبدال 120 بأي رقم نريده مثلاً 255

بعدها يجب عليك الذهاب إلى ملف constans.cpp في مجلد game
ونقوم بتعديل 

const DWORD exp_table_common[PLAYER_EXP_TABLE_MAX + 1] =


(الطبيعي انها 120 لكن اعتقد في سورس مارتي حتى مستوى 255) 
المهم أن هذه الدالة المسؤولة عن الخبرة لكل مستوى ويسهل تعديلها لا تحتاج إلى شرح فقط إضافة أسطر جديدة .

10 - تعطيل طلب زجاج الإدراك عند عرض بند 
نقوم بفتح ملف i*nput_main.cpp ونقوم بالبحث عن : 

int ProcessTextTag(LPCHARACTER ch, const char * c_pszText, size_t len)
{

ونقوم بإضافة 

 return 0; 


11- حل مشكلة أمر dice وظهور كتابة غريبة
نقوم بفتح ملف cmd_general.cpp ونقوم بالبحث عن : 
ACMD(do_dice)


ونقوم بإستبدال الدالة كاملة (من { إلى }) بـ :
ACMD(do_dice)
{
    ch->ChatPacket(CHAT_TYPE_INFO, "This command has been disabled.");
}



12- تعطيل إلقاء اليانغ على الأرض للاعبين 
نقوم بفتح ملف char_item.cpp ونبحث عن : 
bool CHARACTER::DropGold(int gold)


ونقوم بإستبدال محتوى الدالة كاملاً بـ : 
return false;


13- تعطيل الوقت بين العلاوات (60 ثانية واحيانا 10 دقائق)

نقوم بفتح ملف char_item.cpp ونقوم بالبحث عن : 

    if (pPC)
    {
        DWORD dwNowMin = get_global_time() / 60;

        DWORD dwLastChangeItemAttrMin = pPC->GetFlag(msc_szLastChangeItemAttrFlag);

        [ Bla Bla About Function ]
        pPC->SetFlag(msc_szLastChangeItemAttrFlag, dwNowMin);
    }


ونقوم بحذفه أو تعطيله .

14 - تعديل وقت إختفاء البنود الملقاة على الأرض
نقوم بفتح ملف item.h ونقوم بالبحث عن : 

void    StartDestroyEvent(int iSec=300);

ونقوم بتغيير ال300(ثانية) إلى أي رقم نريده
ونقوم بفتح ملف char_item.cpp ونقوم بالبحث عن : 

pkItemToDrop->StartDestroyEvent();


ونقوم بوضع أي رقم بداخل () ، كمثال : 
pkItemToDrop->StartDestroyEvent(500);


15- جعل الدواب قابلة للضرب من فوقها 

نقوم بفتح ملف char_item.cpp ونقوم بالبحث عن : 
case 20118:


ونقوم بإضافة

​case mount_vnum:

أسفلها حيث mount_vnum = كود الدابة ، كمثال : 


case 20118:
case 20249:
case 20250:


16- تعديل أقصى نقاط وضع (الطبيعي 90)

نقوم بالبحث عن : 
#define MAX_STAT 90


ونقوم بتغيير 90 لأي رقم نريد (ملحوظة هذا الرقم سيكون لل4 نقاط (حيوية-مناورة-ذكاء-قوة)

17- تعطيل أو تعديل الlimit_time (مدة عمل الملفات بعدها تتعطل)

للتعطيل : 
نقوم بفتح ملف limit_time.h ونقوم بالبحث عن : 
#define ENABLE_LIMIT_TIME

ونقوم بحذف السطر أو تعطيله 

للتعديل : 
نقوم بفتح ملف 
update_limit_time.py 

ونقوم بالبحث عن : 

limitTime = time.mktime(time.localtime()) + 3600 * 24 * 180 * 2


وتقوم بتعديل الأرقام كما تشاء (هذه المدة الحالية هي عامين 360 يوم)

بعدها نقوم بكتابة : 

gmake limit_time


في الputty أو الVirtual Box

18- تفعيل المشاعر والرقصات بدون قناع عاطفة 

نقوم بفتح ملف cmd_emotion.cpp ونقوم بالبحث عن : 

bool CHARACTER_CanEmotion(CHARACTER& rch)


ونقوم بإستبدال محتوى الدالة كاملةً بـ : 

return true;


19- إصلاح خطأ Game Core بسبب حروب الروابط

نقوم بفتح  ملف cmd_general.cpp ونقوم بالبحث عن : 

    if (*arg2)
    {
        str_to_number(type, arg2);

        if (type >= GUILD_WAR_TYPE_MAX_NUM)
            type = GUILD_WAR_TYPE_FIELD;
    }


نقوم بالإستبدال بـ : 


    if (*arg2)
    {
        str_to_number(type, arg2);

        if (type >= GUILD_WAR_TYPE_MAX_NUM || type < 0)
            type = GUILD_WAR_TYPE_FIELD;
    }


20 - تعديل صلاحيات الأكواد من السورس
كمثال : نقوم بفتح ملف cmd.cpp 
{ "shutdown",    do_shutdown,        0,            POS_DEAD,    GM_HIGH_WIZARD    },


ونقوم بتعديل GM_HIGH_WIZARD للصلاحية التي نريد ، كمثال بعد التعديل : 

    { "shutdown",    do_shutdown,        0,            POS_DEAD,    GM_IMPLEMENTOR    },


21- إصلاح خطأ عدم إعطاء نقاط وضع بعد المستوى 91 

نقوم بفتح ملف char.cpp ونقوم بالبحث عن : 
if (GetLevel() < 91) PointChange(POINT_STAT, 1);


نقوم بتغيير 91 لأي رقم نريد (أقصى مستوى لسيرفرك)

ونقوم بالبحث عن (في نفس الملف) : 
    if(iLv <= 90)
        PointChange(POINT_STAT, ((MINMAX(1, iLv, 90) - 1) * 3) + GetPoint(POINT_LEVEL_STEP) - GetPoint(POINT_STAT));



ونقوم بتغيير 90 إلى الرقم الذي تريد (أقصى مستوى لسيرفرك)

22- إزالة الجرع عند زيادة المستوى 
نقوم بفتح ملف char.cpp ونقوم بالبحث عن : 


    if (GetLevel() <= 10)
        AutoGiveItem(27001, 2);
    else if (GetLevel() <= 30)
        AutoGiveItem(27002, 2);
    else
    {
        AutoGiveItem(27002, 2);
//        AutoGiveItem(27003, 2);
    }


يمكنك تعطيلهم أو حذفهم .

23- إصلاح خطأ فحص نسخة الكلاينت 
نقوم بفتح ملف config.cpp ونقوم بالبحث عن : 
if (version > date)


ونقوم بإستبدالها بـ : 
if (version != date)


نكتفي بهذا القدر ،،

كل الود ،،

والسلام خير ختام ~

جميل ما شاء الله

غير متواجد
معلومات الكاتب ▼
رقم العضوية : 660
المشاركات : 17
الجنس : ذكر
يتابعهم : 0
يتابعونه : 0
الرصيد : 0$
قوة السمعة : 10
07-06-2020 08:11 مساء
[10]
تفضل+ عايز أقفل ثغرة الإكسير

يجب عليك التسجيل لمشاهدة الرابط
تم تحرير الموضوع بواسطة :JONIOR بتاريخ:07-06-2020 08:12 مساء.
غير متواجد
معلومات الكاتب ▼
رقم العضوية : 657
المشاركات : 120
الجنس : ذكر
الإنذارات : 1
يتابعهم : 0
يتابعونه : 1
الرصيد : 0$
قوة السمعة : 10
07-06-2020 08:16 مساء
[11]
لما تطلع لي مشكله بس التغره مابدها تنقفل كلما أركب كومبايل وأدخل سيرفر مايتغير شي تبقى التغره لهيك رفعتو لك وقولت لك شوفو لو سمحت لو ناقصو شي

غير متواجد
معلومات الكاتب ▼
رقم العضوية : 167
المشاركات : 681
الجنس : ذكر
الدعوات : 2
الإنذارات : 2
يتابعهم : 5
يتابعونه : 7
الإجابات المقدمة : 34
الرصيد : 0$
قوة السمعة : 420
07-06-2020 10:04 مساء
[12]
المشاركة الأصلية كتبت بواسطة: sharqawy
السلام عليكم ورحمة الله وبركاته ،،

أقدم إليكم بعض شروحات السورس التي يبحث عنها معظم الناس .

1- تفعيل ميزات 6 و 7 في السورس

قم بفتح ملف char_item.cpp وقم بالبحث عن (مرتين) : 

                if (LC_IsEurope() || LC_IsSingapore() || LC_IsVietnam())
                    return false;


وقم بوضع علامتي // قبلهما (تعطيلهما حتى يظهروا باللون الأخضر)
أو حذفهما

2- تعديل نسبة نجاح الأحجار

قم بفتح ملف char_item.cpp وقم بالبحث عن :

for (i = 0; i < ITEM_SOCKET_MAX_NUM; ++i)
                    if (item2->GetSocket(i) >= 1 && item2->GetSocket(i) <= 2 && item2->GetSocket(i) >= item->GetValue(2))
                    {
                        if (number(1, 100) <= 30) // 30 Is Success Rate(30 هي نسبة النجاح)


بإمكانك تعديلها لأي رقم تريد .

3- إزالة ال3% ضرائب مبيعات عند بيع بند 
قم بفتح ملفي shop.cpp و shop_manager.cpp وقم بالبحث عن :
iVal = 3;

وقم بتغييرها إلى :
iVal = 0;


أو أي نسبة تريد.

4- تفعيل بيع بنود بسعر 0 يانغ (عند وضع بند سعره 0 يظهر أنك لا تملك ما يكفي من اليانغ)
نقوم بفتح ملف shop.cpp ونقوم بالبحث عن : 
if (r_item.price <= 0)


ونقوم بإستبدالها بـ :

if (r_item.price < 0)


5- تفعيل أمر pc.change_name
نقوم بفتح ملف questlua_pc.cpp

ونقوم بالبحث عن (في دالة pc_change_name) : 

        if ( LC_IsEurope() )
        {
            lua_pushnumber(L, 5);
            return 1;
        }


ونقوم بحذفها أو تعطيلها (وضع // أو /*)

6- تفعيل بيع كرات البركة وخام نحاس سحري لدى المتاجر 

نقوم بفتح ملف shop.cpp والبحث عن : 

        if (quest::CQuestManager::instance().GetEventFlag("hivalue_item_sell") == 0)
        {
            if (item->GetVnum() == 70024 || item->GetVnum() == 70035)
            {
                return SHOP_SUBHEADER_GC_END;
            }
        }


ونقوم بحذفه أو تعطيله (وضع علامتي //)
ونقوم بالبحث عن : 

        if (quest::CQuestManager::instance().GetEventFlag("hivalue_item_sell") == 0)
        {
            if (item.vnum == 70024 || item.vnum == 70035)
            {
                continue;
            }
        }


ونقوم بنفس الشيئ (تعطيل أو حذف)

7- تعطيل مميزات 6 و 7 للأزياء 

نقوم بفتح ملف char_item.cpp ونقوم بالبحث عن : 

case 71051:


وبداخلها نقوم بالبحث عن : 

if (!IsValidItemPosition(DestCell) || !(item2 = GetInventoryItem(wDestCell)))



ونضيف بعدها : 

            if (item2->GetType() == ITEM_COSTUME)
            {
                ChatPacket(CHAT_TYPE_INFO, LC_TEXT("You can't add 6&7 bonuses on costumes"));
                return false;
            }


8- تعديل وقت إغلاق السيرفر بأمر shutdown (الطبيعي 10 ثوانٍ)

نقوم بفتح ملف cmd_general.cpp ونقوم بالبحث عن : 

Shutdown(10);


قم بإستبدالها بـ : 

Shutdown(30); // Close After 30 Seconds


9- تعديل أقصى مستوى 

نقوم بفتح length.h في مجلد common ونقوم بالبحث عن : 

                    PLAYER_EXP_TABLE_MAX    = 120,
                    PLAYER_MAX_LEVEL_CONST    = 120,


ونقوم بإستبدال 120 بأي رقم نريده مثلاً 255

بعدها يجب عليك الذهاب إلى ملف constans.cpp في مجلد game
ونقوم بتعديل 

const DWORD exp_table_common[PLAYER_EXP_TABLE_MAX + 1] =


(الطبيعي انها 120 لكن اعتقد في سورس مارتي حتى مستوى 255) 
المهم أن هذه الدالة المسؤولة عن الخبرة لكل مستوى ويسهل تعديلها لا تحتاج إلى شرح فقط إضافة أسطر جديدة .

10 - تعطيل طلب زجاج الإدراك عند عرض بند 
نقوم بفتح ملف i*nput_main.cpp ونقوم بالبحث عن : 

int ProcessTextTag(LPCHARACTER ch, const char * c_pszText, size_t len)
{

ونقوم بإضافة 

 return 0; 


11- حل مشكلة أمر dice وظهور كتابة غريبة
نقوم بفتح ملف cmd_general.cpp ونقوم بالبحث عن : 
ACMD(do_dice)


ونقوم بإستبدال الدالة كاملة (من { إلى }) بـ :
ACMD(do_dice)
{
    ch->ChatPacket(CHAT_TYPE_INFO, "This command has been disabled.");
}



12- تعطيل إلقاء اليانغ على الأرض للاعبين 
نقوم بفتح ملف char_item.cpp ونبحث عن : 
bool CHARACTER::DropGold(int gold)


ونقوم بإستبدال محتوى الدالة كاملاً بـ : 
return false;


13- تعطيل الوقت بين العلاوات (60 ثانية واحيانا 10 دقائق)

نقوم بفتح ملف char_item.cpp ونقوم بالبحث عن : 

    if (pPC)
    {
        DWORD dwNowMin = get_global_time() / 60;

        DWORD dwLastChangeItemAttrMin = pPC->GetFlag(msc_szLastChangeItemAttrFlag);

        [ Bla Bla About Function ]
        pPC->SetFlag(msc_szLastChangeItemAttrFlag, dwNowMin);
    }


ونقوم بحذفه أو تعطيله .

14 - تعديل وقت إختفاء البنود الملقاة على الأرض
نقوم بفتح ملف item.h ونقوم بالبحث عن : 

void    StartDestroyEvent(int iSec=300);

ونقوم بتغيير ال300(ثانية) إلى أي رقم نريده
ونقوم بفتح ملف char_item.cpp ونقوم بالبحث عن : 

pkItemToDrop->StartDestroyEvent();


ونقوم بوضع أي رقم بداخل () ، كمثال : 
pkItemToDrop->StartDestroyEvent(500);


15- جعل الدواب قابلة للضرب من فوقها 

نقوم بفتح ملف char_item.cpp ونقوم بالبحث عن : 
case 20118:


ونقوم بإضافة

​case mount_vnum:

أسفلها حيث mount_vnum = كود الدابة ، كمثال : 


case 20118:
case 20249:
case 20250:


16- تعديل أقصى نقاط وضع (الطبيعي 90)

نقوم بالبحث عن : 
#define MAX_STAT 90


ونقوم بتغيير 90 لأي رقم نريد (ملحوظة هذا الرقم سيكون لل4 نقاط (حيوية-مناورة-ذكاء-قوة)

17- تعطيل أو تعديل الlimit_time (مدة عمل الملفات بعدها تتعطل)

للتعطيل : 
نقوم بفتح ملف limit_time.h ونقوم بالبحث عن : 
#define ENABLE_LIMIT_TIME

ونقوم بحذف السطر أو تعطيله 

للتعديل : 
نقوم بفتح ملف 
update_limit_time.py 

ونقوم بالبحث عن : 

limitTime = time.mktime(time.localtime()) + 3600 * 24 * 180 * 2


وتقوم بتعديل الأرقام كما تشاء (هذه المدة الحالية هي عامين 360 يوم)

بعدها نقوم بكتابة : 

gmake limit_time


في الputty أو الVirtual Box

18- تفعيل المشاعر والرقصات بدون قناع عاطفة 

نقوم بفتح ملف cmd_emotion.cpp ونقوم بالبحث عن : 

bool CHARACTER_CanEmotion(CHARACTER& rch)


ونقوم بإستبدال محتوى الدالة كاملةً بـ : 

return true;


19- إصلاح خطأ Game Core بسبب حروب الروابط

نقوم بفتح  ملف cmd_general.cpp ونقوم بالبحث عن : 

    if (*arg2)
    {
        str_to_number(type, arg2);

        if (type >= GUILD_WAR_TYPE_MAX_NUM)
            type = GUILD_WAR_TYPE_FIELD;
    }


نقوم بالإستبدال بـ : 


    if (*arg2)
    {
        str_to_number(type, arg2);

        if (type >= GUILD_WAR_TYPE_MAX_NUM || type < 0)
            type = GUILD_WAR_TYPE_FIELD;
    }


20 - تعديل صلاحيات الأكواد من السورس
كمثال : نقوم بفتح ملف cmd.cpp 
{ "shutdown",    do_shutdown,        0,            POS_DEAD,    GM_HIGH_WIZARD    },


ونقوم بتعديل GM_HIGH_WIZARD للصلاحية التي نريد ، كمثال بعد التعديل : 

    { "shutdown",    do_shutdown,        0,            POS_DEAD,    GM_IMPLEMENTOR    },


21- إصلاح خطأ عدم إعطاء نقاط وضع بعد المستوى 91 

نقوم بفتح ملف char.cpp ونقوم بالبحث عن : 
if (GetLevel() < 91) PointChange(POINT_STAT, 1);


نقوم بتغيير 91 لأي رقم نريد (أقصى مستوى لسيرفرك)

ونقوم بالبحث عن (في نفس الملف) : 
    if(iLv <= 90)
        PointChange(POINT_STAT, ((MINMAX(1, iLv, 90) - 1) * 3) + GetPoint(POINT_LEVEL_STEP) - GetPoint(POINT_STAT));



ونقوم بتغيير 90 إلى الرقم الذي تريد (أقصى مستوى لسيرفرك)

22- إزالة الجرع عند زيادة المستوى 
نقوم بفتح ملف char.cpp ونقوم بالبحث عن : 


    if (GetLevel() <= 10)
        AutoGiveItem(27001, 2);
    else if (GetLevel() <= 30)
        AutoGiveItem(27002, 2);
    else
    {
        AutoGiveItem(27002, 2);
//        AutoGiveItem(27003, 2);
    }


يمكنك تعطيلهم أو حذفهم .

23- إصلاح خطأ فحص نسخة الكلاينت 
نقوم بفتح ملف config.cpp ونقوم بالبحث عن : 
if (version > date)


ونقوم بإستبدالها بـ : 
if (version != date)


نكتفي بهذا القدر ،،

كل الود ،،

والسلام خير ختام ~


يعطيك الف عافية مواضيعك مهمة جداً ^^

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

غير متواجد
معلومات الكاتب ▼
رقم العضوية : 231
المشاركات : 310
الجنس : ذكر
الدعوات : 2
الإنذارات : 1
يتابعهم : 0
يتابعونه : 11
الإجابات المقدمة : 25
الرصيد : 0$
قوة السمعة : 340
موقعي : زيارة موقعي
07-06-2020 10:57 مساء
[13]
يعطيك العافية موضوع قيم

تم تحرير الموضوع بواسطة :xDean بتاريخ:07-06-2020 10:59 مساء.
غير متواجد
معلومات الكاتب ▼
رقم العضوية : 424
المشاركات : 200
الجنس : أنثى
يتابعهم : 2
يتابعونه : 4
الرصيد : 0$
قوة السمعة : 15
07-06-2020 11:03 مساء
[14]
الف شكر ♥ 
لكن رقم  16 نسيت تقول أسم الملف , أرجو التعديل وشكرا ♥

توقيع: Selena

"A failure is not a loss. It’s a gain. You learn. You change. You grow."
غير متواجد
معلومات الكاتب ▼
رقم العضوية : 540
المشاركات : 102
الجنس : ذكر
الإنذارات : 3
يتابعهم : 0
يتابعونه : 2
الإجابات المقدمة : 4
الرصيد : 0$
قوة السمعة : 70
07-06-2020 11:07 مساء
[15]
تم تحديث الموضوع (إضافة اسم الملف في رقم 16).


توقيع: sharqawy
" ما جادلت عالماً إلا غلبته ، وما جادلت جاهلاً إلا غلبني "

أفضل ملفات عربية للعمل عليها

يجب عليك التسجيل لمشاهدة الرابط يجب عليك التسجيل لمشاهدة الرابط
غير متواجد
معلومات الكاتب ▼
رقم العضوية : 782
المشاركات : 33
الجنس : ذكر
يتابعهم : 3
يتابعونه : 0
الرصيد : 0$
قوة السمعة : 10
08-06-2020 12:22 صباحا
[16]
ممكن تحديد عدد اللاعبين يعني اخليه عدد محدد يقدرو يدخلو



المواضيع المتشابهه
فتح الموضوع بصفحة مستقلة ترقيع [تجميعة]رقع ثغرات السورس - Part II
sharqawy - بتاريخ: 29-07-2020 06:29 صباحا
الردود : 5
الزوار : 552
عدد المشاهدات:
عدد الردود:
552
5
فتح الموضوع بصفحة مستقلة ترقيع [تجميعة] رقع ثغرات السورس - Part I
sharqawy - بتاريخ: 02-06-2020 07:07 مساء
الردود : 16
الزوار : 837
عدد المشاهدات:
عدد الردود:
837
16