Перейти к содержанию

скилл


Salfer

Рекомендуемые сообщения

Emu\db\skill_db.txt

381,5,8,1,0,0x40,0,5,1,yes,0,0,0,misc,0,		SN_FALCONASSAULT,Falcon Assault

изменяю на

381,5,8,1,-1,0x40,0,5,1,yes,0,0,0,weapon,0,		SN_FALCONASSAULT,Falcon Assault

ничего не изменяется даже если вставить характеристики других скиллов Х_Х


// 05 element (0 - neutral, 1 - water, 2 - earth, 3 - fire, 4 - wind, 5 - poison,
// 6 - holy, 7 - dark, 8 - ghost, 9 - undead, -1 - use weapon element
// -2 - use endowed element, -3 - use random element.)

Изменено пользователем Salfer
Ссылка на комментарий
Поделиться на другие сайты

В общем, я понял в чем проблема.

Менять тип атаки в skill_db недостаточно, ибо фальконассаулт все равно вызывает skill_attack(BF_MISC,src,src,bl,skillid,skilllv,tick,flag);

К тому же рассчет урона идет в функции battle_calc_misc_attack.

Я попробовал перенести куски кода из функции в функцию, но видимо что-то упустил, т.к атака без элементального оружия упала в среднем на 1,1к (при статах @allstat 100).

Но цели я добился, при атаке хайорка водным ножиком, урон увеличился почти в 2 раза ( 175% если верить таблице).

Направления я вам дал, попробуйте разобраться. Что-то не получится - пишите, поможем.

  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

что-то не пойму я ничего......

misc это всегда нейтральным бить будет....

s_ele = skill_get_ele(skill_num, skill_lv);

начал изменять, Фа стал бить случайным элементом Х_х

думаю это должно помочь

if skill_num != SN_FALCONASSAULT || !(flag&BF_WEAPON)

но я непониаю как и куда это добавить Х_Х

Изменено пользователем Salfer
Ссылка на комментарий
Поделиться на другие сайты

Ну я могу сказать, что я делал.

Но опять же, при этом способе теряется 1,1к урона.

skill.c (skill_castend_damage_id)

	case NPC_DARKBREATH:
clif_emotion(src,E_AG);
case SN_FALCONASSAULT:
case PA_PRESSURE:
case CR_ACIDDEMONSTRATION:
case TF_THROWSTONE:
case NPC_SMOKING:
case GS_FLING:
case NJ_ZENYNAGE:
skill_attack(BF_MISC,src,src,bl,skillid,skilllv,tick,flag);
break;

заменил на

	case NPC_DARKBREATH:
clif_emotion(src,E_AG);
// case SN_FALCONASSAULT:
case PA_PRESSURE:
case CR_ACIDDEMONSTRATION:
case TF_THROWSTONE:
case NPC_SMOKING:
case GS_FLING:
case NJ_ZENYNAGE:
skill_attack(BF_MISC,src,src,bl,skillid,skilllv,tick,flag);
break;
+ case SN_FALCONASSAULT:
+ skill_attack(BF_WEAPON,src,src,bl,skillid,skilllv,tick,flag);
break;

battle.c

Закомментил часть здесь (battle_calc_misc_attack)

	case HT_BLITZBEAT:
//case SN_FALCONASSAULT:
//Blitz-beat Damage.
if(!sd || (skill = pc_checkskill(sd,HT_STEELCROW)) <= 0)
skill=0;
md.damage=(sstatus->dex/10+sstatus->int_/2+skill*3+40)*2;
if(mflag > 1) //Autocasted Blitz.
nk|=NK_SPLASHSPLIT;

/*if (skill_num == SN_FALCONASSAULT)
{
//Div fix of Blitzbeat
skill = skill_get_num(HT_BLITZBEAT, 5);
damage_div_fix(md.damage, skill);

//Falcon Assault Modifier
md.damage=md.damage*(150+70*skill_lv)/100;
}*/
break;

Добавил соотв код сюда (battle_calc_weapon_attack)

		switch (skill_num)
{ //Calc base damage according to skill
+ case SN_FALCONASSAULT:
+ //Blitz-beat Damage.
+ if(!sd || (skill = pc_checkskill(sd,HT_STEELCROW)) <= 0)
+ skill=0;
+ wd.damage=(sstatus->dex/10+sstatus->int_/2+skill*3+40)*2;
+ //Div fix of Blitzbeat
+ skill = skill_get_num(HT_BLITZBEAT, 5);
+ damage_div_fix(wd.damage, skill);
+ //Falcon Assault Modifier
+ wd.damage=wd.damage*(150+70*skill_lv)/100;
+ break;
case NJ_ISSEN:

  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

в skill.c

case SN_FALCONASSAULT:
case PA_PRESSURE:
case CR_ACIDDEMONSTRATION:
case TF_THROWSTONE:
case NPC_SMOKING:
case GS_FLING:
case NJ_ZENYNAGE:
case GN_THORNS_TRAP:
case GN_BLOOD_SUCKER:
case GN_HELLS_PLANT_ATK:
skill_attack(BF_MISC,src,src,bl,skillid,skilllv,tick,flag);
break;

замени на

case PA_PRESSURE:
case CR_ACIDDEMONSTRATION:
case TF_THROWSTONE:
case NPC_SMOKING:
case GS_FLING:
case NJ_ZENYNAGE:
case GN_THORNS_TRAP:
case GN_BLOOD_SUCKER:
case GN_HELLS_PLANT_ATK:
skill_attack(BF_MISC,src,src,bl,skillid,skilllv,tick,flag);
break;
case SN_FALCONASSAULT:
skill_attack(BF_WEAPON,src,src,bl,skillid,skilllv,tick,flag);
break;

Изменено пользователем Incubus
  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

да я уже нашёл Х_Х

рылся в батле а она в статусах Х_Х

БОЛЬШОЕ СПАСИБО!!! :rolleyes:

GG1.JPG

тесты прошли успешно!! :lol:

Изменено пользователем Salfer
Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...
Яндекс.Метрика