Jump to content


Photo

TobEx Wish list


  • Please log in to reply
821 replies to this topic

#141 Dakk

Dakk
  • Member
  • 398 posts

Posted 02 February 2011 - 06:48 AM

@Ascenscion64
Would this, from the BG2 Tweak Pack documentation, be fixable:

No Drow Avatars on Party In Underdark (Weimer)
Non-Tutu
Adalon the Silver Dragon normally changes the party to look like drow cosmetically. Unfortunately, the game engine has a number of bugs related to this that cause the PCs to "stutter" and "stop walking" and whatnot (especially if they have regeneration items). This disables the cosmetic drow avatar bit only: the plot remains unchanged.



#142 DavidWallace

DavidWallace
  • Validating
  • 337 posts

Posted 02 February 2011 - 06:49 AM

Any chance of externalising the ToB start location? (Or reading it from the .ini file.) This is about the only SCSII hack I can't replicate via ToBEx, and I'm keen to stop hacking the exe independently if my musings on the other thread lead to an include-able ToBEx.

#143 Ascension64

Ascension64
  • Modder
  • 5983 posts

Posted 02 February 2011 - 11:34 PM

No Drow Avatars

Might be complicated, but something to investigate.

Any chance of externalising the ToB start location? (Or reading it from the .ini file.) This is about the only SCSII hack I can't replicate via ToBEx, and I'm keen to stop hacking the exe independently if my musings on the other thread lead to an include-able ToBEx.

Sure.

--------------
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)


#144 DavidWallace

DavidWallace
  • Validating
  • 337 posts

Posted 03 February 2011 - 01:29 AM

Any chance of externalising the ToB start location? (Or reading it from the .ini file.) This is about the only SCSII hack I can't replicate via ToBEx, and I'm keen to stop hacking the exe independently if my musings on the other thread lead to an include-able ToBEx.

Sure.


Thanks. Incidentally, startare.2da and startpos.2da look as if they're already externalised sources of the start location, but they normally don't work in ToB and the start area is hardcoded.

While I'm asking favours, would it be possible to externalise the (SoA and ToB) starting experience too? That's the other hack that Cam and my conversion of IWD to the BG2 engine uses. (Not that we currently use ToBEx, but it might be worth considering as it would allow some spell conversions - notably Cat's Grace - that we're not currently able to do.) If this is half-way tricky, I think we can live without it - there are clunky script workarounds - but my guess is that it might be quite clean and surgical and not get in the way of other code.

#145 Ascension64

Ascension64
  • Modder
  • 5983 posts

Posted 03 February 2011 - 01:50 AM

Actually, Tob starting area and position is

STARTARE.2DA
START_AREA_MP           AR4000
START_XPOS_MP           1311
START_YPOS_MP           2347

and

STARTPOS.2DA
START_XPOS_MP       1300    1300    1300    1300    1300    1300
START_YPOS_MP       1840    1840    1840    1840    1840    1840

I don't know how the devs mix up multiplayer with ToB... unless MP standds for something else.


While I'm asking favours, would it be possible to externalise the (SoA and ToB) starting experience too? That's the other hack that Cam and my conversion of IWD to the BG2 engine uses. (Not that we currently use ToBEx, but it might be worth considering as it would allow some spell conversions - notably Cat's Grace - that we're not currently able to do.) If this is half-way tricky, I think we can live without it - there are clunky script workarounds - but my guess is that it might be quite clean and surgical and not get in the way of other code.

OK, so we are talking about making BGT rely on TobEx for XP changes and XPPatcher to become obsolete (at least for SoA experience). I'm probably biased here...
How exactly does starting experience affect a Cat's Grace spell?

--------------
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)


#146 DavidWallace

DavidWallace
  • Validating
  • 337 posts

Posted 03 February 2011 - 02:07 AM

Actually, Tob starting area and position is

STARTARE.2DA

START_AREA_MP           AR4000
START_XPOS_MP           1311
START_YPOS_MP           2347

and

STARTPOS.2DA
START_XPOS_MP       1300    1300    1300    1300    1300    1300
START_YPOS_MP       1840    1840    1840    1840    1840    1840

I don't know how the devs mix up multiplayer with ToB... unless MP standds for something else.


Yes, but (as I recall) they're not enabled. It's faintly possible that I've been completely incompetent here, but my experience of trying to get ToB to start at WK is that the game usually (maybe not in all situations) just ignores these and goes with hardcoded data. Here's IWD-in-BG2's (doubtless hopelessly hacky) code, for instance:

