Jump to content


Photo

Avoiding code conflicts with TobEx


  • Please log in to reply
17 replies to this topic

#1 Miloch

Miloch

    Barbarian

  • Modder
  • 6573 posts

Posted 03 February 2011 - 04:16 AM

I mentioned this elsewhere, but I guess I should sort it out now since the mod using it is completing final testing.

The mod externalises race string references using Taimon's original code. While we're at it, we enable the added race's paperdoll via Erephine's code (a subset of IA/1PP I presume).
Spoiler

Now I assume at least the race part will conflict with TobEx, at least that's what initial testing seems to suggest (via crashing). I guess we could skip it if TobEx's race component is detected, but that doesn't stop someone from tacking on TobEx after this, does it? Or would that still work due to whatever TobEx has in its DLLs? Presumably, the paperdoll patch should still be ok as I don't think TobEx does anything there.

This is our racetext.2da which also gets skipped if it exists. So there shouldn't be any conflicts there... we use lowercase labels for the race (as the game does) but I don't think that makes a real difference (unless the game uses large caps vs. small caps for upper and lowercase - it might use all caps, but a minor detail anyway).
Spoiler

Is there a way to code this to avoid conflicts with a subsequent TobEx install, or is the best way just to enforce an install order (TobEx goes first)?

Infinity Engine Contributions
Aurora * BG1 NPC * BG1 Fixpack * Haiass * Infinity Animations * Level 1 NPCs * P5Tweaks
PnP Free Action * Thrown Hammers * Unique Containers * BG:EE * BGII:EE * IWD:EE
================================================================
Player & Modder Resources
BAM Batcher * Creature Lister * Creature Checker * Creature Fixer * Tutu/BGT Area Map & List * Tutu Mod List
================================================================
"Infinity turns out to be the opposite of what people say it is. It is not 'that which has nothing beyond itself' that is infinite, but 'that which always has something beyond itself'." -Aristotle


#2 Ascension64

Ascension64
  • Modder
  • 5983 posts

Posted 04 February 2011 - 04:08 AM

Well, if we still are going with this 'standard' idea, TobEx will not check for compatibility, so someone installing TobEx after Infinity Animations is going to suffer.

If you plan to keep this code, then suggest putting TobEx before Infinity Animations.
Otherwise, I can pop the paperdoll code into TobEx and you could just embed TobEx (without suggesting that TobEx is taking over the world...)

--------------
Retired Modder
Note: I do not respond to profile comments/personal messages in regards to troubleshooting my modifications. Please post on the public forums instead.

Baldur's Gate Trilogy-WeiDU and Mods
Throne of Bhaal Extender (TobEx)

Contributions: (NWN2) A Deathstalker (voice acting) - (IWD2) IWD2 NPC Project (soundset editing) - (Misc) SHS PC Soundsets (voice acting)
Legacy: (BG/Tutu/BGT) Beregost Crash Fixer 1.9 (18 Jul 10) - (BG2) Enable conversations with charmed/dominated creatures (18 Jul 10) - (BG2) Experience Corrections (18 Jul 10) - (Misc) Platform Conversion Utility RC2 (13 Feb 10)


#3 the bigg

the bigg

    2083 is a prime number.

  • Modder
  • 3331 posts

Posted 04 February 2011 - 04:56 AM

If you plan to keep this code, then suggest putting TobEx before Infinity Animations.
Otherwise, I can pop the paperdoll code into TobEx and you could just embed TobEx (without suggesting that TobEx is taking over the world...)

I think that, long-term, ToBEx should absorb the other EXE patches, to save you from having to juggle compatibility with stand-alone EXE patches.

Italian users: help test the Stivan NPC!

Author or Co-Author: WeiDU - Widescreen - Generalized Biffing - Refinements - TB#Tweaks - IWD2Tweaks - TB#Characters - Traify Tool - Some mods that I won't mention in public
Maintainer: Semi-Multi Clerics - Nalia Mod - Nvidia Fix
Code dumps: Detect custom secondary types - Stutter Investigator

If possible, send diffs, translations and other contributions using Git.


#4 cmorgan

cmorgan
  • Modder
  • 2301 posts

Posted 04 February 2011 - 06:09 AM

I suggest ToBEX take over the world.

Seriously.

At least all the .exe changes that can be folded in - it would make things much more stable, and much easier to diagnose problems. Updating older mods would be relatively simple.

#5 Miloch

Miloch

    Barbarian

  • Modder
  • 6573 posts

