Jump to content


Help with porting TB#Tweaks to EE Engine

  • Please log in to reply
7 replies to this topic

#1 the bigg

the bigg

    2083 is a prime number.

  • Modder
  • 3331 posts

Posted 05 October 2020 - 12:27 PM

Hi all,


I've received a PM about porting TB#Tweaks to the EE Engine. Given that I'm looking forward to spending 17 and 18 October in an hotel room I thought that I'd take a look at making the migration (since I don't think it will be a ton of work).


I have laid down a bullet point for the work required (both in general for EE migration, and in particular for TB#Tweaks components), and would be pretty grateful if somebody could go over my notes and point out any mistakes I've made or stuff I've forgotten about.


The basics

  1. Upgrade WeiDU.exe to the latest version
  2. Add an ALWAYS statement to call the HANDLE_CHARSETS function on .tra files that will contain in-game strings (but not for the component names, or other strings that will be printed to the CMD prompt)
  3. Fetch the latest multi-compatibility library (for handling area/chapter/game triggers across the gamut of BG* flavors)
  4. review GAME_IS statements as appropriate
  5. Add the standard readme blurb(s) as found E.G. in the Tweaks Anthology readme

Component breakdown


Component Title Component Description Compatible? Comment
Nature's Beauty Tweak Nature's Beauty 'blindness' effect only lasts 8 hours Yes – improveable

Standard SPL patching.


However, has the spell been already modified thus?

Imprisonment Fix Imprisonment becomes a 'permanent' maze, instead of removing the character from the party Yes – improveable

Standard SPL/ITM/EFF patching.


Currently the component sets 25 Intelligence on the party member, and edits INTMOD so that 25 intelligence is a permanent maze – is there a smarter way to do this in the EE?

Petrification Fix Petrification becomes a 'permanent' stun (and sets 1 HP), instead of removing the character from the party Yes Standard SPL/ITM/EFF patching
Drop Weapons in Panic Removal The Drop Weapons in Panic opcode is removed from the game Yes Standard SPL/ITM/EFF patching
Unlimited/Cheesier Limited Wish & Wish Removes all Wisdom requirements and random rolls from Limited Wish and Wish spells Yes Standard DLG patching
Improved Difficulty System Replaces Difficulty(xx) with a GetGlobal() check Yes – improveable I would need to edit the mod to add the extra difficulty settings (story mode and LOB), instead of the standard 5 difficulties from standard BG2. Otherwise, standard BCS/DLG patching
Faster Romances Makes RealGlobalTimer() checks faster Yes Standard BCS and DLG patching
No Item Requrements Removes minimum stat requirement from items Yes Standard ITM patching
WSPATCK for all All classes get bonus attacks per round according to wspatck.2da (so when leveling up and when specializing in a weapon). Optionally, make the level-up bonus attack at 7th and 13th be a CLABxxxx.2da feature for warriors (so that other classes only get the bonus attack from specialization) Yes - redundant (?)

Already implemented SubtleDoctor's APR on Spec mod.


If SubtleDoctor's mod doesn't offer the same customization options

3rd edition style strength Changes the Strength bonuses to be more linear Yes Standard 2DA patching
3rd edition style dexterity Changes the Dexterity bonuses to be more linear. Also, dexterity gives a bonus/malus to Breath saving throws Yes – improveable

Standard 2DA patching.


Currently the bonus/malus to saving throws is implemented by defining appropriate spells and adding appropriate IF blocks to every creature's BCS. Is there a smarter way in the EE to apply an effect based on the current Dexterity score (and change the bonuses as the score changes)?

3rd edition style constitution Changes the Constitution bonuses to be more linear. Also, constitution gives a bonus/malus to poison/paralysis/death saving throws Yes – improveable Same as "3rd edition style Dexterity"
3rd edition style wisdom Changes the Wisdom bonuses to be more linear. Also, wisdom gives a bonus/malus to Spell saving throws Yes – improveable Same as "3rd edition style Wisdom"
3rd edition style charisma Changes the Charisma bonuses to be more linear. Yes Standard 2DA patching
Druids can wear metal Reverts ItemRevision changes that forbid Druids from wearing helmets and other metal armor Yes Standard ITM patching
Gain stats as you level up Party members gain extra stats at certain XP or character milestones Yes Standard BCS/DLG coding. Chapter-based increments are probably overpowered for SoD, but that's none of my business  :shifty:
Party members can facestab too Party thieves/stalkers (when invisible) no longer need to be behind an enemy to benefit from backstab multiplier. Optionally, to benefit from this, they must be under the effect of Non-Detection No Going to assume that this is incompatible with EET, as the mod did nothing more than install Ascension64's TobEx.
Mages drop spellbooks Enemy mages carry a spellbook item, that party mages can then use to learn spells (rather than relying on scrolls) Yes (?)

The basic mod is already compatible, as it is standard CRE/ITM patching.


However, the component used Ascension64's TobEx to make the Learn Spell opcode apply the same rules as scrolls would, so I would need to verify that the rules are still applied:


1) forbidden school for specialized wizards