COPY ~bgmain.exe~ ~bgmain.exe~
    SET ~i~=0x720000
    WHILE (~i~<0x730000) BEGIN
       READ_ASCII ~i~ + 0x8 ~check~ (2)
       PATCH_IF ~%check%~ STRING_EQUAL_CASE ~AR~ THEN BEGIN
          READ_ASCII ~i~ + 0x8 ~check1~ (6)
          READ_ASCII ~i~ ~check2~  (5)
          READ_ASCII  ~i~ +0x10 ~check3~(<img src='http://www.shsforums.net/public/style_emoticons/<#EMO_DIR#>/cool.gif' class='bbc_emoticon' alt='8)' />
          PATCH_IF (~%check1%~ STRING_EQUAL ~AR4000~ AND ~%check2%~ STRING_EQUAL ~Start~ AND ~%check3%~ STRING_EQUAL ~WorldM25~) THEN BEGIN
             WRITE_ASCII ~i~ + 0x8 ~AR9100~
             SET ~i~=0x730000
          END
       END
       SET ~i~=~i~+1
    END


While I'm asking favours, would it be possible to externalise the (SoA and ToB) starting experience too? That's the other hack that Cam and my conversion of IWD to the BG2 engine uses. (Not that we currently use ToBEx, but it might be worth considering as it would allow some spell conversions - notably Cat's Grace - that we're not currently able to do.) If this is half-way tricky, I think we can live without it - there are clunky script workarounds - but my guess is that it might be quite clean and surgical and not get in the way of other code.

OK, so we are talking about making BGT rely on TobEx for XP changes and XPPatcher to become obsolete (at least for SoA experience). I'm probably biased here...

Not directly. (I hadn't given much thought to BGT; I'm not familiar with XPPatcher.) IWD-in-BG2 hacks the exe to change the XP - if there's a better way, I'd be keen to hear it.

How exactly does starting experience affect a Cat's Grace spell?


Indirectly! I could make Cat's Grace work if I included ToBEx in IWD-in-BG2. But if I do that, I'm nervous about hacking the exe independently of ToBEx to fix the starting XP.

#147 Ascension64

Ascension64
  • Modder
  • 5983 posts

Posted 03 February 2011 - 02:26 AM

Yes, but (as I recall) they're not enabled. It's faintly possible that I've been completely incompetent here, but my experience of trying to get ToB to start at WK is that the game usually (maybe not in all situations) just ignores these and goes with hardcoded data. Here's IWD-in-BG2's (doubtless hopelessly hacky) code, for instance:

Try testing by changing STARTARE.2DA. The hard-coded uses of AR4000 are in certain game actions like MoveToExpansion(), LeaveAreaLua() and a few others.

Not directly. (I hadn't given much thought to BGT; I'm not familiar with XPPatcher.) IWD-in-BG2 hacks the exe to change the XP - if there's a better way, I'd be keen to hear it.

If there was an ini option with Custom Starting Experience=<some value>, then that would preserve current direct BGMain.exe patches but also overwrite the existing value if <some value> is set to some non-zero value (or -1 if you want to use 0).

--------------
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)


#148 DavidWallace

DavidWallace
  • Validating
  • 337 posts

Posted 03 February 2011 - 02:49 AM

Yes, but (as I recall) they're not enabled. It's faintly possible that I've been completely incompetent here, but my experience of trying to get ToB to start at WK is that the game usually (maybe not in all situations) just ignores these and goes with hardcoded data. Here's IWD-in-BG2's (doubtless hopelessly hacky) code, for instance:

Try testing by changing STARTARE.2DA. The hard-coded uses of AR4000 are in certain game actions like MoveToExpansion(), LeaveAreaLua() and a few others.


Understood - but it's MoveToExpansion() that I need to change. (Sorry, my original request could have been clearer.)

Not directly. (I hadn't given much thought to BGT; I'm not familiar with XPPatcher.) IWD-in-BG2 hacks the exe to change the XP - if there's a better way, I'd be keen to hear it.

If there was an ini option with Custom Starting Experience=<some value>, then that would preserve current direct BGMain.exe patches but also overwrite the existing value if <some value> is set to some non-zero value (or -1 if you want to use 0).

Sounds great.

Edited by DavidWallace, 03 February 2011 - 02:49 AM.


#149 Jarno Mikkola

Jarno Mikkola

    The Imp in his pink raincoat.

  • Member
  • 10911 posts

Posted 03 February 2011 - 03:56 AM

If there was an ini option with Custom Starting Experience=<some value>, then that would preserve current direct BGMain.exe patches but also overwrite the existing value if <some value> is set to some non-zero value (or -1 if you want to use 0).

Doesn't there need to be three of those values?
* The reqular BGII - SoA start(with in BGT -> BG1 start...)
* Tutorial start (with BGT -> The BG2 -SoA start...)
* And ToB start (with for eample in IwDinBGII starts the HoW expansion... I think).

But if it would be possible to disable offhand slot in certain situations, it could be possible to painlessly allow Sword&Shield users to equip bows, and dual wielders to generally equip a ranged weapon without pausing and going into inventory. Quickswitching and bugfixing. Double win.

Well, the game actually crashes when a character has a shield and a two handed equipment simultaniously... because there is no such animation slot. Of course it could be easy to tamper around if the animations would be added in say Infinity Animations via the same kind of hack, and then just copied the two handed animation to that slot. Eehmm, to all the creatures...

Deactivated account. The user today is known as The Imp.


#150 Miloch

Miloch

    Barbarian

  • Modder
  • 6579 posts

Posted 03 February 2011 - 04:24 AM

Well, the game actually crashes when a character has a shield and a two handed equipment simultaniously... because there is no such animation slot. Of course it could be easy to tamper around if the animations would be added in say Infinity Animations via the same kind of hack, and then just copied the two handed animation to that slot. Eehmm, to all the creatures...

