case GN_MAKEBOMB: case GN_MIX_COOKING: //make_per = 3000; //As I can see this is not affectd by dex or int stfu //(Caster’s Job Level / 4) + (Caster’s LUK / 2) + (Caster’s DEX / 3) //item diffuculty is vit, str, int => 40, dex=>50, luk,agi=>30 [lighta custom] { const int item_diff[11][2] = { {12429,400}, {12430,400}, {12431,400}, {12432,500}, {12433,300}, {12434,300}, {13260,300}, {13261,300}, {13262,300}, {13263,300}, {13264,400}, }; int randr = rnd_value(30,150), B=0; ARR_FIND(0, ARRAYLENGTH(item_diff), i, item_diff[i][0]==nameid); if(i>ARRAYLENGTH(item_diff)) B = randr + 400; //default item diff is 400 if not found else B = randr + item_diff[i][1]; make_per = 100*s_job_level/4 + 100*status->luk/2 + 100*status->dex/3; //this is actually A if(make_per >= B+30) qty = 10+rnd()%3; // 10-12 food else if(make_per >= B+10) qty = 10; else if(make_per == B-10) qty = 8; else if(make_per >= B-30) qty = 5; else if(make_per >= B-50){ qty = 0; make_per=0; //mark for failure } ShowInfo("nameid=%d, i=%d, itemdiff_size=%d make_per=%d, item_diff=%d, rndvalue=%d, B=%d, qty=%d\n", nameid,i,ARRAYLENGTH(item_diff),make_per,item_diff[nameid][1],B-item_diff[nameid][1],B,qty); }