Posted 04 February 2011 - 11:23 AM

Well, this is actually used in a different mod than IA that just wants to enable the display text for a race and its paperdoll. Some slots have paperdolls enabled automatically in the engine; others do not. I suppose that at least is something fairly basic you could TobEx-ise, but it would probably require a bunch of mods to account for the possibility of TobEx being installed (IA and several 1PP components for starters). Then again, it sounds like cmorgan is offering to handle that :).

Compatibility seems a bit dodgy... ordinarily, we would check if the .exe has already been patched for this feature and skip it if so. But TobEx doesn't patch the .exe. So I put this check in to skip the strref stuff if it's enabled in TobEx. Would that suffice? Of course, someone can change that .ini at any time. I don't know how to account for that, except put it in the readme under "don't do it" or something.
COPY ~bgmain.exe~ ~bgmain.exe~
    PATCH_IF FILE_EXISTS ~TobEx.ini~ AND FILE_CONTAINS ~TobEx.ini~ ~Externalise Race Selection StrRef=1~ BEGIN
      PATCH_PRINT ~Skipping race strref patching (TobEx already does this).~
    END ELSE BEGIN
      ... (stuff to enable racial strref)
    END
    ... (stuff to enable racial paperdoll)
  BUT_ONLY
As for externalising all of IA's .exe patch, in theory it sounds great but I suspect it would be a lot of work, and then there's the issue of compatibility and maintenance. I doubt it's something you want to maintain every time we change the patch (as we are currently working on). At its basic level though, it's more or less an "Externalise animation references to .ids files" (animate and anisnd... they exist in the game but mainly as static reference rather than dynamic tables - IA changes this).

Edit: incidentally, Taimon's hack reverses the gnome and dwarf races. So if you create a gnome fighter/illusionist, everything looks good in character creation but your character record says "dwarf" once you're in the game, and vice versa. I seem to recall you fixed this when you put in your version, could you point out where in the code? I don't see a technical spec for this particular hack.

Edited by Miloch, 04 February 2011 - 12:58 PM.

Infinity Engine Contributions
Aurora * BG1 NPC * BG1 Fixpack * Haiass * Infinity Animations * Level 1 NPCs * P5Tweaks
PnP Free Action * Thrown Hammers * Unique Containers * BG:EE * BGII:EE * IWD:EE
================================================================
Player & Modder Resources
BAM Batcher * Creature Lister * Creature Checker * Creature Fixer * Tutu/BGT Area Map & List * Tutu Mod List
================================================================
"Infinity turns out to be the opposite of what people say it is. It is not 'that which has nothing beyond itself' that is infinite, but 'that which always has something beyond itself'." -Aristotle


#6 Ascension64

Ascension64
  • Modder
  • 5983 posts

Posted 04 February 2011 - 01:19 PM

Compatibility seems a bit dodgy... ordinarily, we would check if the .exe has already been patched for this feature and skip it if so. But TobEx doesn't patch the .exe. So I put this check in to skip the strref stuff if it's enabled in TobEx. Would that suffice? Of course, someone can change that .ini at any time. I don't know how to account for that, except put it in the readme under "don't do it" or something.

Well, from version beta 0018 onwards, mods will need to assume that Externalise Race Selection StrRef=1. People who tamper with TobExCore.ini (unless they have been told to or know what they are doing) will get themselves kicked up the backside.

I have suggested in TobEx_redist that mods check for TobEx install by FILE_EXISTS ~TobEx_ini/TobExVer.txt~.

Edit: incidentally, Taimon's hack reverses the gnome and dwarf races. So if you create a gnome fighter/illusionist, everything looks good in character creation but your character record says "dwarf" once you're in the game, and vice versa. I seem to recall you fixed this when you put in your version, could you point out where in the code? I don't see a technical spec for this particular hack.


