Jump to content


Photo

High Level ABILITIES - a ToB mod for casters


  • Please log in to reply
28 replies to this topic

#1 vilkacis

vilkacis

    Rashemen REPRESENT! Word to yo hamsta!

  • Modder
  • 1571 posts

Posted 17 December 2009 - 12:35 PM

Posted Image

File Name: High Level ABILITIES - a ToB mod for casters
File Submitter: vilkacis
File Submitted: 17 Dec 2009
File Updated: 01 Sep 2010
File Category: Miscellaneous Released Mods

High Level Abilities


A Vilkalizer? brand mod (accept no substitutes!) for Baldur's Gate II: Throne of Bhaal


It always bugged me that HLAs for mages took up ninth-level spell slots even though they are tenth-level spells... so I decided to do something about it. (Only several years after I first thought of it...)

I don't know if something like this has already been done, but if it has, I haven't seen it, and it's not as if I spent a lot of time and effort on this anyway - it's a very simple mod. Readme follows:


Intro

This is a simple mod that turns mages' and clerics' high level abilities into innate abilities, thus freeing up the ninth- or seventh-level spell slots for actual ninth- or seventh-level spells. They now work similarly to other classes' HLAs, meaning each time you pick an ability, you get one use per day out of it. The HLA tables have been edited to allow the player to pick abilities multiple times.

Unlike other classes, casters' HLAs will still show up in their spellcasting menu, not their innate abilities menu. This was initially unintended, but makes sense seeing as they are, in fact, high level spells.

-

Installation

Unpack HLAbilities.zip to the folder where you have Baldur's Gate II installed. Unless you specified another location on install, that defaults to C:\Program Files\Black Isle\BGII - SoA

Run setup-highlevelABILITIES.exe and follow the instructions.

To uninstall the mod, run the setup program again.

-

Technical

"But what does it actually do?"

  • It replaces patches the LU***.2DA files (the high level ability tables) for all classes with full arcane or divine spellcasting abilities in order to allow multiple picks of the same ability (for any ability that is activated on use; you can still only pick the "extra spell slot" abilities once).
  • It patches the "spell" HLAs from the mage/cleric skill pools, changing the "spell type" attribute from "wizard" or "priest" to "innate".
  • That's it, really.

-

History

  • Dec 17, 09: v.0.1: initial release.
  • Jun 26, 10: v.1.0: re-coded by the bigg: "now completely patch-driven, making this compatible with any HLA mod under the sun".
  • Sep 01, 10: v.1.1: bugfix (also by the bigg)


Click here to download this file

Edited by vilkacis, 01 September 2010 - 10:54 AM.


#2 -Guest-

-Guest-
  • Guest

Posted 17 December 2009 - 02:31 PM

Any chance of this working with Refinements HLA's?

#3 vilkacis

vilkacis

    Rashemen REPRESENT! Word to yo hamsta!

  • Modder
  • 1571 posts

Posted 17 December 2009 - 02:42 PM

Any chance of this working with Refinements HLA's?

I'm not sure what Refinements does, precisely, but this mod is currently not compatible with any other mod that replaces the HLA tables (for instance, that adds new HLAs). It should be compatible with anything that changes the existing HLA abilities (such as Comet, Dragon's Breath, IA, etc), however, at least if it is installed last.

I'll look over Refinements and see if there's anything that can be done.

Edit: looked it over - yeah, they make a lot of changes, and I don't have time to get into that right now. For the time being, I've added a warning in the op that it's incompatible; I may be able to work things out at a later date, but not this year.

Edited by vilkacis, 17 December 2009 - 03:07 PM.


#4 -Guest-

-Guest-
  • Guest

Posted 17 December 2009 - 05:00 PM

Love the idea behind your mod. :coolthumb: It would be great if you could make this work for Refinements. For more than a few people, Refinements is a must have. Next year would be fine, its only 2 weeks away. :lol:

#5 Bartimaeus

Bartimaeus

    Drama Queen

  • Member
  • 132 posts

Posted 17 December 2009 - 10:07 PM

Sounds awesome - will try it out.

I assume this doesn't clash with mods that alter progression tables or anything? I don't think I use any mods that mess with the HLA's besides that, (and I'm not even sure if they do).

#6 vilkacis

vilkacis

    Rashemen REPRESENT! Word to yo hamsta!

  • Modder
  • 1571 posts

Posted 18 December 2009 - 03:33 AM

I assume this doesn't clash with mods that alter progression tables or anything? I don't think I use any mods that mess with the HLA's besides that, (and I'm not even sure if they do).

