Jump to content

Sacred 2 Enhanced Edition


Recommended Posts

1 hour ago, dimitrius154 said:

Was "Chance to Inflict Open Wounds" an explicit property on a weapon? If so, it's not affected by Damage Lore, only the chance, that stems from a weapon's raw damage is.

Actually, I am not quite sure about this topic.

1. You are able to hold weapons that don't have this property in their property list. Then there isn't shown any chance under "Weapons" (in the inventory menu), so I couldn't really check an increase IF there is a chance for Open Wounds just based on physical damage alone. 

2. Sometimes it is a blue modificator on an item, sometimes a golden and sometimes it just looks yellow, like the colour for physical damage. It has this colour shown unter "Weapons" together with the chance to inflict those wounds. Those chances don't seem to rise, though I haven't tried all three rarities.

3. The wiki just says "wounds", but there are different types of wounds. If physical damage alone would trigger Open Wounds, it wouldn't be usefull at all, since later on the weapons I aim for trigger Serious Open Wounds, which does more damage than Open Wounds, and I would like to increase duration and damage for those.

Edited by Roderick
Link to comment
On 4/24/2022 at 2:26 PM, Flix said:

The Elite Mounts vendor resides in the Jungle Temple of the Gods. However since EE 3.0, he will only sell the mounts after: either the main Unique Mounts OR the Ice & Blood Mounts quest (A Roof Over the Head) is complete.  He will also require you to complete a short quest of his own before he transforms into a vendor.

Both of the vanilla mounts quests now include extra dialogue and journal entries that point you to the Jungle to find him.

 

Hmm, intersesting. We found this particular vendor just outside of sloeford somewhere. I've had my unique since level 11.  He was just sitting somewhere. We hadn't run any quest. We were like "Holy :eek:e, so early, nice" Now I wonder if it bugged on us...

Side note @Flix I can't find 'id' for ogre-knuckles. I have a orange text knuckle (legendry or unique unsure of difference yet). I did save it to file a clean 'chestsacred2chest' file though so I won't lose it.

Edited by jedijimi
Link to comment
7 hours ago, lacr said:

Hmm, strange in 3.1 I see double bosses again, is it just me?!:lol:

Do you have "Free-For-All" module installed? That's just going to be a side-effect of that module if you really want to use it. Double drops!  :D

15 hours ago, jedijimi said:

Hmm, intersesting. We found this particular vendor just outside of sloeford somewhere. I've had my unique since level 11.  He was just sitting somewhere. We hadn't run any quest. We were like "Holy :eek:e, so early, nice" Now I wonder if it bugged on us...

Oh, that guy. I think he's the "wandering merchant" Brian Dunkleman that CM Patch added.  He just spawns randomly and sells different kinds of things.  I'm not sure how they created that actually.

15 hours ago, jedijimi said:

can't find 'id' for ogre-knuckles. I have a orange text knuckle (legendry or unique unsure of difference yet). I did save it to file a clean 'chestsacred2chest' file though so I won't lose it.

  id = 4418,
  name = "forge_boost_physical",  -- magic/rare tier

  id = 4420,
  name = "forge_boost_physical_unique", -- unique tier

It's gold text, unique. There's no Legendary damage converters in EE.

  • Thanks! 1
Link to comment
6 hours ago, Flix said:

 

Oh, that guy. I think he's the "wandering merchant" Brian Dunkleman that CM Patch added.  He just spawns randomly and sells different kinds of things.  I'm not sure how they created that actually.

  id = 4418,
  name = "forge_boost_physical",  -- magic/rare tier

  id = 4420,
  name = "forge_boost_physical_unique", -- unique tier

It's gold text, unique. There's no Legendary damage converters in EE.

Brian Dunkleman, YES! That guy. Thx for clarification, and a most excellent thank you for the -id's. I was actually searching for 'orge-knuckle'

@Flix  'you shall be held amongst Gods'

  • Haha 1
Link to comment
13 hours ago, Flix said:

Do you have "Free-For-All" module installed? That's just going to be a side-effect of that module if you really want to use it. Double drops! 

yeah, just

On 1/17/2021 at 1:33 AM, Flix said:

Fixed double bosses spawning in Free-For-All Quests module (hopefully).

while I am having an imagination that it was really fixed, or, maybe, I have just confused which bosses were killed already and which not:dntknw:

I just wanted to convince myself that it is not some sort of a bad installation result.

 

 

