Шанс варки ЭДП и Потов, Зелий | Назад в меню |
Шанс варки ЕДП (если он не порезан) описывается формулой:
шанс варки ЕДП = [1000 + (20*DEX) + (10*LUK) ]/50 %
Шансы варки зелий алхимиком описываются формулой:
case AM_PHARMACY: // Potion Preparation - reviewed with the help of various Ragnainfo sources [DracoRPG]
case AM_TWILIGHT1:
case AM_TWILIGHT2:
case AM_TWILIGHT3:
make_per = pc_checkskill(sd,AM_LEARNINGPOTION)*50
+ pc_checkskill(sd,AM_PHARMACY)*300 + sd->status.job_level*20
+ (status->int_/2)*10 + status->dex*10+status->luk*10;
if(merc_is_hom_active(sd->hd)) {//Player got a homun
int skill;
if((skill=merc_hom_checkskill(sd->hd,HVAN_INSTRUCT)) > 0) //His homun is a vanil with instruction change
make_per += skill*100; //+1% bonus per level
}
switch(nameid){
case 501: // Red Potion
case 503: // Yellow Potion
case 504: // White Potion
make_per += (1+rand()%100)*10 + 2000;
break;
case 970: // Alcohol
make_per += (1+rand()%100)*10 + 1000;
break;
case 7135: // Bottle Grenade
case 7136: // Acid Bottle
case 7137: // Plant Bottle
case 7138: // Marine Sphere Bottle
make_per += (1+rand()%100)*10;
break;
case 546: // Condensed Yellow Potion
make_per -= (1+rand()%50)*10;
break;
case 547: // Condensed White Potion
case 7139: // Glistening Coat
make_per -= (1+rand()%100)*10;
break;
//Common items, recieve no bonus or penalty, listed just because they are commonly produced
case 505: // Blue Potion
case 545: // Condensed Red Potion
case 605: // Anodyne
case 606: // Aloevera
default:
break;
Пояснения по коду.
Шанс варки = (Learning_Potion_Lvl*50 + Pharmacy_lvl*300 + Job_Lvl*20 + Int*5 + (Dex + Luk)*10 + X*100 + A)/100 %
, где X - это уровень умения Change Instruction вашего гомункула (доступно только для ванилов, для остальных - 0), A - это показатель, зависящий от продукта варки, для
Red Potion
Yellow Potion
White Potion
A = (1+rand()%100)*10 + 2000, где rand()%100 рандомное число от 0 до 100;
Alcohol
A = (1+rand()%100)*10 + 1000;
Bottle Grenade
Acid Bottle
Plant Bottle
Marine Sphere Bottle
A = (1+rand()%100)*10;
Condensed Yellow Potion
A = (1+rand()%50)*10;
Condensed White Potion
Glistening Coat
A = (1+rand()%100)*10;
Blue Potion
Condensed Red Potion
Anodyne
Aloevera
A = 0.
rand()%X - это рандомное число от 0 до X
Вверх | Назад в меню |