Jump to content

Flix

Sacred 2 Enhanced Edition

Recommended Posts

@Charon117 Well the good news is I could increase his attack reach, so he can now strike from further away.  He's benefiting from Chance Opponents Cannot Evade as well.  He's still kind of... dumb and walks around a lot in between smacking enemies.

I was also able to make him self destruct when the duration expired.

The problem with that is that I have changed "hireling_brave"(dumb melee, no spells) in EE to allow for spell use, because the spellClass that all the new minions use ("cSpellSkKohorte",) is tied to that behavior.

If leave the behaviour.txt file as it in current EE, the Sakkara will self-destruct immediately on summoning.  If I change behaviour.txt back to vanilla, all new minions (Battle Daemon, Sublime Guardian, Labyrinthine Warlord. Sentinel Construct) will lose all their special moves.

To allow a self-destructing Sakkara, without the other minions losing all their special attacks, either:

1) The behavior tied to "cSpellSkKohorte", could be changed to "hireling_brave_ex"

OR

2) The behavior tied to "cSpellGodChaos" (when the clock is ticking) could be changed to some other behavior that is dumb and allows no spells.

Unfortunately that can't be done without editing the code itself.

@dimitrius154  Do you have the time or will to attempt a code change like that? 

Or, to approach it from another angle, can you remind me: which behavior is linked to spellClass = "cSpellDmBeschuetzer" in CM 1.60?  I seem to recall it having some deficiency, and it is abandoned in 1.60 and my mods.  But maybe I can re-appropriate it for my minions without any need for code changes.  I could then return "hireling_brave" back to its normal "dumb" self for the Sakkara.

Share this post


Link to post
1 hour ago, Flix said:

I seem to recall it having some deficiency, and it is abandoned in 1.60 and my mods.

It's "hireling_brave_ex". The perceived problem might have been the presence of a utility spell, which could not have been cast, due to "hireling_brave_ex" being capable of casting offensive spells only.

  • Thanks! 1

Share this post


Link to post
18 hours ago, Flix said:

He's benefiting from Chance Opponents Cannot Evade as well.  He's still kind of... dumb and walks around a lot in between smacking enemies.

One of the reasons for that is I think his lackluster movement speed. Basically any mob can outrun the Sakkara demon. Which means if the Sakkara demon targets a specific mob, but that mob gets aggroed by something else the demon spends most of his time repathing and simply walking around.

Do you remember that I said I would diversify the size of the mobs ? I originally intended to make elite mobs 0.2 modelsize bigger, but when I found out that elites were having extreme difficulties to find a valid attackspot it basically made the player invulnerable, since elites couldnt handle the size increase. So instead I made normal mobs -0.1 smaller, and elites 0.1 bigger. Through this, the elites still lost some efficiency, but not as much as compared to 0.2 . Why am I telling you this ? Basically as long as the Sakkara demon remains a big unit, he will have difficulty with the pathing, basically because once a mob has a target he seldomly switches it, and if that target is faster, you will get a lot of idle time.

Due to the size the Sakkara demon will always be an inefficient unit, but if you want to make him more effective, increase the movement speed appropriatelly to his  size. If hes faster, he should a least get a few attacks in.

I think the main reason why he is so slow is that its not fun to get chased down by your own summon and killed :/.

 

On an unrelated related note, I always found the demon boss underwhelming, the main quest one.

Share this post


Link to post
1 hour ago, Charon117 said:

Due to the size the Sakkara demon will always be an inefficient unit, but if you want to make him more effective, increase the movement speed appropriatelly to his  size. If hes faster, he should a least get a few attacks in.

I think the main reason why he is so slow is that its not fun to get chased down by your own summon and killed :/.

I'm working on improving him. I've increased his movement speed as well as his reach and chance to hit.  In addition, I'm testing a "chance to hit additional opponents" so his attacks will have an area of effect.  If you've got the latest version installed I can upload a test update for you shortly.

1 hour ago, Charon117 said:

On an unrelated related note, I always found the demon boss underwhelming, the main quest one.

