Jump to content

Skills and Abilities Mod


Recommended Posts

45 minutes ago, Connelly said:

It's a hotfix subtledoctor made for an issue with his cantrips in a previous version of his Spell Tweaks. I just installed it a few hours ago, but our problem was already there before that, and I'd be pretty surprised if it alters the HLA tables in any way.

This should correct the bug, if you want to try it out. The class.ids in IWDEE, and most ids files in this game, seem to have a different header than in Baldur's Gate. IWDEE column 0 has only 1 row while Baldur's Gate has 2.

skills-and-abilities-v2.1.exe

Edited by morpheus562
Link to comment

Morpheus, since you're troubleshooting your master file at the moment, I wanted to point out that trying to install the Paladin abilities component results in a parsing error.  Note that this is only in your unreleased master file.  The release version is fine.  Here's the relevant text from the debug file:

[skills-and-abilities/components/class_skills/paladin_updates.tpa] PARSE ERROR at line 83 column 1-81
Near Text: PATCH_IF
    GLR parse error

[skills-and-abilities/components/class_skills/paladin_updates.tpa]  ERROR at line 83 column 1-81
Near Text: PATCH_IF
    Parsing.Parse_error
ERROR: parsing [skills-and-abilities/components/class_skills/paladin_updates.tpa]: Parsing.Parse_error
Stopping installation because of error.

ERROR Installing [Add New Paladin Abilities], rolling back to previous state
Unable to Unlink [skills-and-abilities/backup/80/OTHER.80]: Unix.Unix_error(1, "unlink", "skills-and-abilities/backup/80/OTHER.80")
[skills-and-abilities/backup/80/UNSETSTR.80] SET_STRING uninstall info not found
Will uninstall   0 files for [SKILLS-AND-ABILITIES/SKILLS-AND-ABILITIES.TP2] component 80.
Uninstalled      0 files for [SKILLS-AND-ABILITIES/SKILLS-AND-ABILITIES.TP2] component 80.

[skills-and-abilities/components/class_skills/paladin_updates.tpa] PARSE ERROR at line 83 column 1-81
Near Text: PATCH_IF
    GLR parse error

[skills-and-abilities/components/class_skills/paladin_updates.tpa]  ERROR at line 83 column 1-81
Near Text: PATCH_IF
    Parsing.Parse_error
ERROR: parsing [skills-and-abilities/components/class_skills/paladin_updates.tpa]: Parsing.Parse_error
Error Uninstalling [SKILLS-AND-ABILITIES/SKILLS-AND-ABILITIES.TP2] component 80:
Parsing.Parse_error

Link to comment
5 minutes ago, Delior said:

Morpheus, since you're troubleshooting your master file at the moment, I wanted to point out that trying to install the Paladin abilities component results in a parsing error.  Note that this is only in your unreleased master file.  The release version is fine.  Here's the relevant text from the debug file:

[skills-and-abilities/components/class_skills/paladin_updates.tpa] PARSE ERROR at line 83 column 1-81
Near Text: PATCH_IF
    GLR parse error

[skills-and-abilities/components/class_skills/paladin_updates.tpa]  ERROR at line 83 column 1-81
Near Text: PATCH_IF
    Parsing.Parse_error
ERROR: parsing [skills-and-abilities/components/class_skills/paladin_updates.tpa]: Parsing.Parse_error
Stopping installation because of error.

ERROR Installing [Add New Paladin Abilities], rolling back to previous state
Unable to Unlink [skills-and-abilities/backup/80/OTHER.80]: Unix.Unix_error(1, "unlink", "skills-and-abilities/backup/80/OTHER.80")
[skills-and-abilities/backup/80/UNSETSTR.80] SET_STRING uninstall info not found
Will uninstall   0 files for [SKILLS-AND-ABILITIES/SKILLS-AND-ABILITIES.TP2] component 80.
Uninstalled      0 files for [SKILLS-AND-ABILITIES/SKILLS-AND-ABILITIES.TP2] component 80.

[skills-and-abilities/components/class_skills/paladin_updates.tpa] PARSE ERROR at line 83 column 1-81
Near Text: PATCH_IF
    GLR parse error

[skills-and-abilities/components/class_skills/paladin_updates.tpa]  ERROR at line 83 column 1-81
Near Text: PATCH_IF
    Parsing.Parse_error
ERROR: parsing [skills-and-abilities/components/class_skills/paladin_updates.tpa]: Parsing.Parse_error
Error Uninstalling [SKILLS-AND-ABILITIES/SKILLS-AND-ABILITIES.TP2] component 80:
Parsing.Parse_error

Disregard, it should be fixed now.

