Jump to content

My new "Made in Heaven" mods


Recommended Posts

9 hours ago, subtledoctor said:

I'm installing the Item Pack on EET and I'm seeing this:

Installing missing file MELFSLE.BAM...
Copying 1 file ...
Copying 1 file ...
Copying and patching 10095 files ...

...and now nothing has happens for about 10 minutes. Starting to get into SCS-level time passing...

*sigh* I've gotten this report several times now, unfortunately.  The mod makes complex edits to a large number of files, and WeiDU hasn't exactly been programmed in a very efficient way.  I use the same library as SCS (it's called SFO) which allows for very complex edits without having to write tons of lines but unfortunately adds even more processing time.

9 hours ago, subtledoctor said:

I'm a bit concerned that there is some kind of infinite loop going on. Is this normal? I spent a long time getting the install to this point, I really really would not like to nuke it...

There is nothing in the code that can loop infinitely.  There is just a lot of processing, especially on a game that is already heavily modded.  And you should never, ever quit the WeiDU installer, for *any* mod.  Doing so leaves your game in an undefined state and has a good chance of breaking any other mod you try to install.

9 hours ago, subtledoctor said:

(EDIT to add, one thing I hate about sfo mods, I can't just search through this or that file to look at the weidu code and see what's going on. But that's neither here nor there.)

SFO is a complex beast, but it works fine.  Basically what it does is define a structure for every file type it can mod, then does all the edits through the same shared patching routine.  As long as the file structure is correctly defined (they are in the sfo/filetype/ directory), every edit will happen in the same exact and controlled way, instead of having to write new code for every edit I want to make.

9 hours ago, subtledoctor said:

EDIT 2 - it's started moving again. So it really was just doing a very slow/long operation. *Phew!* Okay nothing to see here, move along...

All I can say is *patience*.  Go make some tea, take a walk, play a game, whatever.  The mod *will* install, eventually.  (It takes about 15 minutes on my system, and that's a very fast beast with a ton of processing power and memory to spare.)

Edited by Angel
Link to comment

Yeah it’s fine, now I know it’s all working as intended. I understand the pros and cons of sfo - for a very clear example if what it does to processing time, one can compare recent versions of IWDification that were released with (I think v2/v3) and without (I think v0.9/v1?) it. It’s noticeably longer, but not terrible.

Anyway a moderately long install is okay. I remember starting up the SCS installer and letting it run overnight! 

What you might want to do, if you know where a slow bit is, is just

PRINT ~Please be patient, this bit might take 5-10 minutes~

I do that a couple times, when I’m doing something complex that chokes Weidu, like an edit that checks an array within an array. 

Edited by subtledoctor
Link to comment

In my big EET install I'm seeing the innkeeper and shopkeeper in Nashkel have incorrect names (specifically their names are 'Prevent chapter 6 cutscene from moving party to Candlekeep' and 'Revised Lycanthropes (EXPERIMENTAL)'). When looking at the .CRE files using weidu's --change-log functionality, it shows they've been touched by ~MIH_EQ\SETUP-MIH_EQ.TP2~ 0 2 // Revised Golemsv6, where none of the other inn/shopkeepers I checked with correct names seemed to have been touched by that (though they were all touched by ~MIH_EQ\SETUP-MIH_EQ.TP2~ 0 0 // Revised Corporal Undeadv6).

I started over and did a clean install with all the same mods in the same order, created a new saved game, and got the same problematic behavior. I then did a clean install that was exactly the same except I removed the made in heaven content, and the shopkeep and innkeep now have their expected names. Let me know if there's any more information I can provide to be of help.

Link to comment
5 hours ago, Bozerg said:

In my big EET install I'm seeing the innkeeper and shopkeeper in Nashkel have incorrect names (specifically their names are 'Prevent chapter 6 cutscene from moving party to Candlekeep' and 'Revised Lycanthropes (EXPERIMENTAL)'). When looking at the .CRE files using weidu's --change-log functionality, it shows they've been touched by ~MIH_EQ\SETUP-MIH_EQ.TP2~ 0 2 // Revised Golemsv6, where none of the other inn/shopkeepers I checked with correct names seemed to have been touched by that (though they were all touched by ~MIH_EQ\SETUP-MIH_EQ.TP2~ 0 0 // Revised Corporal Undeadv6).

I started over and did a clean install with all the same mods in the same order, created a new saved game, and got the same problematic behavior. I then did a clean install that was exactly the same except I removed the made in heaven content, and the shopkeep and innkeep now have their expected names. Let me know if there's any more information I can provide to be of help.

There's a translation file missing.  Will fix.

Link to comment

Can we actually extract this lore change from the golems to a separate component? It's easily overlooked and one might not associate it with golems for start.

Additionally, this can affect the installation sequence somewhat, if IWDification is combined with Argent77's Trials of the Luremaster. Some of the IWDification scrolls are distributed based on if the store already has a BG(2) spell, so if the MiH golem component goes after ToTLM, then the Nashkel wizard loses out of the IWD scrolls.

Edited by Graion Dilach
Link to comment
12 minutes ago, Graion Dilach said:

Can we actually extract this lore change from the golems to a separate component? It's easily overlooked and one might not associate it with golems for start.

For this specific component, it's there to change Thalantyr's flesh golems to something much more appropriate for a neutral good mage and much more in line with actual FR lore; FR lore says Thalantyr's abode is protected by a pair of mated griffons (which I unfortunately can't implement since there is no griffon animation) and some type of invisible creature, which I assume to be invisible stalkers.  Neutral good mages don't go dig up and dissect human bodies to build Frankenstein's monsters. ^^

You can disable the lore changes in the ini file is you really want to, but that might lead to some strange results.  In this case, you will find that Thalantyr's golems are not affected by the component, since I assume them to not be golems at all.  All my components assume, where applicable, that the lore-friendly changes are in place.  Sorry, but that's how these mods work.

Link to comment

 Hello Angel,

Selphira from the French modding community is currently developing a mod that harmonizes the STATISTICS of baldur's gate items!

Her method uses the opcodes of the items to generate the exact and harmonised description of their effects...

A good way to detect description errors!

here is the french forum page and the mod page on Github (The mod is not finished yet and does not recognize all the opcodes for now.)

I'm not a modder but I give a hand to test differents configurations and differents items (This mod could also allow automatic translation of items statistics )...

So for your mod, Made in Heaven Item Pack, a possible function error ! Some differences between the descriptions brought this up :

2DA V1.0*
REFRES        OPCODE    PARAMETER1    PARAMETER2    PARAMETER3    DICENUM    DICESZ    RESOURCE
mh#undh1    178    4        3        1        0    0    *
mh#undh2    178    4        3        2        0    0    *
mh#undd2    179    4        3        2        0    0    *

From your .2da file, PARAMETER3 does not seem to be implemented when creating effects for certain items.

DEFINE_ACTION_MACRO __handle_simple_effectsBEGIN
  COPY - "%file_loc%/%tables_loc%/%simple_effects%.2da" "%workspace%"
    COUNT_2DA_COLS cols
    COUNT_2DA_ROWS cols rows
    READ_2DA_ENTRIES_NOW __MH_RESERVED_effects cols
	
    FOR (SET i = 1; i < rows; ++i)
    BEGIN
      READ_2DA_ENTRY_FORMER __MH_RESERVED_effects i 0 resref
      READ_2DA_ENTRY_FORMER __MH_RESERVED_effects i 1 opcode
      READ_2DA_ENTRY_FORMER __MH_RESERVED_effects i 2 parameter1
      READ_2DA_ENTRY_FORMER __MH_RESERVED_effects i 3 parameter2
      READ_2DA_ENTRY_FORMER __MH_RESERVED_effects i 4 parameter3
      READ_2DA_ENTRY_FORMER __MH_RESERVED_effects i 5 dicenum
      READ_2DA_ENTRY_FORMER __MH_RESERVED_effects i 6 dicesize
      READ_2DA_ENTRY_FORMER __MH_RESERVED_effects i 7 resource
	
      INNER_ACTION
      BEGIN
        LAUNCH_ACTION_FUNCTION make_effect
          STR_VAR
      effect    = "%resref%"
      editstring    = ~opcode=>%opcode% timing=>1 parameter1=>%parameter1% parameter2=>%parameter2% dicenum=>%dicenum% dicesize=>%dicesize% resource=>"{literal:%resource%}"~
        END
      END
    END
END    // __handle_simple_effects

It seems that the function does not use the PARAMETER3.

Unless we are mistaken, this is probably something to fix !

By the way, thanks for your mods, I haven't tested your "spell pack" and "item pack" in game but I took a look at "encounters and quests" and I will definitely play with it when I start a new game!

Link to comment
5 hours ago, JohnBob said:

It seems that the function does not use the PARAMETER3.

Unless we are mistaken, this is probably something to fix

Good catch, that is indeed a bug that needs fixing.  I already found it myself some time ago and it will be fixed in the next release, but thanks anyway!

 

Link to comment

Hi Angel,

Regarding "Revised Corporal Undead", doc states:

"Skeletons take half damage from slashing, piercing and missiles."

But taking a peek behind-the-scenes:

ACTION_CLEAR_ARRAY skeleton

ACTION_DEFINE_ASSOCIATIVE_ARRAY skeleton
BEGIN
  resist_crushingGT    => 50
  resist_piercingGT    => 50
  resist_missileGT    => 50
  resist_cold        => "if resist_fire < 100 then 100 else no_change"
  resist_magic_cold    => "if resist_magic_fire < 100 then 100 else no_change"
  strengthGT        => 16
  dexterityGT        => 18
END

1. Should "resist_crushingGT" actually be "resist_slashingGT"?

2. Curious - Why did you bump up Str & Dex? Makes 'em infinitely harder to hit.

 

Link to comment
6 minutes ago, Chitown Willie said:

1. Should "resist_crushingGT" actually be "resist_slashingGT"?

Good catch, thanks!

6 minutes ago, Chitown Willie said:

2. Curious - Why did you bump up Str & Dex? Makes 'em infinitely harder to hit.

I'm still searching for a balance on how to make skeletons and zombies a little more menacing, considering they are worth much more XP than living creatures with similar HD.

Link to comment
4 minutes ago, Angel said:

Good catch, thanks!

I'm still searching for a balance on how to make skeletons and zombies a little more menacing, considering they are worth much more XP than living creatures with similar HD.

Gotcha.

Problem is an 18 Dex grants them a -5 AC - which is a big deal for a Level 1 party in High Hedge.

Perhaps use the original skeletons for High Hedge - and ramp up to tougher skeleton w/ Mulahey?

Link to comment

I honestly find skeletons are fine in the original game. They resist so much damage that they take a while to kill, and they bunch up in groups of ~6 such that they almost always get in a hit or two, sometimes even a crit. They're not going to kill anyone, but for a nuisance enemy they certainly inflict a bit of pain and make me use my healing and put a bit of strain on my resource management. For 1HD enemies, I think they punch above their weight. Giving them super STR and DEX scores seems unnecessary and contrary to their theme.

Zombies are way less of a pain, and could probably use a boost. Maybe they could do some kind of grappling thing? Like, Hold on hit for 6 seconds on a failed save?

I'm toying with buffing gibberlings, of all things. The background idea, as I understand it, is that they are weak individually but a horde can be dangerous simply because of the numbers. But they don't work out that way, mechanically. So I'm considering giving them an aura that applies +1 to-hit to every gibberling within ~15 or 20 feet. And letting it stack. So a pack of 10 gibberlings will have the thac0 of a 10HD monster, and attack 10 times per round...! Maybe a damage bonus too? But +10 damage on 10 APR could be crazy. Maybe just the thac0 boost would be enough. But the idea would be to make them truly dangerous unless/until you thin out their numbers.

i feel like xvarts should similarly get some kind of "pack tactics" bonus...

Link to comment
3 minutes ago, subtledoctor said:

I honestly find skeletons are fine in the original game. They resist so much damage that they take a while to kill, and they bunch up in groups of ~6 such that they almost always get in a hit or two, sometimes even a crit. They're not going to kill anyone, but for a nuisance enemy they certainly inflict a bit of pain and make me use my healing and put a bit of strain on my resource management. For 1HD enemies, I think they punch above their weight. Giving them super STR and DEX scores seems unnecessary and contrary to their theme.

Zombies are way less of a pain, and could probably use a boost. Maybe they could do some kind of grappling thing? Like, Hold on hit for 6 seconds on a failed save?

I'm toying with buffing gibberlings, of all things. The background idea, as I understand it, is that they are weak individually but a horde can be dangerous simply because of the numbers. But they don't work out that way, mechanically. So I'm considering giving them an aura that applies +1 to-hit to every gibberling within ~15 or 20 feet. And letting it stack. So a pack of 10 gibberlings will have the thac0 of a 10HD monster, and attack 10 times per round...! Maybe a damage bonus too? But +10 damage on 10 APR could be crazy. Maybe just the thac0 boost would be enough. But the idea would be to make them truly dangerous unless/until you thin out their numbers.

i feel like xvarts should similarly get some kind of "pack tactics" bonus...

Kinda like the bats' Swarm ability from "Animal Summoning I":

 Swarm: each bat within 5' receives a +2 bonus to THAC0

Link to comment

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...