Jump to content

Sacred 2 Downloads - DIMITRIUS'S CM PATCH ADDENDUM - 2023


Recommended Posts

10 minutes ago, Insomnia said:

What's the extra version?

There's a folder within the Addendum archive called 'Extra'. It contains files for a personal version of the Addendum(that is - the one I play).

In order to return max skills back to 20 you have to copy\paste  'Extra\system\s2logic.dll' into the game's 'system' folder and extract 'Extra\pak\graphics28.zip\Windows\Attributes.xml' into the game's 'pak\Windows\' directory.

  • Like! 1
Link to comment

Congrats on new release.  Some notes and questions about spells.

  1. enemy_gen_battlejump: eiStateName = "cSMBFJump", isn't able to cause any damage last I checked. Unless you fixed it in the code.
  2. enemy_grp_fireshield: is missing the entry0
  3. enemy_troll_rock: has a spell token "et_chance_knockdown" - is this doing anything?
  4. does the "duration" line in spell entries do anything? How does it interact with "et_duration_sec" or "et_duration_boost" tokens? Is it additive, overwritten, ignored?
  5. Even without any code changes, can magicType and spelllogictype can be safely deleted from all entries? I'm trying to clean up the script.
  6. Instill Belief: What exactly is the "et_convert_chance" doing? Did you make a code change to it?
  7. Paralyzing Dread: spellClass = "cSpellInqEntsetzen" is just a lost cause then?

Some spells got new spellcontroltypes:

  1. "in_in_pranger" changed from "eCAtype_a_weapon_attack" to "eCAtype_a_effect_attack" - I tried this in D2F some time ago and most of the debuffs stopped working IIRC.
  2. "he_ar_bannkreis" changed from "eCAtype_a_effect_self" to "eCAtype_a_effect_location_start" - this seems like it will now be targetable instead of centered on the High Elf, and also able to be cast from far away.  Did you end up keeping the spell banishment intact?
  3. "tw_cc_todesspiesse" changed from "eCAtype_b_boost_self" to "eCAtype_a_effect_self" - what's going on here?

Behaviour.txt: it looks like every single entry got a new line, that forces the attacker to reevaluate what the closest enemy is, every 2 attacks?

Link to comment
1 hour ago, Flix said:

does the "duration" line in spell entries do anything? How does it interact with "et_duration_sec" or "et_duration_boost" tokens? Is it additive, overwritten, ignored?

I tested that with an inquisitor a while back and I think it sets the duration of the fx if not et_duration_xxx. E.g. dislodged spirit spell fx is bound to the duration of the spell, but levin array fx is bound to the duration entry. I'm not completely sure though, I didn't stop the time, but it felt longer when I increased it.

 

EDIT: Just tested that:

https://I.imgur.com/3gccNfv.jpg

only works for certain spellclasses and -controltypes and levin arrays default spellcontroltype, "eCAtype_a_effect_attack", is not one of them. So I'm not sure that duration is the factor for that effect, it could just be that the levin array fx is longer/shorter on different spellclasses by default.

Edited by Lindor
  • Thanks! 1
Link to comment
2 hours ago, Flix said:

enemy_gen_battlejump: eiStateName = "cSMBFJump", isn't able to cause any damage last I checked. Unless you fixed it in the code.

The spell uses the spellClass = "cSpellSkStampfSprung". Area damage application is resolved by it's (edited) functions.

2 hours ago, Flix said:

enemy_grp_fireshield: is missing the entry0

Some old experiment leftover. Fixed.

2 hours ago, Flix said:

enemy_troll_rock: has a spell token "et_chance_knockdown" - is this doing anything?

Doesn't look it - no traces of that token value checks. Curiously enough, there's a check for a doublehit bonus. So it very well may be, that et_chance_knockdown was meant to inflict a double hit.

2 hours ago, Flix said:

does the "duration" line in spell entries do anything? How does it interact with "et_duration_sec" or "et_duration_boost" tokens? Is it additive, overwritten, ignored?