Edited by morpheus562
Link to comment
54 minutes ago, morpheus562 said:

This should correct the bug, if you want to try it out. The class.ids in IWDEE, and most ids files in this game, seem to have a different header than in Baldur's Gate. IWDEE column 0 has only 1 row while Baldur's Gate has 2.

Everything works correctly now with this version. 👍

Link to comment
16 hours ago, Connelly said:

That's why mages aren't getting the S&A HLAs, S&A is doing what it should but its changes aren't being read because T&B is making the game use a new file because... reasons? 

TnB uses this handy function to modify mages' HLA tables - in this case, to make Chain Contingency an HLA innate ability instead of a spell.

It creates a new table while doing so, as a kind of copy-on-write functionality. Consider that all the mage specialists use the same HLA table in the base game. What if you want to give each specialist a special HLA just for it? Berserkers use the base fighter table; what if you want to give Berserkers a special Berserker-only HLA? Those functions make it simple: you just say

LAF action_add_hla STR_VAR kit_name = ~BERSERKER~ ability = ~AP_SPCLxxx~ num_allowed = ~1~ END
LAF action_add_hla STR_VAR kit_name = ~ILLUSIONIST~ ability = ~GA_SPCLxxx~ num_allowed = ~1~ END

The change happens for the specified kit, while the original table it is based on is left alone in case other kits are still using it and should not get the desired change. The new changed table is registered in LUABBR.2da so any mods that come later (ahem) can either look up the table they want to change, OR, they can simply use my handy-dandy functions and then they don't even have to think about it, it's just one simple lijne for each new HLA they want to add to the table. (The functions can also remove HLAs from a table, or do a direct conditional replacement on of one HLA for another.)

Link to comment

Official release for version 2.1 which brings the following enhancements:

  • Add Concentration Check to Resist Spell Disruption component.
  • Updated Wizard Slayer chance to dispel magic on hit from 10% to 25%.
  • New component: Physically Attacked Breaks Time Stop.
  • Stat increase HLAs now show as permanent stat increases (non-highlighted).
  • Bug fix provided by ewelsh42 to improve compatibility with Artisan's Kitpack Fighter Overhaul (16th lvl spec not applying).
  • Updated class.ids check to be compatible with IWDEE.
Link to comment

I personally wouldn't install my blade kit revisions or allow fighter multiclasses to achieve higher than specialized as it likely conflicts with what ToF is doing. Can you send me your kitlist.2da file, please? I have a suspicion there is a column inserted into it via one of the ToF components.

Link to comment
23 minutes ago, morpheus562 said:

I personally wouldn't install my blade kit revisions or allow fighter multiclasses to achieve higher than specialized as it likely conflicts with what ToF is doing. Can you send me your kitlist.2da file, please? I have a suspicion there is a column inserted into it via one of the ToF components.

Or maybe dummy line has to smth to with compatibility issues in case ToF is not last mod installed?

kitlist.2da

Edited by rpmaster
Link to comment
7 minutes ago, rpmaster said:

Or maybe dummy line has to smth to with compatibility issues in case ToF is not last mod installed?

kitlist.2da 56.83 kB · 0 downloads

It looks like @DavidW is adding a few dummy rows that use "*" instead of an integer. Are those being added for testing or are they a placeholder for something else? I doubt I'm the only person iterating through kitlist.ids, so this could cause issues for other mods if they are not adjusted to handle a non-integer character.

64 DW_DUMMY_0x4040 * * * * * * * *

 

Edited by morpheus562
Link to comment

The dummy kits are there because the kit slots at 0x4040, 0x4080, and 0x4100 overlap bitwise with some vanilla mage kits, and the engine is hardcoded to partially override the contents of the kits. So those slots aren't safe to put real kits into. See SubtleDoctor's post here.

I use * because that's the official default character for kitlist.2da. (Possibly wrongly; I can see it might mess with 3P assumptions.)

Link to comment
10 minutes ago, DavidW said:

The dummy kits are there because the kit slots at 0x4040, 0x4080, and 0x4100 overlap bitwise with some vanilla mage kits, and the engine is hardcoded to partially override the contents of the kits. So those slots aren't safe to put real kits into. See SubtleDoctor's post here.

Having looked into it further, I think that might be a losing battle. If I understand things correctly, it is not just those values that are affected by the mage specialist bug (or if not bug exactly, then “hard-coded compatibility issue”)… it is in fact all values that are bit-equal to them. Which is a LOT. The only real way to avoid is to do something like front-load all added arcane caster kits. But that may not be feasible, depending on the install.

All that said, “ * “ is in fact the specified default value for that table. 

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