Pagina 1 di 1
Domanda inerenti all tasso di cattura dei pet.
Inviato: 25/08/2018, 18:38
da Yaku
come da domanda, volevo sapere i tassi di cattura dei mob nel server. perchè sto avendo molte difficoltà nella cattura di zealotus e quindi volevo sapere principalmente come erano gestiti i tassi di cattura su questo server.
Re: Domanda inerenti all tasso di cattura dei pet.
Inviato: 26/08/2018, 12:51
da Devil
E' veramente una formula complessa da calcolare e non ti saprei dire neanche io esattamente come venirne a capo, le uniche cose che posso dirti è che questa di seguito è la formula che il nostro server utilizza e che l'unico dato fisso che abbiamo è "
pet_catch_rate" che è settato a
100:
Codice: Seleziona tutto
pet_catch_rate = (pet->capture + (sd->status.base_level - md->level)*30 + sd->battle_status.luk*20)*(200 - get_percentage(md->status.hp, md->status.max_hp))/100;
if(pet_catch_rate < 1)
pet_catch_rate = 1;
if(battle_config.pet_catch_rate != 100)
pet_catch_rate = (pet_catch_rate*battle_config.pet_catch_rate)/100;
if(rnd()%10000 < pet_catch_rate) {
achievement_update_objective(sd, AG_TAMING, 1, md->mob_id);
unit_remove_map(&md->bl,CLR_OUTSIGHT);
status_kill(&md->bl);
clif_pet_roulette(sd,1);
intif_create_pet(sd->status.account_id, sd->status.char_id, pet->class_, mob_db(pet->class_)->lv, pet->EggID, 0, pet->intimate, 100, 0, 1, pet->jname);
} else {
clif_pet_roulette(sd,0);
sd->catch_target_class = PET_CATCH_FAIL;
}
Re: Domanda inerenti all tasso di cattura dei pet.
Inviato: 26/08/2018, 23:52
da Yaku
Devil ha scritto: ↑26/08/2018, 12:51
E' veramente una formula complessa da calcolare e non ti saprei dire neanche io esattamente come venirne a capo, le uniche cose che posso dirti è che questa di seguito è la formula che il nostro server utilizza e che l'unico dato fisso che abbiamo è "
pet_catch_rate" che è settato a
100:
Codice: Seleziona tutto
pet_catch_rate = (pet->capture + (sd->status.base_level - md->level)*30 + sd->battle_status.luk*20)*(200 - get_percentage(md->status.hp, md->status.max_hp))/100;
if(pet_catch_rate < 1)
pet_catch_rate = 1;
if(battle_config.pet_catch_rate != 100)
pet_catch_rate = (pet_catch_rate*battle_config.pet_catch_rate)/100;
if(rnd()%10000 < pet_catch_rate) {
achievement_update_objective(sd, AG_TAMING, 1, md->mob_id);
unit_remove_map(&md->bl,CLR_OUTSIGHT);
status_kill(&md->bl);
clif_pet_roulette(sd,1);
intif_create_pet(sd->status.account_id, sd->status.char_id, pet->class_, mob_db(pet->class_)->lv, pet->EggID, 0, pet->intimate, 100, 0, 1, pet->jname);
} else {
clif_pet_roulette(sd,0);
sd->catch_target_class = PET_CATCH_FAIL;
}
grazie mille per la tua disponibilità anche stavolta devil, comunque io direi che si può chiudere la discussione, devo solo avere un pò più di fortuna evidentemente