Jump to content

Effect Probabilities


Recommended Posts

Don't know if this is documented somewhere that I've foolishly overlooked, utterly trivial, or worth a more statistically valid test, but after running a five hundred hit sample using a weapon with the following effects in the first extended header:


0-1% play animation1 on pretarget, play soundfile1 on self

2-10% 13 points of stunning damage on pretarget, play animation2 on self

11-100% 3 points of stunning damage on pretarget, add three hitpoints to self


animation1 occured four times, soundfile1 occured three times, none of which were coincident.


13 points of stunning damage coincided with animation2 in only once, though each occured about forty times individually.


Zero coincidences of animation1/13 damage/3 damage and zero coincidences of soundfile1/animation2/add three hitpoints.


After rebuilding the weapon to use three spells comprising the separate effects at each listed probability and running another roughly five hundred hit sample (didn't count this time, lazy) there were zero coincidences of spell1(at 0-1%), spell2(at 2-10%), and spell3(at 11-100%).


So it's at least plausable that the engine is rolling one die per target type and applying the results distinctly, rather than rolling a single 1-100 die and applying its results to every effect probability regardless of target type.


Experiment so crucial!

Link to comment

Vampiric Touch Bhaalspawn innate (spin106) touching Minsc in his secret places:


16 damage dealt, 21 temporary hitpoints gained

15 damage dealt, 16 temporary hitpoints gained

18 damage dealt, 26 temporary hitpoints gained


Looks as though the segregation of possible values into discrete effects totally fails to enforce correspondance between damage dealt and hitpoints gained; replacing the spell with a dummy shell spell which calls a few dozen manque spells is probably the only "fix".


Is the Maximum Hitpoints Opcode defective outside of all of my local installs? 21 and 26 are not licit values of temporary hitpoints for a level seven caster, and Foebane+5 has not infrequently granted four hundred temporary hitpoints after half a dozen swings....

Link to comment

Tricky :p


Whipped up a spell using the Unholy Blight .pro, target self, with four effects each set to 0-25% probability and with targets set to self, pre-target, all living, and party - and got each one to occur independantly. So I think the engine only attends to how the target is designated and not what the target actually is.

Link to comment

I'm looking at the SAREVEFF.EFF, and it seems there might be something with the effect resource data that is used to tie effects together for probabilities.


For SAREVEFF, all of them have 00 00 00 68 86 40 00 05. I'd almose think it was some leftover from another template used to make it, except that 86 and 05 wouldn't ever be a valid ASCII code.

Link to comment

While I don't know what that information in the resource data is meant to do, it definately doesn't forcibly link the Sarevokchuckle.wav (which plays on target self) to the remainder of the 97-100% Deathbringer Assault effects (all pre-target) as they happen independantly.


Also - and this is at least vaguely interesting - after giving Sarevok a Hat-of-GiveItemSarevokeff and a weapon that does something 1-10% of time, ten percent of hits will have two stun effects along with whatever the weapon was meant to do; what you'll never see is a single stun. So while the engine is content to roll one die per target type, it balks at rolling more than one.


Would still like to know what the cruft is, though.

Link to comment

I am not sure where this should be documented, but possibly in the Probability fields in IE file formats (itm, spl, eff). There may be some discrepancies in the BG2 engine as noted above, but even more significantly, the Probability fields seem to be ignored entirely in BG1 as noted here.

Link to comment


This topic is now archived and is closed to further replies.

  • Create New...