Hacky fix. Basically, everywhere there was switch (nRace), I substituted in my own procedure below.
STRREF __stdcall CInfGame_GetRaceText(unsigned int nRace) {
	int Eip;
	GetEip(Eip);

	if (Eip == 0x734392) { //this is where the races are switched around because of the buttons being in the wrong order
		if (nRace == 5) {
			nRace = 3;
		} else {
			if (nRace == 3) {
				nRace = 5;
			}
		}
	}

	if (pRuleEx->m_RaceText.m_2da.bLoaded) {
		IECString sStrRef;

		int nCol = 0;
		int nRow = nRace;
		if (nCol < pRuleEx->m_RaceText.nCols &&
			nRow < pRuleEx->m_RaceText.nRows &&
			nCol >= 0 &&
			nRow >= 0) {
			sStrRef = *((pRuleEx->m_RaceText.pDataArray) + (pRuleEx->m_RaceText.nCols * nRow + nCol));
		} else {
			sStrRef = pRuleEx->m_RaceText.defaultVal;
		}

		STRREF strref;
		sscanf_s((LPCTSTR)sStrRef, "%d", &strref);
		return strref;
	} else {
		STRREF strref;
		switch (nRace) {
		case 0:
			strref = 0x1C19; //human
			break;
		case 1:
			strref = 0x1C1A; //elf
			break;
		case 2:
			strref = 0x1C1D; //half-elf
			break;
		case 3:
			strref = 0x1C0E; //dwarf
			break;
		case 4:
			strref = 0x1C1B; //halfling
			break;
		case 5:
			strref = 0x1C1C; //gnome
			break;
		case 6:
			strref = 0xCFC2; //half-orc
			break;
		case 152:
			strref = 0x208C; //tiefling
			break;
		default:
			strref = -1;
			break;
		}

		return strref;
	}

}

--------------
Retired Modder
Note: I do not respond to profile comments/personal messages in regards to troubleshooting my modifications. Please post on the public forums instead.

Baldur's Gate Trilogy-WeiDU and Mods
Throne of Bhaal Extender (TobEx)

Contributions: (NWN2) A Deathstalker (voice acting) - (IWD2) IWD2 NPC Project (soundset editing) - (Misc) SHS PC Soundsets (voice acting)
Legacy: (BG/Tutu/BGT) Beregost Crash Fixer 1.9 (18 Jul 10) - (BG2) Enable conversations with charmed/dominated creatures (18 Jul 10) - (BG2) Experience Corrections (18 Jul 10) - (Misc) Platform Conversion Utility RC2 (13 Feb 10)


#7 Miloch

Miloch

    Barbarian

  • Modder
  • 6573 posts

Posted 04 February 2011 - 04:27 PM

I have suggested in TobEx_redist that mods check for TobEx install by FILE_EXISTS ~TobEx_ini/TobExVer.txt~.

Eh. So um... when is that coming out? Because that looks a lot different than what's in b017 or whatever. Since the mod with the code above is coming out "presently" (when we get the last few glitches ironed out, this being the main if not only one remaining) it seems kind of like juggling to be compatible, but the BWP will sure rant and rave if we aren't.

if (nRace == 5) {
			nRace = 3;
		} else {
			if (nRace == 3) {
				nRace = 5;
			}

Hmm... I see (I think). Any way you could (re-reverse) the pseudocode into a revised .exe patch? I'm tempted to just require (or suggest at least) TobEx and phase out our patch in light of the potential difficulties, but I don't like requiring other mods if an alternative is feasible.

Infinity Engine Contributions
Aurora * BG1 NPC * BG1 Fixpack * Haiass * Infinity Animations * Level 1 NPCs * P5Tweaks
PnP Free Action * Thrown Hammers * Unique Containers * BG:EE * BGII:EE * IWD:EE
================================================================
Player & Modder Resources
BAM Batcher * Creature Lister * Creature Checker * Creature Fixer * Tutu/BGT Area Map & List * Tutu Mod List
================================================================
"Infinity turns out to be the opposite of what people say it is. It is not 'that which has nothing beyond itself' that is infinite, but 'that which always has something beyond itself'." -Aristotle


#8 Ascension64

Ascension64
  • Modder
  • 5983 posts

Posted 06 February 2011 - 04:11 AM

Well, if BWP still uses TobEx, then it will explode...

Hmm... I see (I think). Any way you could (re-reverse) the pseudocode into a revised .exe patch? I'm tempted to just require (or suggest at least) TobEx and phase out our patch in light of the potential difficulties, but I don't like requiring other mods if an alternative is feasible.

This would be annoying, because:
1. I'd have to re-look at Taimon's original code
2. TobEx's current implementation cannot be put into a tob_hacks format.
I can have a look, but it's rather divergent for me.

--------------
Retired Modder
Note: I do not respond to profile comments/personal messages in regards to troubleshooting my modifications. Please post on the public forums instead.

Baldur's Gate Trilogy-WeiDU and Mods
Throne of Bhaal Extender (TobEx)

Contributions: (NWN2) A Deathstalker (voice acting) - (IWD2) IWD2 NPC Project (soundset editing) - (Misc) SHS PC Soundsets (voice acting)
Legacy: (BG/Tutu/BGT) Beregost Crash Fixer 1.9 (18 Jul 10) - (BG2) Enable conversations with charmed/dominated creatures (18 Jul 10) - (BG2) Experience Corrections (18 Jul 10) - (Misc) Platform Conversion Utility RC2 (13 Feb 10)


#9 DavidWallace

DavidWallace
  • Validating
  • 337 posts

Posted 06 February 2011 - 04:25 AM

Well, if BWP still uses TobEx, then it will explode...

Hmm... I see (I think). Any way you could (re-reverse) the pseudocode into a revised .exe patch? I'm tempted to just require (or suggest at least) TobEx and phase out our patch in light of the potential difficulties, but I don't like requiring other mods if an alternative is feasible.

This would be annoying, because:
1. I'd have to re-look at Taimon's original code
2. TobEx's current implementation cannot be put into a tob_hacks format.
I can have a look, but it's rather divergent for me.


Miloch, the idea for the next version of ToBEx is that you just ship it with your mod and auto-install it - so in practice, you're not requiring other mods. (I had parallel worries with SCS, which is what led to the ship-ToBEx proposal.)

#10 the bigg

the bigg

    2083 is a prime number.

  • Modder
  • 3331 posts

Posted 06 February 2011 - 04:35 AM

If you're absorbing other exe patches, tb#tweaks contains this one:

Spoiler

it makes all creatures get the WSPATCK attack bonuses, rather than only Warriors (according to Taimon, it replaces a call to calculate the Warrior level with one that calculates the generic character level, while preserving current behavior for Monks); as such, it's clearly a Tweak.

Italian users: help test the Stivan NPC!

Author or Co-Author: WeiDU - Widescreen - Generalized Biffing - Refinements - TB#Tweaks - IWD2Tweaks - TB#Characters - Traify Tool - Some mods that I won't mention in public
Maintainer: Semi-Multi Clerics - Nalia Mod - Nvidia Fix
Code dumps: Detect custom secondary types - Stutter Investigator

If possible, send diffs, translations and other contributions using Git.


#11 Ascension64

Ascension64
  • Modder
  • 5983 posts

Posted 06 February 2011 - 04:18 PM

Well, this is actually used in a different mod than IA that just wants to enable the display text for a race and its paperdoll. Some slots have paperdolls enabled automatically in the engine; others do not. I suppose that at least is something fairly basic you could TobEx-ise, but it would probably require a bunch of mods to account for the possibility of TobEx being installed (IA and several 1PP components for starters). Then again, it sounds like cmorgan is offering to handle that :).

Can you tell me what the name of the mod is that has the patch to display race text and paperdoll. Needs to go in compatibility information for tobex_ini.txt.

Anyway, I have implemented similar in TobEx:

-----980 Enable More Paperdolls [C, M]
(identical to, but also extends from a 1PP mod)
Allows paperdolls to show in inventory and character customisation for animations 0x12XX, 0x2XXX, 0x3XXX, and non-vanilla 0x7XXX (except 0x73XX, which is already shown in vanilla)
Note that paperdolls for the 0x7XXX group of animation must have a be named <prefix>0INV.BAM

Options:
-0: disabled
-1: enabled

Additionally, I have allowed paperdolls for dragon animations (0x12**), the 0x2*** series (Sirine, Volo, Ogre Mage, Death Knight), and the 0x3*** series (not really used, unless people decide to make ankheg-like animations).
I hope you have been made aware by Taimon that the paperdolls for the 0x7*** series animations must have a 0INV suffix (note the 0) because of the way the hack is applied. I don't intend to change this for compatibility reasons.

As for externalising all of IA's .exe patch, in theory it sounds great but I suspect it would be a lot of work, and then there's the issue of compatibility and maintenance. I doubt it's something you want to maintain every time we change the patch (as we are currently working on). At its basic level though, it's more or less an "Externalise animation references to .ids files" (animate and anisnd... they exist in the game but mainly as static reference rather than dynamic tables - IA changes this).

Not really. Infinity Animations actually messes up the system by deferring ids in one group of animations (say 0x5***) to another group (say 0xE***). This makes it very difficult for me to re-implement because the assembly code is rather messed up.

--------------
Retired Modder
Note: I do not respond to profile comments/personal messages in regards to troubleshooting my modifications. Please post on the public forums instead.