Anything such as xp cap removers or mods that extend the spellbook past level 20 or alter level progression, is most likely not a problem. It should also, technically, be compatible with mods that change when you start gaining HLAs (that's a separate file called LUNUMAB.2DA, which I don't touch).

If you have another mod that adds new HLAs or makes changes to how you obtain them (random examples: forcing you to learn Comet before you can learn Dragon's Breath, or making so you can't learn Energy Blades until level 25) then installing this mod after it will most likely just overwrite that.

If it's a particular mod you're wondering about, just tell me which one and I'll go have a quick look at it.

#7 sotona

sotona
  • Member
  • 58 posts

Posted 20 December 2009 - 02:58 AM

It always bugged me that HLAs for mages took up ninth-level spell slots even though they are tenth-level spells... so I decided to do something about it. (Only several years after I first thought of it...)

Hurray! Very useful mod, thanks vilkacis! :D
Whoa lord, it's hard to be humble, when you're perfect in every way.

Altered Knock Spell

#8 the bigg

the bigg

    2083 is a prime number.

  • Modder
  • 3331 posts

Posted 21 June 2010 - 07:52 AM

Full recode here.

Changes to lu*.2da and spell files are now completely patch-driven, making this compatible with any HLA mod under the sun (I only ran this under a freshly patched BG2 install without testing in-game, but I have no reason to suspect it wouldn't work with mods and/or in-game).

Additionally, the original mod was adding Wizard's HLAs to FMT and FMCs. I removed this behavior from the default setup (since I now extend the behavior of the current install), but you can easily restore it by installing the appropriate component from BG2_Tweaks and then this mod (in this order).

The original mod was creating a separate folder in the BG2 main directory for backups, rather than keeping them in the mod's folder. I didn't fix this behavior, since doing so would make it harder to properly uninstall the older version.

I only rewrote the tp2, so no changes to readme, version number etc. were made - those are up to Vilkacis IMHO ;)

EDIT 22/06: this new build removes all HLAs from simulacra (including the Fighter/Thief HLA), to simulate the level drain.

Attached Files


Edited by the bigg, 22 June 2010 - 04:59 AM.

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.


#9 F-man

F-man
  • Member
  • 10 posts

Posted 21 June 2010 - 01:00 PM

I made little tests with refinements and so far the only problems seems to be that multiclass mages can select Mirrored Clones without being illusionists. Didn't test if multiclass illusionists can select Death Field.

Edited by F-man, 21 June 2010 - 01:02 PM.


#10 the bigg

the bigg

    2083 is a prime number.

  • Modder
  • 3331 posts

Posted 21 June 2010 - 01:10 PM

Uh, I'll take a look in-game.

EDIT: can replicate, problem also happens for */Illusionists and Death Field. I should be able to fix.

EDIT II: fixed.

Edited by the bigg, 21 June 2010 - 02:31 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.


#11 F-man

F-man
  • Member
  • 10 posts

Posted 21 June 2010 - 03:25 PM

It also seems that changing spells to innate abilites had side effect of making simulacrum and mirrored clones clearly more powerful because their only 60% of everything weakness doesn't seem to effect to the number of innate HLAs. So if cast before using any HLA spells, simulacrums can cast any and all of HLA spells.

Edited by F-man, 21 June 2010 - 03:28 PM.


#12 the bigg

the bigg

    2083 is a prime number.

  • Modder
  • 3331 posts

Posted 21 June 2010 - 04:04 PM

Yes, I've noticed that (same thing happens with GWW and the like, obviously). I don't think there's an easy fix.

EDIT: I suppose I could have Simulacrum-like spells remove all HLAs in addition to its other nerfs.

Edited by the bigg, 21 June 2010 - 04:06 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.


#13 the bigg

the bigg

    2083 is a prime number.

  • Modder
  • 3331 posts

Posted 22 June 2010 - 05:01 AM

New build (re-added to my post up there) Simulacra and Mirrored Clones now removes *all* HLAs from the summoned clone (including fighter/thief type HLAs), since there's no easy way to remove just a random number of HLAs.

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.


#14 F-man

F-man
  • Member
  • 10 posts

Posted 22 June 2010 - 06:34 AM

New build (re-added to my post up there) Simulacra and Mirrored Clones now removes *all* HLAs from the summoned clone (including fighter/thief type HLAs), since there's no easy way to remove just a random number of HLAs.


I was thinking the same solution (with no skills to implement it, of course). Excellent work.

#15 vilkacis

vilkacis

    Rashemen REPRESENT! Word to yo hamsta!

  • Modder
  • 1571 posts

Posted 26 June 2010 - 07:08 AM

Full recode here.

:o

Neat.