It wouldn't make much sense to have shields or offhand weapons displayed with two-handed weapons (with the possible exception of bucklers). So perhaps disabling the offhand slot (and any assertion errors it would raise) when a two-handed weapon is equipped would make sense, if it could be done.

And on further consideration (of something buried further up in this thread), maybe it would make sense to allow animations > 256 pixels, if that could be done. It seems it's possible in PS:T, and BAM frame values are stored as SHORT rather than BYTE values, so I don't know why BG2 is so fussy with larger animations.

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


#151 Chevalier

Chevalier

    Knight of the Realms

  • Modder
  • 2405 posts

Posted 03 February 2011 - 06:51 PM

Allow NPCs to cast Find Familiar.

I Ride for the King!


a.k.a. Chev


#152 Ascension64

Ascension64
  • Modder
  • 5983 posts

Posted 04 February 2011 - 12:54 AM

Understood - but it's MoveToExpansion() that I need to change. (Sorry, my original request could have been clearer.)

So let's see, you probably want an action similar to MoveToExpansion() that sets:
1. a custom starting area
2. a custom thing called 'Start' (what is that?); and
3. a custom world map?

If there was an ini option with Custom Starting Experience=<some value>, then that would preserve current direct BGMain.exe patches but also overwrite the existing value if <some value> is set to some non-zero value (or -1 if you want to use 0).

Sounds great.

Sure, easily done. Yes, Jarno, there are probably three values.

Enable/Disable offhand

This probably isn't going to happen because it requires re-writing much of the equip/unequip/refresh equipment code. A huge amount of code (in AI, actions, etc.) depend on checking the presence of a shield, so I'm not game to touch that.

Allow NPCs to cast Find Familiar.

Do you mean joinable NPCs?

Edited by Ascension64, 04 February 2011 - 12:54 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)


#153 Chevalier

Chevalier

    Knight of the Realms

  • Modder
  • 2405 posts

Posted 04 February 2011 - 01:00 AM

Allow NPCs to cast Find Familiar.

Do you mean joinable NPCs?

Yes, I don't see why joinable NPCs can't have familiars too.

I Ride for the King!


a.k.a. Chev


#154 DavidWallace

DavidWallace
  • Validating
  • 337 posts

Posted 04 February 2011 - 02:13 AM

Understood - but it's MoveToExpansion() that I need to change. (Sorry, my original request could have been clearer.)

So let's see, you probably want an action similar to MoveToExpansion() that sets:
1. a custom starting area
2. a custom thing called 'Start' (what is that?); and
3. a custom world map?


That sounds much more complicated than what I had in mind. I just want to be able to change the starting area built into the existing MoveToExpansion() action. My assumption is that somewhere in the exe is a line that says "AR4000", I'd just like to be able to replace that line with another area.

The context is the SCS component that moves Watcher's Keep to between Shadows of Amn and Throne of Bhaal (so that you can do it in the presumably quiet period between Jon's death and the siege of Saradush, rather than implausibly fitting it into your hectic life in ToB or just before Jon). When Irenicus is killed, the game plays the Suldanesselar celebration cutscene and the Jon-in-Hell movie and then applies MoveToExpansion. I want that move to take the party to AR3000 rather than AR4000. If I can control the co-ordinates you arrive at, so much the better (my own ultra-crude hack doesn't allow that). I don't know what 'Start' is either, and I don't need a custom world map.

#155 Ascension64

Ascension64
  • Modder
  • 5983 posts

Posted 04 February 2011 - 03:51 AM

Oh, I was under the impression this was for IWD-in-BG2. I suppose it can be done.

--------------
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)


#156 DavidWallace

DavidWallace
  • Validating
  • 337 posts

Posted 04 February 2011 - 05:28 AM

Oh, I was under the impression this was for IWD-in-BG2. I suppose it can be done.


Sorry, unfortunate consequence of my choice of example. (I'm generally resisting the temptation to ask for exe hacks for IWD-in-BG2, because I think it would get completely out of hand very fast.)

#157 hook71

hook71
  • Member
  • 280 posts

Posted 04 February 2011 - 01:16 PM

A fix for the game crashing in inventory for the unsupported resolutions above 1024x768. Mainly happens with two handed weapons.

#158 the bigg

the bigg

    2083 is a prime number.

  • Modder
  • 3331 posts

Posted 04 February 2011 - 01:19 PM

cough widescreen mod cough

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.


#159 Miloch

Miloch

    Barbarian

  • Modder
  • 6579 posts

Posted 09 February 2011 - 05:24 AM

Allow items with more than 3 headers (see here). Probably not really feasible due to there being space only for 3 charge fields per item, but it might be useful to see how exactly the extra data structure(s) for such items get allocated in .sto, .cre and saved game files.

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


#160 Galactygon

Galactygon

    Modding since 2002

  • Member
  • 938 posts

Posted 09 February 2011 - 01:49 PM

I thought that 4th and succeeding extended headers are hradcoded to always use the first charge slot.

-Galactygon
Posted Image