![]() |
#11
|
|||
|
|||
![]() Quote:
![]() Quote:
Quote:
As far as the spirit experience gain, it is all done internally. The only thing that can be done is to scale the base spirit experience, which you see in their ATOM's or increase the sp_addexp_spirit counter via items / skills. If you look at SPIRITS_COMMON.LUA you'll see the function spirit_after_hit where it computes the base spirit experience from the spirit's ATOM (this is exp_add) and then modifies it with sp_addexp_spirit (this is exp_bonus) and then it uses the Attack library function add_exp to take the exp_add * exp_bonus and determine internally what the actual experience rise is. The internal spirit experience gain formula is listed in the King's Bounty user manual, which can be downloaded somewhere here on the forum. I implemented this formula (and this is the exact same formula you see in CW for the spirit experience during battle), but found that it doesn't quite give you the same experience from this formula so there's something going on internally that is slightly different than what is described. That is why you see that I list an experience range during combat because I don't know exactly what the add_exp Attack library function is doing in the C++ code. Some of this variability is also related to whether you are using a "static" versus "dynamic" spirit ability. Static abilities are ones that don't do any damage while dynamic abilities are ones where you do. Since the experience gain formula factors in unit deaths when using it I can't know beforehand (except maybe for mass damage abilities) how much damage you're going to do. So for static abilities I should know how much experience you should get, but found that it could be off by 1, hence the range (i.e. 4-5 experience) for even static abilities. Well, anyway, that's probably too much information, but that's what's going on there. Matt /C\/C\ |
|
|