Link to comment

Heyhey! long time sacred 2 fan here. in the last four weeks I played with a friend, Enhanced spell mod+super spawn+free-for-all quests. we played an inqisitor and a high elf from silver to niob on a server we hosted in open net. was alot of fun! you did great work with the enhanced spell mod!
but just today when we wanted to finish the final niob boss, both of our characters just dissapeared when we tryed to join the game. when we went to the savegame folder, the "hero17.sacred2save" file suddenly had 0 kb instead of the 133kb. I did a backup yesterday because I changed something in my skillbuild with the char-editor, but my mates level 115 char is gone forever :eek:.
it probably is a very rare bug, since it happend first after 50h+ of playing but I would recommend to everyone to make backups of your character frequently since our journey to ancaria has sadly ended now... we were so close to the final niob boss :D

  • Like! 1
Link to comment
  • 2 weeks later...
7 hours ago, Flix said:

I finally tracked down the reason for this oddity.  It's this bit of code in questscripts.txt:

Respect!:smile:

7 hours ago, Flix said:

The problem is that this also masks the OK in Assim's in-progress dialog with "Decline."  I messed around with the scripts for a long time, trying to make the Decline only apply to the Envoy.  However, no matter what I did, anything that changed Assim's dialog also changed the Envoy's.

My proposal:

In quest.txt, change the following:

Spoiler

quest.createQuest(329, {
id = 329,
name = "M_DE_1g_G_rr-DEG3",
questtype = 3,
silent=0,
ismainquest = 1,
mainquestchapter = 1,
questbookstrategy = 0,
continues_quest_id = 1287,
continues_bookentry = 722,
forpathnot = 0,
reservedforpath = 1,
reservedforhero = 0,
reservedforgod = 0,
reward_exp=0,
reward_gold=0,
reward_drop=0,
reward_attr=0,
reward_skill=0,
report_required = 0,
dangerclass=1,
author_ready = 0,
qa_ready = 0,
releasestage = 10,
progress = 0,
autostart = 0,
anyprequest = 0,
showdlgonwin = 0,
lostondecline = 0,
questgiver = {
taskcreature = 1199,
ispersistent = 0,
isproactive = 0,
isrefusable = 0,
position = { 34,19,0 , 2300.000,2950.000,0.000 , -70.000 },
},
precond_quest0 = {
quest_dbid = 327,
queststate = 9,
},
groupchanges = {
{ 1199,7,1,"CM_Begleiter_feige",66 },
{ 6631,7,0,"questCreatures",66 },
{ 6630,7,0,"questCreatures",66 },
},
})
quest.createQuest(330, {
id = 330,
name = "M_DE_1h_G_rr-DEG3b",
questtype = 1,
silent=0,
ismainquest = 1,
mainquestchapter = 1,
questbookstrategy = 0,
continues_quest_id = 1287,
continues_bookentry = 722,
forpathnot = 0,
reservedforpath = 1,
reservedforhero = 0,
reservedforgod = 0,
reward_exp=0,
reward_gold=0,
reward_drop=0,
reward_attr=0,
reward_skill=0,
report_required = 1,
reportcompletion_to = 1200,
dangerclass=1,
author_ready = 0,
qa_ready = 0,
releasestage = 10,
progress = 0,
autostart = 0,
anyprequest = 0,
showdlgonwin = 0,
lostondecline = 0,
precond_quest0 = {
quest_dbid = 329,
queststate = 9,
},
})
quest.createQuest(1234567, {
id = 330,
name = "TEST",
questtype = 1,
silent=0,
ismainquest = 1,
mainquestchapter = 1,
questbookstrategy = 0,
continues_quest_id = 1287,
continues_bookentry = 722,
forpathnot = 0,
reservedforpath = 1,
reservedforhero = 0,
reservedforgod = 0,
reward_exp=0,
reward_gold=0,
reward_drop=0,
reward_attr=0,
reward_skill=0,
report_required = 0,
dangerclass=1,
author_ready = 0,
qa_ready = 0,
releasestage = 10,
progress = 0,
autostart = 0,
anyprequest = 0,
showdlgonwin = 0,
lostondecline = 0,
precond_quest0 = {
quest_dbid = 330,
queststate = 9,
},
groupchanges = {
{ 6630,7,0,"Enemy_warrior_brave_ex",57 },
{ 6631,7,0,"Enemy_warrior_brave_ex",57 },
{ 1200,7,0,"Enemy_warrior_brave_ex",57 },
},
questKill = {
anyofthem = 0,
useprefightdlg = 1,
bodycount = 0,
kill0 = {
taskcreature = 1200,
},
kill1 = {
taskcreature = 6630,
},
kill2 = {
taskcreature = 6631,
},
},
})
quest.createQuest(1621, {
id = 1621,
name = "M_DE_1i_G_nn-DEG4",
questtype = 3,
silent=0,
ismainquest = 1,
mainquestchapter = 1,
questbookstrategy = 0,
continues_quest_id = 1287,
continues_bookentry = 0,
forpathnot = 0,
reservedforpath = 1,
reservedforhero = 0,
reservedforgod = 0,
reward_exp=0,
reward_gold=0,
reward_drop=0,
reward_attr=0,
reward_skill=0,
report_required = 1,
dangerclass=1,
author_ready = 0,
qa_ready = 0,
releasestage = 10,
progress = 0,
autostart = 0,
anyprequest = 0,
showdlgonwin = 0,
lostondecline = 0,
questgiver = {
taskcreature = 1198,
ispersistent = 0,
isproactive = 0,
isrefusable = 0,
position = { 42,17,0 , 126.047,1879.450,2389.970, 213.000 },
},
precond_quest0 = {
quest_dbid = 1234567,
queststate = 9,
},
questReach = {
stations0 = {
taskcreature = 8485,
needsActivation = 0,
},
},
})

