TotoR Posted November 30, 2023 Share Posted November 30, 2023 (edited) Don't know why but this component update luabbr.2da in a strange way... for exemple fighter druid use to have fd0 as ref and is now changed for ft0. before: Spoiler 2DA V1.0 * ABBREV MAGE Ma0 FIGHTER Fi0 CLERIC Cl0 THIEF Th0 BARD Ba0 PALADIN Pa0 DRUID Dr0 RANGER Ra0 FIGHTER_MAGE FM0 FIGHTER_CLERIC FC0 FIGHTER_THIEF FT0 FIGHTER_MAGE_THIEF FMT MAGE_THIEF MT0 CLERIC_MAGE CM0 CLERIC_THIEF CT0 FIGHTER_DRUID FD0 FIGHTER_MAGE_CLERIC FMC CLERIC_RANGER CR0 ABJURER Ma0 CONJURER Ma0 DIVINER Ma0 ENCHANTER Ma0 ILLUSIONIST Ma0 INVOKER Ma0 NECROMANCER Ma0 TRANSMUTER Ma0 BERSERKER Fi0 WIZARD_SLAYER Fi0 KENSAI Fi0 CAVALIER Pa0 INQUISITOR Pa0 UNDEAD_HUNTER Pa0 FERALAN Ra0 STALKER Ra0 BEASTMASTER Ra0 ASSASIN Th0 BOUNTY_HUNTER Th3 SWASHBUCKLER Th1 BLADE Ba2 JESTER Ba3 SKALD Ba4 TOTEMIC_DRUID Dr0 SHAPESHIFTER Dr0 BEAST_FRIEND Dr0 TALOS Cl0 HELM Cl0 LATHANDER Cl0 MONK Mo0 BARBARIAN Fi0 WILDMAGE Ma0 SORCERER Ma0 after: Spoiler 2DA V1.0 * ABBREV MAGE MA0 FIGHTER FI0 CLERIC CL0 THIEF TH0 BARD BA0 PALADIN PA0 DRUID DR0 RANGER RA0 FIGHTER_MAGE FM0 FIGHTER_CLERIC FC0 FIGHTER_THIEF FT0 FIGHTER_MAGE_THIEF FMT MAGE_THIEF MT0 CLERIC_MAGE CM0 CLERIC_THIEF CT0 FIGHTER_DRUID FT0 FIGHTER_MAGE_CLERIC FMC CLERIC_RANGER CR0 ABJURER Ma1 CONJURER Ma2 DIVINER Ma3 ENCHANTER Ma4 ILLUSIONIST Ma5 INVOKER Ma6 NECROMANCER Ma7 TRANSMUTER Ma8 BERSERKER Fi1 WIZARD_SLAYER Fi2 KENSAI Fi3 CAVALIER Pa1 INQUISITOR Pa2 UNDEAD_HUNTER Pa3 FERALAN Ra1 STALKER Ra2 BEASTMASTER Ra3 ASSASIN Th2 BOUNTY_HUNTER Th3 SWASHBUCKLER Th1 BLADE Ba1 JESTER Ba2 SKALD Ba3 TOTEMIC_DRUID Dr1 SHAPESHIFTER Dr2 BEAST_FRIEND Dr3 TALOS Cl1 HELM Cl2 LATHANDER Cl3 MONK MO0 BARBARIAN FI4 WILDMAGE MA9 SORCERER SO0 In addition luso0.2da lake the last column [ALIGNMENT_RESTRICT] witch could be an issue for mod that check column. Edited November 30, 2023 by TotoR Quote Link to comment
DavidW Posted November 30, 2023 Share Posted November 30, 2023 Odd; will check. Quote Link to comment
subtledoctor Posted November 30, 2023 Share Posted November 30, 2023 1 hour ago, TotoR said: luso0.2da lake the last column [ALIGNMENT_RESTRICT] witch could be an issue for mod that check column In the vanilla game some tables have that column and others don’t… mods should already be designed to work both with and without it. Quote Link to comment
TotoR Posted November 30, 2023 Author Share Posted November 30, 2023 59 minutes ago, subtledoctor said: In the vanilla game some tables have that column and others don’t… mods should already be designed to work both with and without it. Point taken, In IE modding never make deduction on first sigth. However, as mages have this column, if SCS use luso0.2da, I thought that it should also be updated. Quote Link to comment
DavidW Posted December 1, 2023 Share Posted December 1, 2023 OK, the problem with fighter-druids getting fighter-thief HLAs is a library bug, not specific to this component. Fixed locally, will be in 35.1. If you want to hotfix it, open stratagems/sfo2e/lib_kit.tph in a text editor, go to line 1336, and replace FIGHTER_DRUID=>FT0 with FIGHTER_DRUID=>FD0. Can someone clarify the problem with LUSO0? Is the ALIGNMENT_RESTRICT column actually missing? It shouldn't be (there are nontrivial alignment restrictions for sorcerers) and it doesn't get removed by that component on my install. Quote Link to comment
TotoR Posted December 1, 2023 Author Share Posted December 1, 2023 5 hours ago, DavidW said: OK, the problem with fighter-druids getting fighter-thief HLAs is a library bug Thank you for the intel. However, this library does not only change fighter-druid but nearly all associations of kit. This could lead to "incompatibilities" in modded game... 5 hours ago, DavidW said: Can someone clarify the problem with LUSO0 As you know, in oBG2 sorcerer use MA0 as all other mages. This lib update luabbr and associate sorcerer to luso0.2da. luma0.2da Spoiler 2DA V1.0 * ABILITY ICON STRREF MIN_LEV MAX_LEVEL NUM_ALLOWED PREREQUISITE EXCLUDED_BY ALIGNMENT_RESTRICT 1 AP_SPCL928 * * 1 99 1 * * * 2 AP_SPCL929 * * 1 99 1 AP_SPCL928 * * 3 AP_SPCL930 * * 1 99 1 AP_SPCL929 * * 4 GA_SPWI920 * * 1 99 1 * * * 5 GA_SPWI921 * * 1 99 1 * * * 6 GA_SPWI922 * * 1 99 1 * * * 7 GA_SPWI923 * * 1 99 1 * GA_SPWI924 ALL_EVIL 8 GA_SPWI924 * * 1 99 1 * GA_SPWI923 ALL_GOOD 9 GA_SPWI925 * * 1 99 1 * * * 10 * * * * * * * * * 11 * * * * * * * * * 12 * * * * * * * * * 13 * * * * * * * * * 14 * * * * * * * * * 15 * * * * * * * * * 16 * * * * * * * * * 17 * * * * * * * * * 18 * * * * * * * * * 19 * * * * * * * * * 20 * * * * * * * * * 21 * * * * * * * * * 22 * * * * * * * * * 23 * * * * * * * * * 24 * * * * * * * * * luso0.2da (from obg2): Spoiler 2DA V1.0 * ABILITY ICON STRREF MIN_LEV MAX_LEVEL NUM_ALLOWED PREREQUISITE EXCLUDED_BY 1 GA_SPWI920 * * 15 40 2 * * 2 GA_SPWI921 * * 15 40 2 * * 3 GA_SPWI922 * * 15 40 2 * * 4 GA_SPWI923 * * 15 40 2 * * 5 GA_SPWI924 * * 15 40 2 * * 6 GA_SPWI925 * * 15 40 2 * * 7 * * * * * * * * 8 * * * * * * * * 9 * * * * * * * * 10 * * * * * * * * 11 * * * * * * * * 12 * * * * * * * * 13 * * * * * * * * 14 * * * * * * * * 15 * * * * * * * * 16 * * * * * * * * 17 * * * * * * * * 18 * * * * * * * * 19 * * * * * * * * 20 * * * * * * * * 21 * * * * * * * * 22 * * * * * * * * 23 * * * * * * * * 24 * * * * * * * * Some hla and the last column are missing. This 2da need to be updated like others. For all other luxxx.2da that are incorrect, the lib usually override them with luxx0.2da. This method is used for nearly all class However by doing that you may override 2da files that has been already updated by other mods... Quote Link to comment
DavidW Posted December 1, 2023 Share Posted December 1, 2023 LUSO0: Oh, I see - I hadn't noticed the 'oBG2' issue. Yes, that's probably worth addressing. The other changes are all intentional: that library ensures that every kit has a unique LUA file. (Granted, it's unnecessary for 'innate triggers' in particular to enforce that, since it's not actually messing with HLAs - that's what happens when you write a general function library to edit kits and then use it.) I'm not sure what the scenario is you have in mind that would lead to incompatibilities with other mods. The library is intelligent enough not to overwrite already-existing 2da files. Quote Link to comment
TotoR Posted December 3, 2023 Author Share Posted December 3, 2023 Sorry for my late answer. On 12/1/2023 at 11:02 PM, DavidW said: (Granted, it's unnecessary for 'innate triggers' in particular to enforce that, since it's not actually messing with HLAs - that's what happens when you write a general function library to edit kits and then use it.) I would say that you know what you do, and It should not normally create incompatibilities if SCS is used last... witch is not necessy the case for this component. On 12/1/2023 at 11:02 PM, DavidW said: LUSO0: Oh, I see - I hadn't noticed the 'oBG2' issue. Yes, that's probably worth addressing. The broken table (luso0.2da) is tip of the iceberg and need to be adresse for oBG2 user if you plan to use it. On 12/1/2023 at 11:02 PM, DavidW said: I'm not sure what the scenario is you have in mind that would lead to incompatibilities with other mods. The library is intelligent enough not to overwrite already-existing 2da files. For some classes, the library override ref in luabbr.2da without checking if there is another ref used and in addition it does not copy the moded table that was ref by luabbr.2da to the new table ref. (It uses the existing one like with Sorecer). The library does that for: FI0, CL0, TH0, BA0, PA0, DR0, RA0, FM0, FT0, FC0, FMT, MT0, CM0, CF0, FD0, FMC, CR0 and SO0. This process may lead to incompatibilities with mod that change hla of existing classes. To be fair they are not that many... refinement maybe? don't know for the rest. Quote Link to comment
DavidW Posted December 3, 2023 Share Posted December 3, 2023 1 hour ago, TotoR said: For some classes, the library override ref in luabbr.2da without checking if there is another ref used and in addition it does not copy the moded table that was ref by luabbr.2da to the new table ref. (It uses the existing one like with Sorecer). The library does that for: FI0, CL0, TH0, BA0, PA0, DR0, RA0, FM0, FT0, FC0, FMT, MT0, CM0, CF0, FD0, FMC, CR0 and SO0. This process may lead to incompatibilities with mod that change hla of existing classes. To be fair they are not that many... refinement maybe? don't know for the rest. Unless I'm missing something, the only circumstance I can see where that would create problems is if some other mod changed the core-class choice of LUA name. Which would be an odd choice... but I suppose I should allow for it, especially with sorcerers. Quote Link to comment
DavidW Posted December 3, 2023 Share Posted December 3, 2023 Just flagging this is unfixed in v35.1. (I wanted to get 35.1 out before catching a flight this evening, and this is lower priority than some issues.) Quote Link to comment
Recommended Posts
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.