It sets the duration for 'some' spellclasses. The "et_duration_boost" acts as a multiplier,  /10(if I'm not mistaken).

2 hours ago, Flix said:

Instill Belief: What exactly is the "et_convert_chance" doing? Did you make a code change to it?

it's a ( et_convert_chance - 1000 )/10 chance to convert a primary target + ( et_convert_chance - 1000 )/20 to convert targets in the area of effect for the duration. While converted, targets adhere to the 'minion' mechanics and are not subject to NPC damage output decrease from balance.txt. Their kills give experience to the Seraphim.

2 hours ago, Flix said:

Paralyzing Dread: spellClass = "cSpellInqEntsetzen" is just a lost cause then?

In it's present state - yes. I may use it for a mortifying stigma conversion, that I've just conceived.

2 hours ago, Flix said:

"in_in_pranger" changed from "eCAtype_a_weapon_attack" to "eCAtype_a_effect_attack" - I tried this in D2F some time ago and most of the debuffs stopped working IIRC.

So far I've seen no such occurrence, but that bears checking.

2 hours ago, Flix said:

"he_ar_bannkreis" changed from "eCAtype_a_effect_self" to "eCAtype_a_effect_location_start" - this seems like it will now be targetable instead of centered on the High Elf, and also able to be cast from far away.  Did you end up keeping the spell banishment intact?

The spell is still cast from the Elf's position(part of the spellclass mechanics), but the temporary buff fx is now visible. The banishment property is intact.

2 hours ago, Flix said:

"tw_cc_todesspiesse" changed from "eCAtype_b_boost_self" to "eCAtype_a_effect_self" - what's going on here?

I have no idea as to why it was a boost in the fisrt place, but the particular chance was necessary to keep the spell in line with the item property 'proc-on-cast' chances mechanics.

3 hours ago, Flix said:

Behaviour.txt: it looks like every single entry got a new line, that forces the attacker to reevaluate what the closest enemy is, every 2 attacks?

Part of the 'taunting' solution, as well as 'et_force_CC'.

  • Thanks! 1
Link to comment

Thanks for the info.  I'm removing magictype and spelllogictype then.

A follow up to behaviour: Did you make code changes to cEnemySimpleExtended?  I only ask because when I just tested the new "spell_wirbelwind" behaviour (no binaries) the DM's Tornado stopped seeking enemies and just wandered aimlessly.  I narrowed down the source of the change to the use of cEnemySimpleExtended.

Link to comment
22 hours ago, Flix said:

"spell_wirbelwind" behaviour (no binaries) the DM's Tornado stopped seeking enemies and just wandered aimlessly.

The cause is, that for 'some' reason I reverted the change before saving behaviour.txt the correct entry is:

newBehaviour = {
  name         = "spell_wirbelwind",
state0="name=cCreatureIdleAI",
state1="name=cEnemyMoveAI,range=500.0,formation=cHordeFormation,onattack=cEnemySimpleExtended",
state2="name=cEnemySimpleExtended,range=500,attacksToChangeTarget=50,force_nearest=1",
state3="name=cEnemyFear,onattack=cEnemySimpleExtended",
defaultState="cEnemyMoveAI",
setState0="condition=onEnemyNear,feasibility=1000,if_state=cEnemyMoveAI,state=cEnemySimpleExtended,fear_state=cEnemySimpleExtended,rangeoverload=500",
groupbehaviour="name=cFormationTeam",
}
mgr.createBehaviour(newBehaviour);

Edited by dimitrius154
Link to comment
5 hours ago, dimitrius154 said:

the correct entry is:

Yes, that is much better.  I increased its speed in creatureinfo.txt for a little extra boost.

What was the reason for changing all to cEnemySimpleExtended?  Just to allow for the possibility of special move ai?

Link to comment
6 hours ago, Flix said:

What was the reason for changing all to cEnemySimpleExtended?

There's a very limited base AI ID selection, and I needed a dumb melee AI ID for the "taunt' solution. Just so happens, that cEnemySimple was the best candidate.

Link to comment

An interesting find: root effect application mechanics does not work in an expected way. Due to {insert your favorite excuse} of the coder responsible, it's not the effect value that's being checked, but the presence of the effect on a creature... which leads to a 100% success probability, unless a block, or a reflect takes precedence.

Well, every loss is an acquisition, as they say. A solution, that would enact chance-based root success, as well as root effect application, root break chance, stun break chance item properties is in progress)

  • Like! 1
Link to comment

That would explain the observed behavior where root CA's nearly always root the opponent.

So is Break Roots working?  What I've seen is that the CA will allow the character to move (assuming it is a movement CA) but the roots persist after movement.

And... Break Stun?  So this would be a chance for a CA to be cast and it will interrupt the stun effect before the duration expires?  Is this any different that Debuff Duration -X%?  And is there really a call for that on items, assuming Block Stun and Reflect Stun actually work?

Link to comment

The way stun works is, ahem, 'special':

Once the target is affected by BONUS_STUN(chance-based) two bonus types get assigned to it - BONUS_IAMSTUNNED and BONUS_IAMSTUNIMMUNE.

BONUS_IAMSTUNNED duration is 'DurationStun'. BONUS_IAMSTUNIMMUNE duration is 'DurationStunImmunity'. Both are received from balance.txt. It's prudent to assume, that 'DurationStunImmunity' should be at least 1 second greater, then 'DurationStun'.

  • Haha 1
Link to comment
1 hour ago, dimitrius154 said:

@FlixI have a well-founded suspicion, that balance.txt\PotionHealCooldown is not working at all, there's no hitpoint-restoration decrease from potion spamming.

[EDIT], Yeah, it actually doesn't. The calculation is in place but, due to an incorrect check value, it is omitted.

Link to comment

Hello all,

I have a little problem with extra mod (for 20 skill) :)

When I try to lunch Sinister Predator, my game crash.

 And when I remplace spells.txt by the orignal, it's work :/

I DL all fill today, have you a fix for me plz ? :)

  • Like! 1
Link to comment
23 hours ago, Vladddddd said:

Hello all,

I have a little problem with extra mod (for 20 skill) :)

When I try to lunch Sinister Predator, my game crash.

 And when I remplace spells.txt by the orignal, it's work :/

I DL all fill today, have you a fix for me plz ? :)

Welcome to the forums!

:)

 

gogo

Link to comment
  • The title was changed to DIMITRIUS'S CM PATCH ADDENDUM - 2023
  • This topic was featured and unfeatured
  • The topic was featured

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...
Please Sign In or Sign Up