Aller au contenu

Photo

{Request} A combat_h script change (for Ogre DB)


  • Veuillez vous connecter pour répondre
Aucune réponse à ce sujet

#1
OneBadAssMother

OneBadAssMother
  • Members
  • 1 086 messages
Hey all, I'm just hoping a modder would help me change one core script. I would have done it myself but as an amateur modder in DA, I can't figure out how to make it work =(

The problem I'm having is that I've noticed that DW/WS warriors tend to fire the Ogre leapup/stab deathblow animation much more then a high level 2H warrior (DW fires it almost all the time). I wanted to find out why. After a lot of tests I've released that 2H warriors only seem to fire the deathblow when the Ogre is at a VERY low health, otherwise they play the rather boring slash left/right animation.

Reason for this sems to be that a highlevel 2H does a lot of damage in a single hit compared to other setups. And this in turn seems to screw up a particular condition for the deathblow. I went into the toolset to check on the animations but then found this on the combat_h script:

// ---------------------------------------------
                            // Special treatment for ogre
                            // Reason: The ogre, unlike all other special bosses
                            //         has a second, non spectacular deathblow.
                            //         if we specify 0, there's a 50% chance that
                            //         one is played, which we don't want in this
                            //         case, so we're passing the id of the
                            //         spectacular one instead.
                            // ---------------------------------------------
                            if (bSpecial && nAppearance == APR_TYPE_OGRE)
                            {
                                stRet.nDeathblowType = 5; // 5 - ogre slowmo deathblow
                            }
                            else
                            {
                                stRet.nDeathblowType = 0;  // 0 - auto select in engine;
                            }


The one thing I wish to edit out is the bspecial condition and see how
things go for ogre deathblows. The reason is because of this:

  bSpecial = _GetRelativeResourceLevel(oTarget, PROPERTY_DEPLETABLE_HEALTH) < SPECIAL_BOSS_DEATHBLOW_THRESHOLD;


I am very convinced that this is the problem, as for a high level 2H-handed warrior, which takes chunks out of enemy health with one hit a second instead of 3 lower damage hits a second.... ends up doing enough damage to skip the condition due to the SPECIAL_BOSS_DEATHBLOW_THRESHOLD.

So I'm hoping someone could help me make the script of that section would look simply like:

if (nAppearance == APR_TYPE_OGRE)


Modifié par OneBadAssMother, 22 décembre 2009 - 12:43 .