Jump to content

malufett

Retired Staff
  • Content Count

    657
  • Joined

  • Last visited

  • Days Won

    29

Everything posted by malufett

  1. as you said you make matk stronger then edit the matk part of the skills matk = battle->calc_magic_attack(src, target, skill_id, skill_lv, mflag).damage; to something like: (reduce by 50%) matk = battle->calc_magic_attack(src, target, skill_id, skill_lv, mflag).damage / 2; (reduce by 75%) matk = battle->calc_magic_attack(src, target, skill_id, skill_lv, mflag).damage * 75 / 100; or something else..but take note the high int and vit you have and the low vit and int a target has, the more damage it can deal..
  2. and addition to that is to reiterate the command for a delay of a certain seconds probably the duration of the effect and only trigger if a character is in view.. but the best solution is to modify the map and add the falls...
  3. Then how about if player just put str 100 and got extra str from equipment. i mean, the addition of such status +20. is there accepted too? if str 100 +20 instead additional status costume EQ then it will be 120. its counted..as long as its sum is 120 or more then you're fit to the criteria..
  4. yes because the item description says that having 120 or more strength you weapon atk turns 300 else it will have the default atk of 0? or 20 I think..hehehe...
  5. make sure they satisfy the condition of having 120 more str because obviously atk is the main factor for damage in renewal so weapon weight is not sufficient enough..
  6. use this : sc_start2(src, SC_CLOAKING, 100, 3, 1, skill->get_time(AS_CLOAKING, 3)); then change this: case SC_CLOAKING: //Avoid cloaking with no wall and low skill level. [Skotlex] //Due to the cloaking card, we have to check the wall versus to known //skill level rather than the used one. [Skotlex] //if (sd && val1 < 3 && skill_check_cloaking(bl,NULL)) if( sd && pc->checkskill(sd, AS_CLOAKING) < 3 && !skill->check_cloaking(bl,NULL) ) return 0; break; to case SC_CLOAKING: if( val2 ) break; //Avoid cloaking with no wall and low skill level. [Skotlex] //Due to the cloaking card, we have to check the wall versus to known //skill level rather than the used one. [Skotlex] //if (sd && val1 < 3 && skill_check_cloaking(bl,NULL)) if( sd && pc->checkskill(sd, AS_CLOAKING) < 3 && !skill->check_cloaking(bl,NULL) ) return 0; break;
  7. try this clif->skill_damage(src,bl,tick, status_get_amotion(src), 0, -30000, 1, 2040, skill_lv, 6);
  8. try this { if (getiteminfo(getequipid(EQI_ARMOR),5)==16 && @bgiven == 0) { bonus bAgi,5; set @bgiven,1;} if (getiteminfo(getequipid(EQI_GARMENT),5)==4 && @bgiven == 0) {bonus bVit,5; set @bgiven,1;} },{},{set @bgiven,0;} note: not yet tested...and the effect now is unstackable...
  9. yes..but there is a counter part min atk will get more lower.. as you seen in your video your min atk turns hundred while in previous its thousands due to the increase of variance so ideally for sinx type suggested weapon for dual weilding is lvl1 or 2 weapon because of small amount of variance and doesn't increase much in EDP so you always(60~70%) deal max damage while in katar type suggested is a lvl 4 and crit build for a massive damage...so for an EDP type sinx its not recommended that you will be using SB or CI in PVP and take note sinx type is easy to have an aspd of 189+ if proper geared and buffed...
  10. some skills have to reduce their damage modifier to half such as sonic blow, counter slash & cross impact.. if( sc && sc->data[SC_EDP] ){ skillratio -= addedratio; if( skill_id == AS_SONICBLOW || skill_id == GC_COUNTERSLASH || skill_id == GC_CROSSIMPACT ) skillratio >>= 1; skillratio += addedratio; } and also damage variance become more wide/large when EDP is active since it only boost equip atk and weapon atk
  11. I don't think 1 login and 1 char and 2 map is possible since there is no map server selection only char server selection...
  12. oh thanks...It seems that I deleted some lines about eatk.. will fixed it shortly.. here you have it
  13. here is a pseudo since I didn't master yet npc scripting,,, onInit:noregister = 0;end;onRegister:if( noregister == 0)//start registerend;onTeamWin:noregister = 1;//starttimerend;onTimer15000:noregister = 0;end;
  14. I know now your problem.. it is related to this (Thanks to mofo) its not about the variance I already check it...its about the card increasing in skills where it was invoke twice.. and I also updated Spiral Peirce it should now work 100% like official..
  15. its already available in latest Herc... and we are about to start the level expansion..
  16. ah..ok.. BTW spiral pierce is using iRo's suggested formula..anyway I'll update that into official ones..I just need to figure out something about it..
  17. @Michieru what bow are you using? maybe that is the reason why I can't confirm the problem...then let me investigate...
  18. well as I said its hard to determined min and max in official unless you will use level 1 weapon where the variances is low..I also do some debugging in aegis as sir Yommy taught me it gave me same result with weapon level 1 to 4 min and max.. if still doubting I'll show you some code of aegis.. if ( rhandpower ) { v5 = 1; v6 = CPC::GetITPEquipedWeapon(v4); if ( v6 ) v5 = v6->vfptr->GetItemLevel(v6); if ( bRangeWeapon )// check if weapon is a ranged { v8 = (double)rhandpower; v9 = (double)(5 * rhandpower * v5) / 100.0; v10 = (double)(rhandpower * (signed int)CPC::GetDexValue(v7)); } else { v8 = (double)rhandpower; v9 = (double)(5 * rhandpower * v5) / 100.0; v10 = (double)(rhandpower * (signed int)CPC::GetStrValue(v7)); } v11 = v10 / 200.0; //str bonus *(_DWORD *)(v1 + 8) = (signed int)(v8 - v9 + v11);//min damage *(_DWORD *)(v1 + 12) = (signed int)(v8 + v9 + v11);//max damage } same with Hercules if ( bl->type == BL_PC && watk->atk ){ if ( flag&2 ) dstr = status_get_dex(bl); else dstr = status_get_str(bl); variance = 5.0f * watk->atk * watk->wlv / 100.0f; strdex_bonus = watk->atk * dstr / 200.0f; min = (watk->atk - (int)(variance + strdex_bonus)) + watk->atk2; max = (watk->atk + (int)(variance + strdex_bonus)) + watk->atk2;}else if( watk->atk ){
  19. variation?min and max? we have the exact formula in what official used.. its just a matter of random number official uses a wide range number of random from 0 to 20000 whereas we uses 0 to 100 that is why its hard for you to determine max and min..if you can just use Maximize Power to see result..hehe
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.