PenUltima Online Forum Index Official Core: 096.7
Official Core: 097 2008-02-26
Donate towards the POL web hosting bill!
 POL Home   FAQ   Search    Memberlist   Usergroups    Register    Profile   Log in to check your private messages   Log in
boost??

 
Post new topic   Reply to topic    PenUltima Online Forum Index -> General Help (095)
Display posts from previous:   

Author Message
mastadava1



Joined: 02 Mar 2008
Posts: 12

PostPosted: Sun Mar 02, 2008 9:55 pm    Post subject: boost?? Reply with quote

ok, with 100 magery i boost my stats with agility of 10!.. then, i boost my magery to 1000 and i boost of 10 too!! did someone know why? (its the same thing with all boost spell)

Author Message
cucciola3000



Joined: 25 Aug 2006
Posts: 11

PostPosted: Mon Mar 03, 2008 6:36 am    Post subject: Reply with quote

See in

pkg/skill/spell/bless.src

Author Message
mastadava1



Joined: 02 Mar 2008
Posts: 12

PostPosted: Mon Mar 03, 2008 12:04 pm    Post subject: Reply with quote

ok.. i change the line 17 "PlayObjectCenteredEffect( cast_on, FX_BLESS_EFFECT, 10,10);" to "PlayObjectCenteredEffect( cast_on, FX_BLESS_EFFECT, 100,100);"and compiled after... and notthing change...

Author Message
Tritan



Joined: 04 Feb 2006
Posts: 136
Location: Illinois, USA

PostPosted: Mon Mar 03, 2008 5:17 pm    Post subject: Reply with quote

Did you unload or restart your server after you made the change?

Author Message
ncrsn



Joined: 10 Feb 2006
Posts: 168

PostPosted: Mon Mar 03, 2008 6:16 pm    Post subject: Reply with quote

PlayObjectCenteredEffect() is not the function you are looking for.

This code snippet is from Distro 095, spells/bless.src:
Code:

var magery := GetEffectiveSkill(caster, SKILLID_MAGERY);
  var mod_amount := GetModAmount(magery);
  var duration := GetModDuration(magery);
  if(CanMod(cast_on, "str"))
   DoTempMod(cast_on, "str", mod_amount, duration);
  endif
  if(CanMod(cast_on, "dex"))
   DoTempMod(cast_on, "dex", mod_amount, duration);
  endif
  if(CanMod(cast_on, "int"))
   DoTempMod(cast_on, "int", mod_amount, duration);
  endif


If you want to change amount of strength, dexterity and/or intelligence casting should give, mod_amount is the variable to do that. It is return value of GetModAmount()-function, so look into it; or, if you want to add only local boost, change mod_amount to something else, like this:

Code:

var magery := GetEffectiveSkill(caster, SKILLID_MAGERY);
  var mod_amount := 10 * GetModAmount(magery);
  var duration := GetModDuration(magery);
  if(CanMod(cast_on, "str"))
   DoTempMod(cast_on, "str", mod_amount, duration);
  endif
  if(CanMod(cast_on, "dex"))
   DoTempMod(cast_on, "dex", mod_amount, duration);
  endif
  if(CanMod(cast_on, "int"))
   DoTempMod(cast_on, "int", mod_amount, duration);
  endif


Now, in theory, you would get ten times more boost out of bless-spell (might be just a little overpowered, but what do I know).

If you want to change this easily for all instances, check out and modify pol/scripts/include/statMod.inc.

Edit:
Function GetModAmount():
Code:

function GetModAmount(magery)
  var mod_amount := CInt(RandomInt(3) +(magery/10));
  if(mod_amount > 10)
    mod_amount := 10;
  endif
  return mod_amount;
endfunction

Notice that if mod_amount is higher than 10 (because your magery is 1000, this if will be true), it's value will be lowered to 10. Changing this might have unexpectable results in other scripts relying on this if-statement, so you should carefully check other scripts using this function if you are to modify it.

Author Message
mastadava1



Joined: 02 Mar 2008
Posts: 12

PostPosted: Mon Mar 03, 2008 8:10 pm    Post subject: Reply with quote

ohh thx i change the magery/10 to magery/6 and the max of 10 to 65.. thxx!

Post new topic   Reply to topic    PenUltima Online Forum Index -> General Help (095) All times are GMT - 4 Hours
Page 1 of 1

 




Powered by phpBB © 2001, 2005 phpBB Group :: Theme & Graphics by GHS & Scott E. Royalty