Changes to lu*.2da and spell files are now completely patch-driven, making this compatible with any HLA mod under the sun (I only ran this under a freshly patched BG2 install without testing in-game, but I have no reason to suspect it wouldn't work with mods and/or in-game).

I had no idea that could be done. XD


Additionally, the original mod was adding Wizard's HLAs to FMT and FMCs. I removed this behavior from the default setup (since I now extend the behavior of the current install), but you can easily restore it by installing the appropriate component from BG2_Tweaks and then this mod (in this order).

Uuuuh. It's probably because I was basing it on a setup for higher xp caps where you could get the mage abilities on triple-classed characters.


The original mod was creating a separate folder in the BG2 main directory for backups, rather than keeping them in the mod's folder. I didn't fix this behavior, since doing so would make it harder to properly uninstall the older version.

That, on the other hand, is just a fuckup on my part. Renamed everything but the backup folder, or something like that. I r smrt.


I only rewrote the tp2, so no changes to readme, version number etc. were made - those are up to Vilkacis IMHO ;)

It needs a version update, at least. I'll add that and edit the op. Thanks.

#16 10th

10th
  • Member
  • 621 posts

Posted 31 August 2010 - 01:05 PM

Modifying all those HLAs to Innates seems to break SCS II in a very bad way, namely instant crashes to desktop without any errorlog at all even if you enabled Logging On=1 in your baldur.ini.

This problem doesn't occur with the refinement HLAs, but that's probably because no enemy uses them. Wouldn't it therefore be better to make copies of the existing vanilla HLAs, modify them like refinements, set them as innates, and replace the existing vanilla HLAs with these modified ones in the various LU***.2das?

I don't know if it applies here, but wasn't there an old problem with an earlier version of BG2 Fixpack, where they wanted to raise every innate to its appropriate spell level?

EDIT:
Found the link:
CamDawg's explanation over at G3
Meaning, the current system can be kept, if spell level of all these "new" vanilla innates is reduced to one.

EDIT2:
Simply putting the code from this mini-mod behind your existing code should fix it too:

innate spell fixer

10th

Edited by 10th, 31 August 2010 - 03:21 PM.

Avast! You cannot defeat our titan-mounted submarine staffed by cannibal vikings! - Nodwick

"I grab his deceased spirit and piledrive it back into his body, duplicating raise dead." - Psyren Oots board

#17 the bigg

the bigg

    2083 is a prime number.

  • Modder
  • 3331 posts

Posted 01 September 2010 - 03:09 AM

Or, more simply, change 30-ish of this mod's tp2 from

									SET $do(EVALUATE_BUFFER ~%ability%~) = type
									PATCH_IF type = 2 || type = 1 THEN BEGIN
										WRITE_SHORT 0x1c 4
									END
to
									PATCH_IF !IS_AN_INT $do(EVALUATE_BUFFER ~%ability%~) THEN BEGIN
										SET $do(EVALUATE_BUFFER ~%ability%~) = type
									END
									PATCH_IF type = 2 || type = 1 THEN BEGIN
										WRITE_SHORT 0x1c 4
										WRITE_LONG  0x34 1
									END

Spoiler

Edited by the bigg, 01 September 2010 - 03:25 AM.

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.


#18 Jarno Mikkola

Jarno Mikkola

    The Imp in his pink raincoat.

  • Member
  • 10911 posts

Posted 01 September 2010 - 03:52 AM

Edit:

... to

WRITE_SHORT 0x1c 4
										WRITE_LONG  0x34 1

Directly from the ancient Cleric Remix, I think:
WRITE_SHORT 0x1C 4                         // sets spell type to innate (4)
WRITE_LONG  0x34 1                         // sets spell level to 1 to avoid scripting issues
:P
:P :P :P
Just meant that one should always use the comments...

Edited by Jarno Mikkola, 01 September 2010 - 04:48 AM.

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


#19 the bigg

the bigg

    2083 is a prime number.

  • Modder
  • 3331 posts

Posted 01 September 2010 - 04:10 AM

If I have to set a spell's level to 1 by writing a DWORD of 1 at x34 then I write a DWORD of 1 at 0x34, even if another mod (that I never downloaded, much less installed and/or studied) did the same thing in the same way.

Besides, my snippet fixes a unrelated bug by adding the earlier PATCH_IF around the SET, so Vilkacis should include my snippet and not yours.

Edited by the bigg, 01 September 2010 - 04:11 AM.

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.


#20 vilkacis

vilkacis

    Rashemen REPRESENT! Word to yo hamsta!

  • Modder
  • 1571 posts

Posted 01 September 2010 - 10:55 AM

Vilkacis should include my snippet and not yours.

And so he did.

Thanks. :cheers: