Skip to content

[MOD] SG_Multikits v0.19-beta: Full multikits for all classes!

SadieGamerSadieGamer Member Posts: 24
edited December 2022 in General Modding
Like many before it, this mod lets you create multikits. I plan on adding to this mod by implementing ALL the multikits eventually. I'm trying to make it more extensible than CrevsDaak, FlameWing and Abel's versions, so it can have e.g. a Druid/Paladin multi. Thank you so much to you three for teaching me how I don't want my mod to work ;) , and for some helper functions :) ! Also thanks to Argent77 Subtledoctor and Aquadrizzt for their library ADD_KIT_EX, you guys rock :)

This is my first mod, so if you have comments on better practices than my current code, let me know! (I know, I know... I use macros too much. Blame Weidu for not allowing arrays as function inputs)

Here's the plan:
  1. (DONE v0.1) multikit base multiclasses, with user input
  2. (DONE v0.13) Auto-merge 2das so you don't have to babysit installs
  3. Auto-merge HLA tables
  4. multikit Druids as Pseudo-clerics (and Pseudo-rangers if user wants cleric-druid combo).
  5. Check mod compatibility with: Kit tomes, NPC_EE, Dual-Kits
  6. multikit rangers as pseudo-clerics, for more multi possibilities
  7. multikit Paladins as Pseudo-clerics (and pseudo-rangers for paladin-cleric builds)
  8. multikit Sorcerers via QD's code, maybe allow for pseudo-fighters via innate spellcasting
  9. multikit Shamans via Subtledoctor's code
  10. multikit Monks as pseudo-thiefs
  11. multikit Bard as thief? - modal abilities for song, thief for pickpocket, and maybe sorcerer-type innate spellcasting?
  12. or multikit bard as mage - look into if pickpocketting is possible via spells
  13. More triple-class options: Fighter-Cleric-Thief by creating a Fighter-Thief pseudo-thief
  14. multikit base multiclasses, create all possible multikit combos and deploy.
    Too many multikits, will hit 256 kit limit quickly: 1205 from base game alone.
    A possible fix is to create the multikits dynamically thru LUA on character creation...

Currently working on Druid Pseudo-Clerics.

https://github.com/sg2475962/sg_multikits/releases/latest
Post edited by SadieGamer on
«1

Comments

  • JohnBobJohnBob Member Posts: 147
    Hello,

    First of all, congratulations on this release, it looks very cool !!!

    I do a quick test, and notice two things...

    Trying to multikit with some kits of Morpheus...

    - A Cleric / Champion of the wild....
    Everything seem to work at creation,( but I do not have level up the character ), I notice that my character got "charm-animal" innate abilities, but the (ranger) champion of the wild, should not get this ability according to his description...
    CHAMPION OF THE WILD: Champions of the Wild embody discipline and skill and relies on quickness, agility, and an almost scholarly study of the most difficult and advanced techniques of swordplay instead of brute power. In order to become a Champion of the Wild, an initiate must excel in swordplay and exhibit patience, grace, and compassion. To take joy only in feat of arms is to live a crude and diminished life. There is more to life than fighting well, and the true champion knows this.

    Advantages:
    – May use Lay On Hands ability once per day to heal a target for 2 Hit Points per level of the Champion of the Wild.

    – 2nd Level: Gains the Elegant Strike passive ability.

    ELEGANT STRIKE: The Champion of the Wild becomes able to place attacks where they deal greater damage. The character applies <PRO_HISHER> Dexterity bonus as a bonus on damage rolls (in addition to any Strength bonus <PRO_HESHE> may have). Elegant Strike gains the following damage bonuses:
    16 Dexterity: +1 bonus to melee damage
    17 Dexterity: +2 bonus to melee damage
    18 Dexterity: +2 bonus to melee damage
    19 Dexterity: +3 bonus to melee damage
    20 Dexterity: +3 bonus to melee damage
    21 Dexterity: +4 bonus to melee damage
    22 Dexterity: +4 bonus to melee damage
    23 Dexterity: +4 bonus to melee damage
    24 Dexterity: +5 bonus to melee damage
    25 Dexterity: +6 bonus to melee damage

    – 4th Level: May use the Wrath of the Wild ability once per day and gains an additional use every 4 levels thereafter.

    WRATH OF THE WILD: The Champion of the Wild gains the ability to briefly channel the divine power of a wild diety, enveloping <PRO_HISHER> weapons in a veil of incandescent light. The character gains a +2 bonus to Thac0 and deals an extra 2d6 points of melee damage with each melee attack for 10 seconds.

    – 6th Level: Gains the Superior Defense passive ability.

    SUPERIOR DEFENSE: The Champion of the Wild learns special techniques for making the best use of <PRO_HISHER> natural agility even while wearing restrictive armor. The character gains a +1 AC bonus at 6th level. At 9th level the bonus improves to +2 and at 12th level it increases to +3.

    Disadvantages:
    – Receives a -1 max strength penalty.
    – May not wear armor heavier than studded leather.
    – May only assign proficiency points in one-handed swords.
    – May not charm animals.

    - A Psi warrior / mage / Swashbucler, but the Kit cannot be created...
    ERROR Installing [Multiclass Multikit Builder and Installer], rolling back to previous state
    Will uninstall  13 files for [SG_MULTIKITS/SETUP-SG_MULTIKITS.TP2] component 1000.
    Uninstalled     13 files for [SG_MULTIKITS/SETUP-SG_MULTIKITS.TP2] component 1000.
    ERROR: Failure("Length of argument \"kit_name\" exceeds 32 characters.")
    Please make a backup of the file: SETUP-SG_MULTIKITS.DEBUG and look for support at: SadieGamer (SG),  sg2475962@gmail.com
    

    Here the debug...

    I use french language for my game !

    Thanks for this new mod !!!
  • SadieGamerSadieGamer Member Posts: 24
    Thanks! The second issue should be fairly easy to fix. I'll look into the first issue, though - I'll probably need to do some modifications to Argent's Add_Kit_Ex library for that.
  • SadieGamerSadieGamer Member Posts: 24
    edited October 2022
    Alright, I pushed a fix for the name length issue, and tested it on a wizard slayer - priest of lathander - necromancer which worked: https://github.com/sg2475962/sg_multikits/releases/latest
  • JohnBobJohnBob Member Posts: 147
    edited October 2022
    Thanks a lot !

    At installation, when asking to merge clasweap for the second class and third class, second class priority is the same as for previous merge clasweap for the first class and second class... (Necromencer)

    A screenshot for clarity...
    Capture%20d%E2%80%99%C3%A9cran%202022-10-23%20193214.png

    So the install for a Psi Warrior / Necromencer / Swashbuckler work fine, the kit appear, everything is good until the spell selection thing, after select the number of spell for level one, the bouton "next" is grey and I cannot go further...

    Same with a Psi Warrior / Savant Artilleryman / Preacher of flamme
    Capture%20d%E2%80%99%C3%A9cran%202022-10-23%20193558.png

    And for testing with original game kits a Kensai / Illusionist / Cleric, in this case the problem appear after select the number of spells for level three !
    Capture%20d%E2%80%99%C3%A9cran%202022-10-23%20194102.png

    Game BG2EE Beamdog version and weidu.log...
  • SadieGamerSadieGamer Member Posts: 24
    Hmm, interesting, thanks! First issue's just cosmetic, if you select second class priority it will go with the cleric weapons. By the way, I don't know if it's clear, but to merge a kensai-mage-cleric, you'll need to select first class priority followed by restrict, so that missile weapons aren't allowed.
  • SadieGamerSadieGamer Member Posts: 24
    edited October 2022
    I'm not sure I see the bug in the second screenshot - you just need to unselect one of the pre-chosen spells and add one from your specialty school (in this case illusion 10' radius). I was able to recreate the bug in Psi Warrior / Savant Artilleryman / Preacher of flamme, in the base game, with Kensai/Illusionist/Shadowdancer... I'll look into it but it might require some UI modding, which I'm not super familiar with.

    I was able to create a Kensai/Illusionist/Thief though, with no problem.
  • JohnBobJohnBob Member Posts: 147
    Sorry, for a start I should have tried with the original kits !
    By the way, I don't know if it's clear, but to merge a kensai-mage-cleric, you'll need to select first class priority followed by restrict, so that missile weapons aren't allowed.

    Yes, it's not that clear, if you can clarify a bit, that would be great.

    First, we have to select a specific option ?
    You have picked: <FIGHTERTYPE>-Enchanter-Priest of Lathander (FIGHTER-ENCHANTER-LATHANDER_X). Are you sure? [Y/N]
    y
    
    How would you like to merge clasweap for FIGHTER and ENCHANTER?
    [1] First  class priority (FIGHTER, Kensai-Mage, Barbarian-Mage, etc.)
    [2] Second class priority (ENCHANTER)
    [3] Loosen   (like Fighter-Mage weapons)
    [4] Restrict (like Fighter-Cleric weapons)
    [5] Sum
    [6] Randomize
    [7] Smart Selection (EXPERIMENTAL)
    
    Input Integer:
    

    And next , we have to select another specific option ?
    Input Integer:
    1
    
    How would you like to merge clasweap for FIGHTER-ENCHANTER and LATHANDER_X?
    [1] First  class priority (FIGHTER, Kensai-Mage, Barbarian-Mage, etc.)
    [2] Second class priority (ENCHANTER)
    [3] Loosen   (like Fighter-Mage weapons)
    [4] Restrict (like Fighter-Cleric weapons)
    [5] Sum
    [6] Randomize
    [7] Smart Selection (EXPERIMENTAL)
    
    Input Integer:
    

    And not sure about :

    [5] Sum
    [6] Randomize
    [7] Smart Selection (EXPERIMENTAL)

    But that's okay, you will probably add more details.... No rush !

    I will probably do more testing in the future...

    Do you want me to do it with specific kits ?

  • Dan_PDan_P Member Posts: 126
    JohnBob wrote: »
    Trying to multikit with some kits of Morpheus...

    - A Cleric / Champion of the wild....
    Everything seem to work at creation,( but I do not have level up the character ), I notice that my character got "charm-animal" innate abilities, but the (ranger) champion of the wild, should not get this ability according to his description...

    @JohnBob , with this one, it's because multiclass kits with qdmulti (which I think ADD_KIT_EX uses a version of) include any abilities gained by the base class. I don't think there's a way around this, though maybe others would know. There are other issues like this as well. Thief kits always use the backstab table of the main class (i.e. a multiclass swashbuckler can backstab). For kits that remove abilities, such as Charm Animal or Set Snares, in addition to not learning those abilities, you also need to add effects to the kit itself to remove those abilities at every level.
  • SadieGamerSadieGamer Member Posts: 24
    Yup, that's the gist of it @Dan_P. The first component of the mod changes all backstab tables to use abilities instead though, except for the base thief, so that's fixed.
  • SadieGamerSadieGamer Member Posts: 24
    @JohnBob, one of my priorities right now is to avoid having to ask the user how to merge the weapon proficiencies, but in the meantime I would suggest sticking to using options 1 and 2, even if they won't be correct 100% of the time (e.g. if you choose option 2, a Kensai/Cleric will be allowed 5 pips in all melee weapons a cleric can use, and 1 pip in slings). If you choose option 4 (restrict), then the merge function will see that the kensai can't use missile weapons, so only allow the melee ones. I think the rule that multi-class fighters can't achieve 5 pips is kind-of stupid, so I ignored it, but maybe I should implement a user option for that...
  • JohnBobJohnBob Member Posts: 147
    Thanks for your answers, both of you !
  • MordekaieMordekaie Member Posts: 269
    Just for information :
    There is also the m7multikit mod that provides similar features :
    http://www.shsforums.net/topic/45258-multiclassed-multikit-builder-mod-experimental/
    https://github.com/CrevsDaak/m7multikit

    At one point, i was thinking to add that mod to my modlist but i changed my mind. Below you will fing my notes about that mod :

    - This mod should be installed after any mods that add new kits or that change kit abilities.
    - Not compatible with Refinements
    - Issue with HLA
    - From @Graion Dilach the m7multikit kits need to fix their HLA entry manually because the entry the mod writes is wrong; these kits will not have HLAs ingame without that - weird graphic when HPs are displayed : for a F/T it will show 11/11 ???

    Your mod may go through similar issues (in particular the HLAs).
  • SadieGamerSadieGamer Member Posts: 24
    edited October 2022
    Hi @Modekaie, yes I acknowledge them ! But yes, I was unhappy trying to get that mod to work and it broke so often that I just decided to make my own. Right now, here's the status of these issues:
    - This mod should be installed after any mods that add new kits or that change kit abilities.
    - this is somewhat the case for my mod - It's compatible with any non-thief kit installed after component #100 (base comonent), but if you install component #100, then a thief kit, and then component #1000, the multiclass version of the thief kit may have the wrong backstab multiplier. Therefore, I'd suggest only ever installing component #1000 directly after component #100.
    - Once I get druid pseudo-clerics working, this mod should also be installed after any component that adds druid and cleric spells. This is because my mod will modify how the flag for cleric exclusions works (like Druid's level 5 Iron Skins).
    - Not compatible with Refinements
    - I don't currently have HLAs fully functional yet - right now HLAs are chosen from the base multiclass instead of a combination of the kits and multiclass abilities. However, it should be compatible once those kinks are worked out.
    - Issue with HLA
    - see above.
    - From @Graion Dilach the m7multikit kits need to fix their HLA entry manually because the entry the mod writes is wrong; these kits will not have HLAs ingame without that
    - This is fixed in my version.
    - weird graphic when HPs are displayed : for a F/T it will show 11/11 ???
    - I'm not sure I understand, I'll take a look though.

  • MordekaieMordekaie Member Posts: 269
    SadieGamer wrote: »
    Hi @Modekaie, yes I acknowledge them ! But yes, I was unhappy trying to get that mod to work and it broke so often that I just decided to make my own. ...

    Great initiative. We are missing a multikit mod to complete the "Enable Dual-classing into Kits" mod and NPC_EE mod . Please make sure that your mod is compatible with those two mods ! :smiley:
  • EndarireEndarire Member Posts: 1,517
    Do triple classed characters get proper HLAs?

    How does your mod interact with Kit Tomes?

    Thankee!
  • SadieGamerSadieGamer Member Posts: 24
    @JohnBob The newest version (v0.13) allows you to simply input classes and doesn't ask how you want to merge 2das anymore! It should be correct for base classes, but I've not tested it on any mod kits.
  • SadieGamerSadieGamer Member Posts: 24
    edited October 2022
    Endarire wrote: »
    Do triple classed characters get proper HLAs?

    How does your mod interact with Kit Tomes?

    Thankee!

    Hey @Endarire, Currently any triple-classed characters get the base multiclass table, so in the vanilla game they shouldn't get HLAs before the XP cap, iirc, but in a modded game with the fixed table and uncapped xp table, they'll get their parent class table. I'll be expanding/restricting the options based on the kits soon, though, don't worry, so refinements compatibility is in the works~!

    As for kit tomes, I'm not sure, I've not played with that mod and it predates niceties like ADD_KIT_EX or subtledoc's QDMULTI, so I kind of doubt it would work very well with my mod. It shouldn't conflict, but I'm not sure if, e.g., kit tomes would be able to select multi-kits. I do however want to maintain compatibility with SCS and NPC_EE's components for choosing NPC kits, since these mods are very popular.
  • JohnBobJohnBob Member Posts: 147
    Hello @SadieGamer ,

    Thanks for the update !

    On BGEESoD, an error during the installation, just after :
    Create a kit? [Y/N]
    

    Here is the weidu.log and the debug...

    On BG2EE, everything install fine !!!

    So I try a Wizard Slayer - Illusionist - Priest of Tyr with a Half-elf, but same problem that before :

    Since Half-Elves cannot be Illusionists, this may be the reason for the problem !
    Capture%20d%E2%80%99%C3%A9cran%202022-10-25%20202008.png

    So I install the component of tweak anthology for allow all race to have all kits !

    Work fine with a Half-elf Deathslayer - Bladesinger - Holy Redeemer

    But not for Wizard Slayer - Illusionist - Priest of Tyr, I have tried with Human and Gnome...

    The green circle around the spell at selection are not present for Wizard Slayer - Illusionist - Priest of Tyr...

    But their are for the Deathslayer - Bladesinger - Holy Redeemer !


  • SadieGamerSadieGamer Member Posts: 24
    edited October 2022
    Thanks for the insight @JohnBob ! I think I might know how to fix the specialist mage problem then...
    On BGEESoD, an error during the installation, just after :
    Create a kit? [Y/N]
    


    Here is the weidu.log and the debug...
    I was able to install on BGEESOD just fine... odd.
  • SadieGamerSadieGamer Member Posts: 24
    Could you go into NearInfinity and export your copy of CLASTEXT.2da, and send it here please?
  • JohnBobJohnBob Member Posts: 147
    edited October 2022
    I have the Beamdog version of SoD, the "baldur.exe" is different from the GOG and STEAM version, is name is "SiegeOfDragonspear.exe" ! Do not know if it matter and maybe you know about it already...

    Here the files from the two game. (I add the weidu.log of Bg2ee just in case)

    Edit : The mod install without problem on a clean install !!!

    There seems to be a problem with IHateUndead on SoD...

    I tried again only with IHateUndead, same issue...

    Do you confirm an issue between IHateUndead and BGSod ?
    Post edited by JohnBob on
  • masteralephmasteraleph Member Posts: 272
    Definitely interested in the Fighter-Cleric-Thief as a possibility

    Wondering what you mean by multikitting Monks as pseudo-thieves- i.e., on the thief platform?
  • MordekaieMordekaie Member Posts: 269

    Wondering what you mean by multikitting Monks as pseudo-thieves- i.e., on the thief platform?


    Just to report :
    MOof (Monk Overhaul of Faerun) implements monks as thief kits. If i remember well it made specific monk items not usable anymore by MOoF Monks because the engine was considering them as Thiefs.
  • masteralephmasteraleph Member Posts: 272
    Mordekaie wrote: »

    Wondering what you mean by multikitting Monks as pseudo-thieves- i.e., on the thief platform?


    Just to report :
    MOof (Monk Overhaul of Faerun) implements monks as thief kits. If i remember well it made specific monk items not usable anymore by MOoF Monks because the engine was considering them as Thiefs.

    Oh the common implementation is to do monks as thieves on MCs, I think in part for thieving abilities and in part to keep them from MCing Thief and poaching UAI and going to town. I think my main problem is that I actually want to do a Monk as a backstabber (puncher?) /detrapper/ but also generally fighty guy, so I actually want that Thief MC available.
  • SadieGamerSadieGamer Member Posts: 24
    JohnBob wrote: »
    I have the Beamdog version of SoD, the "baldur.exe" is different from the GOG and STEAM version, is name is "SiegeOfDragonspear.exe" ! Do not know if it matter and maybe you know about it already...

    Here the files from the two game. (I add the weidu.log of Bg2ee just in case)

    Edit : The mod install without problem on a clean install !!!

    There seems to be a problem with IHateUndead on SoD...

    I tried again only with IHateUndead, same issue...

    Do you confirm an issue between IHateUndead and BGSod ?

    I'm not sure, I have had trouble with that mod in the past so I'll look into compatibility further. Also, I noticed you don't have DLCMerger installed for you SOD - you should, otherwise I've noticed that classnames and descriptions get corrupted.
  • SadieGamerSadieGamer Member Posts: 24
    AHA! found the bug, yes it was an issue with the FALLEN_RAHUUP class from IHATEUNDEAD, specifically; it adds an extra column to the clastext2da which doesn't exist in bgee... I've pushed a release to 0.14 on the github which should fix this, thanks to @K4thos for the function.
  • JohnBobJohnBob Member Posts: 147
    SadieGamer wrote: »
    I'm not sure, I have had trouble with that mod in the past so I'll look into compatibility further. Also, I noticed you don't have DLCMerger installed for you SOD - you should, otherwise I've noticed that classnames and descriptions get corrupted.

    DLC merger is not for beamdog version, only for Gog and Steam !
    SadieGamer wrote: »
    AHA! found the bug, yes it was an issue with the FALLEN_RAHUUP class from IHATEUNDEAD, specifically; it adds an extra column to the clastext2da which doesn't exist in bgee... I've pushed a release to 0.14 on the github which should fix this, thanks to @K4thos for the function.

    Great ! The installation is successful now !
  • EndarireEndarire Member Posts: 1,517
    MOoF is Monastic Orders of Faerun for multiclassed Monks. Check ahungry's posts near the end of this thread for his latest fix for MOoF.
  • EndarireEndarire Member Posts: 1,517
    @SadieGamer
    How fares progress on this mod?
  • SadieGamerSadieGamer Member Posts: 24
    Endarire wrote: »
    @SadieGamer
    How fares progress on this mod?

    Heya, I started a new job last week so I haven't had time to do much on the modding front.
Sign In or Register to comment.