Baldur's Gate Trilogy-WeiDU and Mods
Throne of Bhaal Extender (TobEx)

Contributions: (NWN2) A Deathstalker (voice acting) - (IWD2) IWD2 NPC Project (soundset editing) - (Misc) SHS PC Soundsets (voice acting)
Legacy: (BG/Tutu/BGT) Beregost Crash Fixer 1.9 (18 Jul 10) - (BG2) Enable conversations with charmed/dominated creatures (18 Jul 10) - (BG2) Experience Corrections (18 Jul 10) - (Misc) Platform Conversion Utility RC2 (13 Feb 10)


#12 ScuD

ScuD
  • Member
  • 492 posts

Posted 06 February 2011 - 08:11 PM

Just a question. Are you planning to add Erephine's palette extension EXE hack?

#13 Shaitan

Shaitan
  • Member
  • 800 posts

Posted 07 February 2011 - 01:06 AM


Well, this is actually used in a different mod than IA that just wants to enable the display text for a race and its paperdoll. Some slots have paperdolls enabled automatically in the engine; others do not. I suppose that at least is something fairly basic you could TobEx-ise, but it would probably require a bunch of mods to account for the possibility of TobEx being installed (IA and several 1PP components for starters). Then again, it sounds like cmorgan is offering to handle that :).

Can you tell me what the name of the mod is that has the patch to display race text and paperdoll. Needs to go in compatibility information for tobex_ini.txt.

It's FFT (Fishing for Troubles) over here

Cheers

#14 Ascension64

Ascension64
  • Modder
  • 5983 posts

Posted 07 February 2011 - 04:31 AM

Just a question. Are you planning to add Erephine's palette extension EXE hack?

I don't know much about it. Will take a peek.

Edited by Ascension64, 07 February 2011 - 04:33 AM.

--------------
Retired Modder
Note: I do not respond to profile comments/personal messages in regards to troubleshooting my modifications. Please post on the public forums instead.

Baldur's Gate Trilogy-WeiDU and Mods
Throne of Bhaal Extender (TobEx)

Contributions: (NWN2) A Deathstalker (voice acting) - (IWD2) IWD2 NPC Project (soundset editing) - (Misc) SHS PC Soundsets (voice acting)
Legacy: (BG/Tutu/BGT) Beregost Crash Fixer 1.9 (18 Jul 10) - (BG2) Enable conversations with charmed/dominated creatures (18 Jul 10) - (BG2) Experience Corrections (18 Jul 10) - (Misc) Platform Conversion Utility RC2 (13 Feb 10)


#15 Miloch

Miloch

    Barbarian

  • Modder
  • 6573 posts

Posted 08 February 2011 - 10:29 AM

Not really. Infinity Animations actually messes up the system by deferring ids in one group of animations (say 0x5***) to another group (say 0xE***).

I don't know exactly why we did that if there's a virtually unlimited extension to the slots available, but it probably sounded like a good idea at the time.

The palette extender makes more colours available for palettable animations. Might need to extend randcolr.2da also - I forget whether there was a limit to that like there is to the other random tables.

It might not be a bad idea to consolidate all the 1PP exe patches, which probably wouldn't be nearly as difficult as IA. But there are currently some install order glitches with the patches that could be sorted out/avoided if done early on (but again, I suppose the mods would have to be updated).

What would the code be to detect the paperdoll patch and skip it if it's already in? I'm a bit uncertain how to handle this what with all the "beta" stuff you've got going on, but I've asked for access for you in the mod's dev forum, if you want to take a look at it (or I could PM you the tp2 at least).

Infinity Engine Contributions
Aurora * BG1 NPC * BG1 Fixpack * Haiass * Infinity Animations * Level 1 NPCs * P5Tweaks
PnP Free Action * Thrown Hammers * Unique Containers * BG:EE * BGII:EE * IWD:EE
================================================================
Player & Modder Resources
BAM Batcher * Creature Lister * Creature Checker * Creature Fixer * Tutu/BGT Area Map & List * Tutu Mod List
================================================================
"Infinity turns out to be the opposite of what people say it is. It is not 'that which has nothing beyond itself' that is infinite, but 'that which always has something beyond itself'." -Aristotle


#16 Ascension64

Ascension64
  • Modder
  • 5983 posts

Posted 08 February 2011 - 10:44 PM

There's a lot of unused code in the constructor for CAnimation5000 (and CAnimation7000), so I suppose that just took the cake.