I noticed you listed him as the least-threatening, which was surprising to me. He's killed me before.  What makes him weak, in your eyes?  Do his melee attacks seem to have low damage or low chance to hit?  Do his spells underwhelm, or perhaps it seems like he just goes down too easily?  Or does it seem like an AI thing?

Share this post


Link to post
6 minutes ago, Flix said:

I noticed you listed him as the least-threatening, which was surprising to me. He's killed me before.  What makes him weak, in your eyes?  Do his melee attacks seem to have low damage or low chance to hit?  Do his spells underwhelm, or perhaps it seems like he just goes down too easily?  Or does it seem like an AI thing?

This is not only an EE oppinion, he has been the the most underwhelming boss since 2.43, against all characters.

 

First of all you have to understand what makes a boss dangerous. The reason ANYTHING in the game is dangerous is if it can switch to a damage type you cant defend against. Here are a few examples:

Gar´Kollosus: You might think this is an easy enemy, but you constantly switches between high arcane damage, and high physical damage. Now defending against either of those is easy, but you cant defend against both of them at the same time. If you max your arcane defense you are open on your physical side, and visus verca.

Dragons in general: You might think the most dominant damage type for dragons is fire. You thought wrong. Its arcane. What makes dragons so dangerous is that they seamlessly switch between physical, arcane and fire damage, basically giving you a 1/3 of the protection you could have if you could predict what damage type they were gonna use. If you are up against dragons maximise your arcane defense after your physical one. The reason ? You can manually dodge the fire attacks, but his paw attacks are physical/arcane.

Kraken: has at least 3 different damage types. Physical, Arcane, Poison. Also has an instant KO attack.