quest 1234567 is a new quest that gets interposed between quest 330 and 1621, and the kills from quest 330 get transferred to this new quest. Since it doesn't have a questgiver, it should trigger automatically after quest 330 is fullfilled. You can experiment with the quest ID and name, I'm not sure yet how the quest name system works and how large a quest ID at max can be.

Afterwards, you'll need to look up the dialogue ID hash for the 329 quest report in global.res and change it so it becomes the quest 330 quest opening dialogue. Likewise, the old quest 330 opening dialogue needs to become the new quest 330 report dialogue.

Last but not least, the questscripts.txt changes:

Spoiler


quest.setScript(329,"OnDialog",function(args)
if args.state=="TASK_FULFILLED" then
return "QUEST_DIALOG_YES"
end
end)
quest.setScript(330,"OnDialog",function(args)
if args.state~="TASK_FULFILLED" then
return "QUEST_DIALOG_NO"
end
end)

This is just a basic concept, there are lots of possibilities to rearrange it; e.g. you can interpose the new quest between 329 and 330 instead, or you can instead of giving both dialogues to quest 330 give one to 330 and one to the new quest instead and so on.

Also I'm not sure wether "QUEST_DIALOG_YES" even exists. it might be necessary to change it to "QUEST_329_DIALOG" and encode a custom text in global.res instead. Also the envoy's "KILL THEM!!!" Dialogue will have "OK" option now since it's become quest 330 report instead of a quest 330 trigger, it might be good to give it a custom Dialogue option as well.

Edited by Lindor
Link to comment
On 10/9/2021 at 11:26 PM, Flix said:

Hello!  I made the Divine Gifts much more powerful in EE, and in early versions of the mod I made the cooldowns very very low (about 300s IIRC), so they could be used all the time.  What I did not take into account was just how low the cooldowns can become with the Divine Devotion skill.  They could get down to 60s.  So I standardized the cooldowns for all the gifts at 900s.  I think this makes the Divine Devotion skill more attractive, for those that want to use Divine Gifts.

I'm thinking of making a Kuan's Breath character and I noticed the EE manual says:

Kuan's Breath: Will now affect higher level enemies. This solves the spell becoming useless once the player’s Survival Bonus boosts enemy levels too far above the player.

So, in EE Divine Devotion will only boost the breath's cooldown now, right? It won't have any additional effect on what level/type enemies the breath can affect?

Link to comment
12 hours ago, RetsReds said:

So, in EE Divine Devotion will only boost the breath's cooldown now, right? It won't have any additional effect on what level/type enemies the breath can affect?

No that's not quite right.  Divine Devotion acts as a Focus skill, that means it doesn't only decrease the cooldown, it also increases the max spell level.  So when you take Divine Devotion you will see the level of Kuan's Breath jump up to a higher level.  This means it's easier to stay ahead of the max enemy level than it would be otherwise. You'll also get a longer duration.