The palette extender makes more colours available for palettable animations. Might need to extend randcolr.2da also - I forget whether there was a limit to that like there is to the other random tables.

It might not be a bad idea to consolidate all the 1PP exe patches, which probably wouldn't be nearly as difficult as IA. But there are currently some install order glitches with the patches that could be sorted out/avoided if done early on (but again, I suppose the mods would have to be updated).

What is the issue, exactly?

What would the code be to detect the paperdoll patch and skip it if it's already in? I'm a bit uncertain how to handle this what with all the "beta" stuff you've got going on, but I've asked for access for you in the mod's dev forum, if you want to take a look at it (or I could PM you the tp2 at least).

Yeah, again it would be ACTION_IF FILE_EXISTS "TobEx_ini/TobExVer.txt". I don't plan to change anything else from the current test release (0.18.2.8 ) apart from the bug fix to Learn Spell Mod and the WEIGHTALLOWANCEMOD stat, so feel free to test with that. Release planned at the end of this week, pending further bug reports.

Edited by Ascension64, 08 February 2011 - 10:45 PM.

--------------
Retired Modder
Note: I do not respond to profile comments/personal messages in regards to troubleshooting my modifications. Please post on the public forums instead.

Baldur's Gate Trilogy-WeiDU and Mods
Throne of Bhaal Extender (TobEx)

Contributions: (NWN2) A Deathstalker (voice acting) - (IWD2) IWD2 NPC Project (soundset editing) - (Misc) SHS PC Soundsets (voice acting)
Legacy: (BG/Tutu/BGT) Beregost Crash Fixer 1.9 (18 Jul 10) - (BG2) Enable conversations with charmed/dominated creatures (18 Jul 10) - (BG2) Experience Corrections (18 Jul 10) - (Misc) Platform Conversion Utility RC2 (13 Feb 10)


#17 Miloch

Miloch

    Barbarian

  • Modder
  • 6573 posts

Posted 09 February 2011 - 05:05 AM

What is the issue, exactly?

Here is a brief description. Basically, several mods include the same patching code (or similar bits of it) but they aren't all smart enough to account for the possibility of other mods already having done the relevant patching, so they'll fail to install (they assume to find only the bytes of an unmodded ToB .exe before patching).

At a larger level, what you've done might even cause an issue for mods that (currently) do check for the possibility of the .exe being patched already. For example, IA and Aurora include the paperdoll snippet already, as it is embedded in the .exe patch. If you've "externalised" it via DLL or whatever, won't that conflict with mods that are already patching the .exe to do it?

Infinity Engine Contributions
Aurora * BG1 NPC * BG1 Fixpack * Haiass * Infinity Animations * Level 1 NPCs * P5Tweaks
PnP Free Action * Thrown Hammers * Unique Containers * BG:EE * BGII:EE * IWD:EE
================================================================
Player & Modder Resources
BAM Batcher * Creature Lister * Creature Checker * Creature Fixer * Tutu/BGT Area Map & List * Tutu Mod List
================================================================
"Infinity turns out to be the opposite of what people say it is. It is not 'that which has nothing beyond itself' that is infinite, but 'that which always has something beyond itself'." -Aristotle


#18 Ascension64

Ascension64
  • Modder
  • 5983 posts

Posted 09 February 2011 - 03:48 PM

No, it won't. the virtual image of BGMain.exe is patched at run-time remember, so even if you install TobEx, all other mods won't even detect it.

With these other mods, instead of using FAIL, you could just PRINT or PATCH_PRINT instead and continue, although the latter does come with caveats if BGMain.exe got modded weirdly.

Edited by Ascension64, 09 February 2011 - 04:03 PM.

--------------
Retired Modder
Note: I do not respond to profile comments/personal messages in regards to troubleshooting my modifications. Please post on the public forums instead.

Baldur's Gate Trilogy-WeiDU and Mods
Throne of Bhaal Extender (TobEx)

Contributions: (NWN2) A Deathstalker (voice acting) - (IWD2) IWD2 NPC Project (soundset editing) - (Misc) SHS PC Soundsets (voice acting)
Legacy: (BG/Tutu/BGT) Beregost Crash Fixer 1.9 (18 Jul 10) - (BG2) Enable conversations with charmed/dominated creatures (18 Jul 10) - (BG2) Experience Corrections (18 Jul 10) - (Misc) Platform Conversion Utility RC2 (13 Feb 10)