Last Guardian: Triple Damage. `Enough said.

...

Now lets get to the demon boss.

His first flaw is simply that he is a pure physical/fire attacker, which makes all his damage types incredibly predictable. There was never a case were full fire reliqus ( not even legendary ones ) was full protection enough.

His melee attacks are an even worse joke than the Sakkara Demon. And thats without -60% AS Paralyzing Dread, and -100% stats reduction with Dislodged Soul. I have 13k hp, and I think I have seen him do 200 burn damage with his attack. His melee attacks mostly dont hit.

One of his other design flaws are his "use spell X when lower than Y health". Sounds great in concept, but what does that help you when I can kill him faster than he can cast his spells ? His healing ability doesnt reliably trigger because his sickness like so many other AI behaviour is "I ll just wait until spell X is read to cast - ups im dead".

Here is where it gets obnoxious. One of his good abilities is to summon elementals. Sounds good right ? SYCE ! Because of the size of the boss he constantly falls into the "how do I reach this spot ?" pattern, trying to reach a valid spot simply because his model is too big. An upgraded melee range would do him good there, as this would create more valid attacking spots. Anyway, while he walks around you can kill the elementals and then its buisness like usual.

His only killer move is eruption, where you get burned with a DoT. But like I said its fire, and you can maximise your fire protection easily, because you expect fire damage. Furthermore you can also dodge the spots ahead of time, if you really need to. I mostly never had -DoT%, and still had a very easy time pressing space, now imagine the same scenario with 50% -Dot% on my char.

Summa summarum the fight usually goes like this: Above 50% health > Try to hit attacks which dont do any damage, and never hit. Below 50% health "Should I use a spell ? Ups im dead."

Lackluster movement speed, no range, too big of a model, too much delay in spell decision making, too little hp, too much walking around, no damage, very bad armour protection, why would I use fire against a fire demon ?, no hit chance. There isnt really any good point about the demon boss. A standard endgame elite demon would pose more of a challenge. I assume the developers made him easy to beat so that his healing ability doesnt lame the game.

 

 

Need a video ?

  • Thanks! 1

Share this post


Link to post
40 minutes ago, Thert said:

What am I doing wrong?

The spellClass must support "et_range_area".  Generally speaking, if this token isn't already present in a spell entry, then the spell won't support it.

What spell are you editing? We may be able to get creative and change the spellClass.

 

52 minutes ago, Charon117 said:

Need a video ?

No, that's plenty to work with, thanks.  It should be easy enough to rectify most of that and make him terrifying.

I'm still fine tuning Sakkara so I will commence with the Carnach as well.

 

Hit a snag with the AI again as well.  @dimitrius154 Are you sure "cSpellDmBeschuetzer" didn't get linked to some other behavior at some point, like "hireling_distance"?  When I switched my minions over to this spellclass, the 1-second melee CA is no longer the wonder that it used to be.  Now, the minions rush in, use their spell, use the melee CA once, then immediately wander away before returning again.  I see them constantly going in and out of combat/idle AI that wasn't happening before.

Share this post


Link to post
3 hours ago, Flix said:

didn't get linked to some other behavior at some point, like "hireling_distance"

Hmm, what AI does the summoned creature have in creatures.txt? If I recall correctly, I've managed to implement a solution, where the AI is not hardcoded, but retrieved from the creatures.txt for "cSpellDmBeschuetzer" and "cSpellSkKohorte".  That allows for a mixture of summoned creatures with varied AI.

Edited by dimitrius154

Share this post


Link to post
23 minutes ago, dimitrius154 said:

Hmm, what AI does the summoned creature have in creatures.txt?

The ones I have been testing have "Hireling_brave", in their creature entries.

I just ran some tests, and the binaries I have definitely have "cSpellDmBeschuetzer" linked to "Hireling_mage_no_defense".  I tested this by swapping in the "states" for hireling_brave_ex into each of the hireling behaviors.  With these values plugged into "Hireling_mage_no_defense", suddenly my minions were back to normal, attacking consistently and er... bravely.

Sadly, I don't dare edit "Hireling_mage_no_defense" since"cSpellHeFeuerdaemon" is linked to it, IIRC.  Several other minions (new and old) use this spellclass, and I see 5 instances in quest.txt as well.

27 minutes ago, dimitrius154 said:

If I recall correctly, I've managed to implement a solution, where the AI is not hardcoded, but retrieved from the creatures.txt for "cSpellDmBeschuetzer" and "cSpellSkKohorte".  That allows for a mixture of summoned creatures with varied AI.

I'm guessing that breakthrough came after CM 1.60. It doesn't seem to be in effect without Addendum.

Share this post


Link to post
10 minutes ago, Flix said:

"Hireling_mage_no_defense"

Oh, this one should work as well, ah, yes, I remember now, it was a solution for the utility spell usage, make sure the cooldowns intersect, so there's no dead zone. The behaviour.txt entry should be:

newBehaviour = {
  name         = "Enemy_mage_no_defense",
state0="name=cCreatureIdleAI",
state1="name=cEnemyMoveAI,range=500.0,formation=cHordeFormation,onAttack=cEnemyMagician",
state2="name=cFleeAI,range=200.0",
state3="name=cEnemyMagician,doDefense=0",
state4="name=cSpecialMoveAI",
state5="name=cEnemyFear,onattack=cEnemyMagician",
defaultState="cEnemyMoveAI",
setState0="condition=onEnemyNear,if_state=cEnemyFear,feasibility=1000,state=cEnemyMagician,range=350.0",
setState1="condition=onEnemyNear,if_state=cEnemyMoveAI,feasibility=1000,state=cEnemyMagician,fear_state=cEnemyFear,range=500.0",
setState2="condition=onGroupMemberAttack,if_state=cEnemyMoveAI,feasibility=1000,state=cEnemyMagician",
groupbehaviour="name=cFormationTeam",
}
mgr.createBehaviour(newBehaviour);

Hmm, now that I think of it, the cEnemyFear entry does not look correct for a summon. Should probably make a copy of the entry for all associated creatures.txt entries, then remove set state1 for the "Enemy_mage_no_defense" proper.

Edited by dimitrius154

Share this post


Link to post
24 minutes ago, Flix said:

I'm guessing that breakthrough came after CM 1.60. It doesn't seem to be in effect without Addendum.

Hmm, yes, just checked the jumps, the solution was not present in the 1.60 iteration.

 

Share this post


Link to post
51 minutes ago, dimitrius154 said:

Hmm, now that I think of it, the cEnemyFear entry does not look correct for a summon. Should probably make a copy of the entry for all associated creatures.txt entries, then remove set state1 for the "Enemy_mage_no_defense" proper.

No luck yet. When copying those values into "Hireling_mage_no_defense" minions now stand idle, not moving or engaging enemies at all.  Will have to revisit tomorrow, it is bed time here.

Share this post


Link to post

Is there any chance to make the hitbox model smaller, instead of the whole model ? The giantbats have a far too big hitbox model for their model.

 

Nothing to hurry, but the giantbats attacks could use some x3 LL multiplier on their attacks.

Edited by Charon117

Share this post


Link to post
4 hours ago, Charon117 said:

Is there any chance to make the hitbox model smaller, instead of the whole model ? The giantbats have a far too big hitbox model for their model.

It's the "logic bounding box" section of the itemtype entry:

  logicBox = {
    minx=-40.769, miny=-19.184, minz=75.082, 
    maxx=43.315, maxy=20.823, maxz=137.961, 

I already cut these values down for bats, rats and many other enemies in 2.2., with IMO a noticeable effect.  Feel free to reduce them even more.

Share this post


Link to post
13 hours ago, dimitrius154 said:

Hmm, now that I think of it, the cEnemyFear entry does not look correct for a summon.

Ok, I've resolved it. I ended up making "Hireling_mage_no_defense" identical to "Hireling_brave_ex".  The more cowardly minions like the High Elf's Fire Demon are a little too "brave" now, but an increased evade chance helps keep them alive.  They also attack much more consistently.  Also, in spite of expectations, minions are still able to cast non-offensive spells like buffs and self-healing.

There were only two quest creatures that used this behavior, Hansi (Blind Guardian), who benefits from being more brave anyway, as he is immortal, and Alchemist Letos (quest: Out of the Test Tube), who I gave the "CM_Begleiter_feige" behavior instead to keep him alive.

All in all, I'd say this all worked out for the best. The Sakkara Demon self-destructs now at the end of his duration, and all summoned minions have the best AI behavior they've had since the mod's release.  :smile:

  • Respect! 1

Share this post


Link to post
1 hour ago, Flix said:

All in all, I'd say this all worked out for the best. The Sakkara Demon self-destructs now at the end of his duration, and all summoned minions have the best AI behavior they've had since the mod's release.  :smile:

:thumbsup:

Share this post


Link to post
1 hour ago, Flix said:

Also, in spite of expectations, minions are still able to cast non-offensive spells like buffs and self-healing

Ah, good. Some AI have hardwired behaviour dependencies in s2logicai.dll.

Edited by dimitrius154

Share this post


Link to post

@Charon117  Would you please install the attached test update on your EE 2.3 install, and test the new Sakkara Demon, as well as try fighting against the Carnach?  Let me know what you think.

P.S. This update is only for "Enhanced Spells" module currently.

Contents of this test update:

  • Improved combat AI for all summoned minions. They should now attack consistently, with minimal time spent "deciding" what to do.
  • Battle Daemon (Inquisitor) and her 2 upgraded forms each have different un-summoning FX now.
  • Fire Demon & Mage's Familiar (High Elf): Due to the new "aggressive" minion behavior, these summons have increased evade chance, physical damage mitigation, and chance to block melee.
  • Divine Gift: Sakkara - Increased the Sakkara Demon's strength, intelligence, movement speed, attack speed, and chance to hit. Its melee attacks have further reach, increased damage, chance for critical hits, chance to burn, and can strike multiple opponents at once. The Sakkara Demon no longer turns against the player when the duration expires. Instead, it self-destructs in a fiery explosion that damages enemies.
  • The Carnach now has increased movement speed, vitality, chance for critical hits, and chance to burn. Its melee attacks have further reach and inflict additional magic damage. It has also learned the Pole Arms skill, which will increase its attack speed and attack value.

S2 EE 2.4 Test.zip

Share this post


Link to post

Hi. I´m just testing this mod and I´ve noticed that magic staves doesn´t shoot anymore (yes, I have taken the skill Magic Staves). I was planning on making a Dual Wield Magic Staff Seraphim, using the Pelting Strikes, for the extra range the staves give (hitting enemies several meters away from you), but with this mod that doesn´t work anymore. I have the latest patch and CM 160. I´ve tried both the vanilla spells and the Enhanced Spells version, and it´s the same result. Same thing with the Dryad. When I disable the mod, staff-shooting works again. 

Is this intended? Or just an unforseen consequence? 

Whichever, it´s a shame as I really liked that the seraphim could do a bit longer ranged Pelting Strikes. The Dryads "Kill-everything-for-a-mile" build, or the Inquisitors Ruthless Mutilation build are a bit overkill, but the seraphim is well balanced in that aspect, she gets some ranged hits, but is still limited to the strikes PE does. 

On the other hand, I like the new CA´s in Enhanced Skills. The Sonic Vortex is amazing, and might just have to replace the ranged Pelting Strikes setup.

  • Like! 1

Share this post


Link to post
1 hour ago, ric7202 said:

Hi. I´m just testing this mod and I´ve noticed that magic staves doesn´t shoot anymore (yes, I have taken the skill Magic Staves)

Thanks for trying the mod and writing back.  You don't need the skill post-CM 1.60. Staves shoot projectiles by default.

I'm not seeing any issues with staff projectiles with EE 2.3 freshly downloaded and applied to my game.

Can you upload your character please so I can try it?

  • Like! 1

Share this post


Link to post

Seems I've been out of the loop for awhile. I seem to always manage to find my way back here though. Had Sacred 2 on my mind lately and been meaning to revisit. Gonna have to do some research but this Enhanced Edition mod someone caught my interest. 

Always looking to find new ways to replay Sacred 2, either it be the Community Mod, or what else. It's just a shame Unbended never saw the light of day, and less said about Sacred 3 the better. I still haven't found an open world style APRG in that fills the mold that Sacred 2 has done to this very day. Nothing else seems to come close, unless I'm simply not looking hard enough. 

Although I'm glad Darkmatters is still here and the love for Sacred 2 will always have a home here.

  • Like! 1

Share this post


Link to post
7 hours ago, Flix said:

Thanks for trying the mod and writing back.  You don't need the skill post-CM 1.60. Staves shoot projectiles by default.

I'm not seeing any issues with staff projectiles with EE 2.3 freshly downloaded and applied to my game.

Can you upload your character please so I can try it?

Thx for the quick reply :-) 

Well, without the EE 2.3 the staves work just fine and shoots projectiles as they should.

Are there different versions of EE 2.3?

In the GME I activated the main file first, then the Superspawn. 

 

I tried to upload a file "RicsLvl17Dryad" under Ice & Blood Misc, but it needs approval from a moderator. 

Share this post


Link to post
6 hours ago, ric7202 said:

I tried to upload a file "RicsLvl17Dryad" under Ice & Blood Misc, but it needs approval from a moderator. 

I got the file.  She had two staves, they both worked fine as far as shooting projectiles when I tested it.  It's got to be something wrong with your install, I can't imagine what it could be.  All I can say is redownload and reinstall it.

Share this post


Link to post

Hello!

1. Big thanks to you guys, dimitri, jwizz and flix, for finding out what was going on with the skeletons. ^^

2. I just tested with a shadow warrior and it works great.

2 a) The skeletons never stand idle deciding what to do, basicly rushing from one enemy to the next. Best thing about it: Before, when skeletons saw an enemy in a spot they couldn't reach by foot, they would just froze. They didn't react to any other enemy anymore. Right now, they still freeze, but seem capable of unfreeze again after some seconds, targeting another enemy. That is a great improvement!

2 b) The armor works. :) May I ask how it is scaling? Right now skeletons gain 5 resistance per Astral Lore additional to their normal armor. When I think about your screenshots, the old value on your skeletons was about 3.000 armor and with the new patch it was 10.000 armor. That would be Astral Lore level 1400... and I somehow doubt that. :D

Edited by Roderick

Share this post


Link to post

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

×