2) INTMOD rules regarding max # of spells and % change to learning spells

3) sorcerers must not benefit from the item

4) no bonus XP to be given if the spell isn't learned



I apologize for dropping a dozen open-ended questions here - hopefully I have some left-over good will that I can bank on  :lol2:




I apologize for dropping a dozen open-ended questions here - hopefully I have some left-over good will that I can bank on  :lol2:


Edited by the bigg, 05 October 2020 - 12:29 PM.

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.

#2 Thanatos-Zero

  • Member
  • 22 posts

Posted 05 October 2020 - 01:25 PM

In regards to APR on Spec, there is also now with the EE versions the CLSWPBON.2DA file. It handles, which class receives benefits of the WSPATCK.2DA file.

Here a simplefied and shortened version of the file itself, without all the multiclasses and kits.
2DA                 V1.0
                    GETS_PROF_APR       UNARMED_DIVISOR     ZERO_SKILL_THAC0
MAGE                                   0                   0                   5
FIGHTER                              1                   0                   2
CLERIC                                 0                   0                   3
THIEF                                    0                   0                   3
BARD                                    0                   0                   3
PALADIN                               1                   0                   2
DRUID                                  0                   0                   3
RANGER                               1                   0                   2
BARBARIAN                          1                   0                   2
SORCERER                            0                   0                   5
MONK                                   1                   3                   2
SHAMAN                               0                   0                   3

 Edit: As I tried it out without the mod, it seems APR to Spec is still needed to make this work properly.

Edited by Thanatos-Zero, 10 October 2020 - 11:21 AM.

"That was me as well!" Or if you prefer moon speak... "SORE MO WATASHI DA!"

#3 Endarire

  • Member
  • 216 posts

Posted 05 October 2020 - 10:19 PM

The official guide to converting mods to support EE and EET.

#4 jastey

  • Administrator
  • 3218 posts

Posted 05 October 2020 - 10:48 PM

Hello the bigg!!! Nice to see you around.

The basics look about right. With the components I can't help much.

#5 Thanatos-Zero

  • Member
  • 22 posts

Posted 06 October 2020 - 06:35 AM

Since the original link of K4thos doesn't work anymore, here the one, which does.

How-to: Converting existing mods to the EE engine

Edited by Thanatos-Zero, 06 October 2020 - 06:36 AM.

"That was me as well!" Or if you prefer moon speak... "SORE MO WATASHI DA!"

#6 CamDawg



  • Modder
  • 1505 posts

Posted 06 October 2020 - 06:55 AM

Welcome back! Always nice to see old-timers, even if it's just for a bit. I'm assuming you're going to continue to support the originals. In which case, while EE does have some ways you can improve some of these tweaks, it may not be worth it since you'd end up supporting two methods--supporting one (slightly suboptimal) method may be better.


That being said, I'll try and walk through some of the questions.


Nature's Beauty still has permanent blind.


Maze's opcode supposedly supports an arbitrary duration if parameter1 = 1 (and for the originals, too). Otherwise, no special EE stuff here.


For the 3e-style attribute bonuses w.r.t. saving throws, you can actually screen out effects via EE's opcode 318. So you could put targeted EFFs for bonus/malus directly into the items and spells based on the target's attributes and screen out ones that shouldn't apply as needed.


For the components that require TobEx, I'll see if I can get Bubb (who runs EEex) to weigh in.


edit: ate my line breaks

Edited by CamDawg, 06 October 2020 - 07:04 AM.

Why is this Hypnotoad video so popu... ALL GLORY TO THE HYPNOTOAD.
The Gibberlings Three - Home of IE Mods

The BG2 Fixpack - All the fixes of Baldurdash, plus a few hundred more. Now available, with more fixes being added in every release.

#7 Mike1072

  • Modder
  • 539 posts

Posted 06 October 2020 - 11:03 AM

Look who it is!  Great to see you around again.


I don't have much to add when it comes to improving compatibility for EE/EET, but I can point out that the "Druids can wear metal" component may not serve much purpose when it comes to Item Revisions.  IR has a separate component for adding these restrictions to druids and fighter/druids, so players could get the same effect by just not installing the IR component to begin with.  However, your component may still be useful in combination with the Druid Remix component from Divine Remix or other mods that bundle the usability changes with additional features.

#8 Thanatos-Zero

  • Member
  • 22 posts

Posted 30 October 2020 - 11:31 AM

@the_Bigg Has there been any progress since the 18th October?

"That was me as well!" Or if you prefer moon speak... "SORE MO WATASHI DA!"