The difference is, before EE, you HAD to take Divine Devotion to keep the level high enough. Otherwise you would hit the max enemy level by clvl 70 or so.  Now, without DD you will hit the max enemy level around clvl 160 or so.  With DD you will always stay ahead of it.

Link to comment
5 hours ago, Flix said:

No that's not quite right.  Divine Devotion acts as a Focus skill, that means it doesn't only decrease the cooldown, it also increases the max spell level.  So when you take Divine Devotion you will see the level of Kuan's Breath jump up to a higher level.  This means it's easier to stay ahead of the max enemy level than it would be otherwise. You'll also get a longer duration.

The difference is, before EE, you HAD to take Divine Devotion to keep the level high enough. Otherwise you would hit the max enemy level by clvl 70 or so.  Now, without DD you will hit the max enemy level around clvl 160 or so.  With DD you will always stay ahead of it.

I see. Ok, ty, 

Link to comment
  • 3 weeks later...

Is it me or the experience for Fury (bird-like monster near Ice Hydra cave) normal(not super) version is x10(so it's almost the same as for the super version) ?

Link to comment
4 hours ago, lacr said:

Is it me or the experience for Fury (bird-like monster near Ice Hydra cave) normal(not super) version is x10(so it's almost the same as for the super version) ?

Yes, good catch. The template creature and elite creature ID's are all mixed up for the normal Furies.  Will fix in next release.

Link to comment
8 hours ago, Flix said:

Yes, good catch

Yeah, I have noticed only because my character suddendly got an unnaturally fast level-up:D

Another question: is it possible to make NPC Huntress in "Priest Ordination" invulnerable to damage? My melee character was surrounded by small spiders and quest had been failed before the target place was even reached:(

Link to comment
  • 1 month later...
58 minutes ago, Lindor said:

@Flix Windus Mace (ID 3701) in blueprint.txt lacks final parameter in bonusgroup 1

Interesting, and yet it has no negative effects whatsoever. This must be why it went unnoticed this long.

I assume it's wreaking havoc with one of your script tools?  :sweating:

I will fix in next release.

While we're on the subject of mistakes that don't seem to have an effect:

Knowing what you know about Lua, do you think the penultimate comma is necessary in a line like this?

bonuslist = { 346,360,384,468,},

Let's say for instance it read:

bonuslist = { 346,360,384,468},

Without the final comma on the inside of the bracket.

Link to comment
14 minutes ago, Flix said:

I assume it's wreaking havoc with one of your script tools?  :sweating:

Yee, noticed it when it messed with my freshly created exporting tool.

 

I have sorted and exported the entirety of blueprint.txt's items into 16 different text files:

armor, bonusless, books, jobitems, mounts, NPC, pgf (potions, gold & forge), questitems, runes, spellitems (shadow warrior kohorte), startequip, tests and other wierdness, tg_arms, uniques+sets+legendaries, weapons, XMAS.

The structure of blueprint.txt will change significantly, if it works it will become the main logic to import and create the items from those 16 files. the armor and the weapons file items are those which will benefit from the automatic bonusgroup creation.

14 minutes ago, Flix said:

Knowing what you know about Lua, do you think the penultimate comma is necessary in a line like this?

bonuslist = { 346,360,384,468,},

Let's say for instance it read:

bonuslist = { 346,360,384,468},

Without the final comma on the inside of the bracket.

No, not necessary for the files, but it may be necessary for some of my lua im-/export and checking tools. Although I can't tell for sure, it has been quite some time since I worked on those.

Link to comment
  • 2 weeks later...

blueprint.txt bug:

id = 1764,
name = "tradeitem_battlehorse_v1_c1",
bonusgroup1 = {409,2000,1,0,0},

bonusgroup 409 does not exist. In Addendum, bonusgroup 409 exists:

newBonusgroup = {
  id = 409,
  name = "SB_utility_gold_rel",
  bonuslist = { 413,},
}
mgr.createBonusgroup(409, newBonusgroup);

PFP might have the same bug.

 

 

EDIT: Another one:

 

  id = 2235,
  name = "set_weapon_sera_ancient_shield",
  bonusgroup2 = {28,1150,1,9,0},   -- chance to reflect root

28 does not exist. there only exists one reflect root bonus:

newBonus = {
  name = "bb_chance_reflect_root",
  rating = 0,
  basedonskill = "SKILL_INVALID",
  type = "BONUS_REFLECTION",
  spez = "REFL_ROOT",
  spez2 = "",
  usagebits = 65535,
  minconstraints = {0,0,0},
  difficultyvaluerange0 = {0,0,0},
  difficultyvaluerange1 = {1,0,0},
  difficultyvaluerange2 = {2,0,0},
  difficultyvaluerange3 = {3,0,0},
  difficultyvaluerange4 = {4,0,0},
}
mgr.createBonus(185, newBonus);

There's no bonusgroup using that bonus.

In Addendum however, following exists:

newBonusgroup = {
  id = 28,
  name = "SB_def_chance_reflect_root",
  bonuslist = { 221,},
}
mgr.createBonusgroup(28, newBonusgroup);

 

Edited by Lindor
  • Thanks! 1
Link to comment

Mmm, Ancient Shield blueprint was copied over from Addendum, but the bonusgroup was missed. Will fix in next release.

  

4 hours ago, Lindor said:

bonusgroup 409 does not exist.

Looks like a vanilla bug, actually. I never noticed it so everything except Addendum would be subject to it.

Link to comment
On 12/31/2019 at 1:53 AM, dimitrius154 said:

because there's a certain line where = has been misplaced with +

Can you give me file and address? I want to replicate that change.

On 12/31/2019 at 8:47 AM, dimitrius154 said:

Hit chance original formula: (500 + Surehit_bonus) * (ChancetoDenyEvasion_bonus + 1000) * 3000) / (((ChancetoEvade_bonus + 1000) + 3000 + AttackerLevel - DefenderLevel) / 1000

Hit chance Addendum formula: ((AV * 1000/(AV+DR) + Surehit_bonus) * (ChancetoDenyEvasion_bonus + 1000) * 3000) / (((ChancetoEvade_bonus + 1000) + 3000 + AttackerLevel - DefenderLevel) / 1000

So AV and DV don't play any role in non-Addendum game versions? That is... wow:lindor:

Link to comment
2 hours ago, Lindor said:

So AV and DV don't play any role in non-Addendum game versions? That is... wow:lindor:

This is what happens, when one types "+" instead of "=" and never checks the text, because, ya'know, there're 60 cans of beer waiting.

  • Haha 1
Link to comment
2 hours ago, Lindor said:

Can you give me file and address? I want to replicate that change.

One moment...

s2logic.dll:

1013D799                                               0345 0C                                          ADD EAX,DWORD PTR SS:[EBP+C] - original

1013D799                                               3B45 0C                                          CMP EAX,DWORD PTR SS:[EBP+C] - fixed

  • Thanks! 1
Link to comment


  id = 3714,
  name = "unique_tech_sword",

"Wort des Wächters" in germany, is not listed in the unique swords wiki page. Also its item modifier:

bonusgroup2 = {1109,64000,1,9,1}, -- Ignore enemy energy shields (Absorbtion WE -99.9 not scaling with item level)

is not listed in the item modifiers wiki page (which is why I was looking for it)

 

Did these come with EE or were they just forgotten and therefore can be added to the wiki pages?

EDIT: 

  • bb_shield_regen unnecessary duplicate of bb_shieldregen.
  • All instances of BONUS_SHIELDFACTOR_IGNORE on item modifiers might need to get replaced with the POTENTIAL version in order to work correctly. Has someone tested if this bonus works as is?
Edited by Lindor
Link to comment
2 hours ago, Lindor said:

id = 3714,
  name = "unique_tech_sword",

"Wort des Wächters" in germany, is not listed in the unique swords wiki page.

http://www.sacredwiki.org/index.php/Sacred_2:Guardian's_Word

Also, are you remembering to check this list for non-vanilla items?  http://www.sacredwiki.org/index.php/Sacred_2:Community_Patch_Unique_Items

 

2 hours ago, Lindor said:

Also its item modifier:

bonusgroup2 = {1109,64000,1,9,1}, -- Ignore enemy energy shields (Absorbtion WE -99.9 not scaling with item level)

is not listed in the item modifiers wiki page (which is why I was looking for it)

...

All instances of BONUS_SHIELDFACTOR_IGNORE on item modifiers might need to get replaced with the POTENTIAL version in order to work correctly. Has someone tested if this bonus works as is?

I explained this to you a short while ago:smile:  This bonus was invented by Silver Fox for CM 1.50 to essentially cut through the enemy's shield in one hit.  It's also mentioned on the item's Wiki page.  The bonus functions as intended from what I remember.

 

  • Thanks! 1
Link to comment

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