Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Categories

Axis & Allies 1942 Online is now available in Early Access! Buy it on Steam. The FAQ is available.
New Premium Module: Tyrants of the Moonsea! Read More
Attention, new and old users! Please read the new rules of conduct for the forums, and we hope you enjoy your stay!

Enable Dual-classing into Kits (now with Proficiency Fix)

13

Comments

  • kjeronkjeron Member Posts: 2,038
    @AMP1972 Unlikely, I do not have any means to test mobile, and the mod needs to read string references from the game directly, as they are the only functional bit of information available through the UI at several stages. SoD standalone is even more of an issue, as there is no equivalent on PC platforms to look at.

    [Deleted User]
  • GusindaGusinda Member Posts: 1,558
    edited November 2018
    @AMP1972, would you like to try this? I created a modfile for this mod to allow you to play using it. I am unsure what other mods you are using at the moment but I noticed in a different post that you were having some problems using the XP remover.

    For info, if you have a PC, then you can install your mods etc into the BG1EE/SOD game and just use the override folder and dialog.tlk to create a modfile. It will work on the Android BGSOD only game no with problems. It just ignores any BG1EE only files...

    @kjeron, upon installation of the mod, there was an error installing the second component. This was installed onto a clean version of the game (GOG with modmerge run). Spoiler contains error message:


    ERROR locating resource for 'COPY'
    Resource [CLABMA01.2DA] not found in KEY file:
    [./chitin.key]
    Stopping installation because of error.
    Stopping installation because of error.
    ERROR: [KITLIST.2DA] -> [override] Patching Failed (COPY) (Failure("resource [CLABMA01.2DA] not found for 'COPY'"))
    Stopping installation because of error.

    ERROR Installing [Grant second-class Specialists their Bonus Spell Slots], rolling back to previous state
    Will uninstall 8 files for [DUAL_TO_KIT/SETUP-DUAL_TO_KIT.TP2] component 1.
    Uninstalled 8 files for [DUAL_TO_KIT/SETUP-DUAL_TO_KIT.TP2] component 1.
    ERROR: Failure("resource [CLABMA01.2DA] not found for 'COPY'")
    Please make a backup of the file: SETUP-DUAL_TO_KIT.DEBUG and look for support at: none

    Install Component [Grant second-class Specialists their Bonus Spell Slots]?


    I had a look using NearInfinity for CLABMA01.2DA and couldn't find it.

    Included with this modfile (Lang=English):
    - Dual classing into Kits
    - SUCCESSFULLY INSTALLED Enable Dualclassing into Kits
    - NOT INSTALLED DUE TO ERRORS SUCCESSFULLY INSTALLED Grant second-class Specialists their Bonus Spell Slots
    - SUCCESSFULLY INSTALLED Grant second-class Kits their Proper Proficiency Selection
    - XP Cap Removed (Tweaks Anthology version)
    - Access to console through UI
    - WeiDU.log

    To Install:
    - rename any current override folder to override.old (or whatever)
    - copy the attached file to your device
    - Unpack (keeping folder structure) the file into the root of

    Android/data/com.beamdog.siegeofdragonspear/files

    (lang-en_US.zip should be beside your baldur.lua and the override folder unpacked)
    - test game

    Hopefully it will all start up without problems. This modfile will only work with SOD v2.5.17.0 and when 2.6.x turns up, it will be invalid...

    Once installed and tested, depending on the mods you are currenlty using, you should be able to place your old mods into the new override folder if they are 'copy to override' only. If installed via WeiDU and they make adjustments to dialog.tlk, then they are likely not to work properly and will need to reinstalled using a different method.

    I tested the modfile creating a vanilla Fighter dualled to Assassin (and another dualled to Bounty Hunter) and had no problems. I am guessing that with the error for the Bonus Spells component that you might not get the bonus spell for mages. Also was able to go above the 500K XP cap.

    If none of this makes any sense, then let me know and I will try to explain better.

    Enjoy
    Gus

    Edit: Updated files with fixed Table

    Post edited by Gusinda on
    StummvonBordwehr[Deleted User]RAM021
  • kjeronkjeron Member Posts: 2,038
    Gusinda said:


    @kjeron, upon installation of the mod, there was an error installing the second component. This was installed onto a clean version of the game (GOG with modmerge run). Spoiler contains error message:

    The missing file is the default Mage CLAB table. Apparently the mage CLAB's are still not included by default. I'll post a fix when I can tomorrow, in the mean time, you can drop a clean copy of ~CLABFI01.2DA~ renamed ~CLABMA01.2DA~ in the override before installing and it should work.

    StummvonBordwehrGusinda
  • GusindaGusinda Member Posts: 1,558
  • LupusSolusLupusSolus Member Posts: 166
    I installed this after everything else but sadly I when I try to dual class I only get the generic classes.

  • kjeronkjeron Member Posts: 2,038
    edited December 2018

    I installed this after everything else but sadly I when I try to dual class I only get the generic classes.

    I'll need more details to help with this, particularly the "everything else".
    Also make sure you have the sufficient ability scores and alignment to dual into those kits - they often have stricter requirements than their base class.

  • Necromanx2Necromanx2 Member Posts: 1,060
    @kjeron I installed the "itemupgrade v44" mod and the dual to kit has stopped working. I uninstalled the mod and reinstalled DtK but to no avail. Looks like I am stuck doing a full uninstall of the game and reinstalling.

    Wanted to let you know that https://forums.beamdog.com/discussion/74559/item-upgrade-v44-now-available#latest seems to break this.

    RAM021
  • kjeronkjeron Member Posts: 2,038
    edited February 19
    @Necromanx2 not sure how this issue has gone unnoticed - it should have caused immediate issues - and it has nothing to do with itemupgrade.
    However, the forums are being a PITA right now - won't allow uploading .zip files, so:
    replace lines 287 + 288 with this:
    OUTER_SET	RACEID	= EVAL ~%READ_RACETEXT_%i%_1%~
    OUTER_SET	UPPERCASE	= EVAL ~%READ_RACETEXT_%i%_4%~
    
    The current lines should look similar, just with the wrong variable "READ_DUALCLAS_"

  • Necromanx2Necromanx2 Member Posts: 1,060
    I'm in the middle of the complete reinstall. I am surprised as I had no issues with this mod until the itemupgrade. Thanks for the info.

  • DJKajuruDJKajuru Member Posts: 3,098
    Highly approve of this mod, opens up a number of RP options and is far more convienient than EEKeepering, especially when it comes to companions.

    We all know Shar Teel is meant to be an assassin. ;)

    I disagree. Shar teel is more of a "kick the door" type of character , rather than a cold killer who'd get into someone's room at night and strike with a dagger.

    RaduzielRAM021
  • Necromanx2Necromanx2 Member Posts: 1,060
    edited February 28
    Hi @kjeron, were you able to get the fix into a release? I know I will forget to update the file in the future given how much I uninstall and reinstall to test mods.


    Nevermind, I see you did yesterday. Thanks!

  • subtledoctorsubtledoctor Member Posts: 11,223
    Quick question about the proficiencies part of this:

    If we set thieves to be able to use any weapons in weapprof.2da, and we add a "holy thief" kit that can only use blunt weapons, and someone using this mod dual-classes a fighter into the holy thief kit, will it be restricted to blunt weapons?

    Additionally, a suggestion: I think the kit selection is not offered if your first class already has one? Like, a Berserker will only have an option to dual into Thief, not Assassin or Swashbuckler.

    Why not offer kits even if you already have one, but with the explicit proviso that if the player choose any kit other than the base class, it will erase all vestiges of the kit in their first class. (Like using AddKit.) So a Berserker would have several options:
    - become a Berserker -> Thief
    - become a Fighter -> Assassin
    - become a Fighter -> Swashbuckler
    - become a Fighter -> Bounty Hunter

    I know the overt mechanical benefit is quite small, but the main idea would be to prevent people being constrained by choices they made many play hours earlier. It would give players the flexibility to change tack according to their current preferences.

    No idea if that would difficult to implement, of course...

  • kjeronkjeron Member Posts: 2,038
    If we set thieves to be able to use any weapons in weapprof.2da, and we add a "holy thief" kit that can only use blunt weapons, and someone using this mod dual-classes a fighter into the holy thief kit, will it be restricted to blunt weapons?
    Yes, it enforces dual-classed characters to only advance proficiency of their second class, both which proficiency can be raised and how high they can be raised. If they dualclassed the other direction, dualing from holy thief to fighter, they would use fighter proficiency options. This is a limitation more than it is intentional design. They will still regain the proficiency they advanced as a fighter when it reactivates.
    Why not offer kits even if you already have one, but with the explicit proviso that if the player choose any kit other than the base class, it will erase all vestiges of the kit in their first class. (Like using AddKit.)
    No idea if that would difficult to implement, of course...
    Implementation is the problem. The kit scrubber used by AddKit() and Dual-classing cannot remove a kit if it doesn't belong to your active class.
    An assassin dual-classing to berserker would retain their poison weapon ability and all other CLAB-applied effects. The only abilities and effects that would be removed are those that are also present in CLABTH01.2da (trueclass thief).
    Even when the thief class gets re-activated, only CLABTH01 would be run, stacking on top of their assassin and berserker abilities.
    The only way to do this properly would be to have the kit manually run 'AddKit(TRUECLASS)' before hitting the "Dual Class" button.

    RAM021
  • subtledoctorsubtledoctor Member Posts: 11,223
    kjeron wrote: »
    If we set thieves to be able to use any weapons in weapprof.2da, and we add a "holy thief" kit that can only use blunt weapons, and someone using this mod dual-classes a fighter into the holy thief kit, will it be restricted to blunt weapons?
    Yes, it enforces dual-classed characters to only advance proficiency of their second class, both which proficiency can be raised and how high they can be raised. If they dualclassed the other direction, dualing from holy thief to fighter, they would use fighter proficiency options. This is a limitation more than it is intentional design. They will still regain the proficiency they advanced as a fighter when it reactivates.

    Cool. In the unmodded game you actually get different prof choices when you are [dual-classed with original class inactive] vs. [dual-class with original class activated]. Which drives me bat-poop crazy.
    kjeron wrote: »
    An assassin dual-classing to berserker would retain their poison weapon ability and all other CLAB-applied effects. The only abilities and effects that would be removed are those that are also present in CLABTH01.2da (trueclass thief).
    Even when the thief class gets re-activated, only CLABTH01 would be run, stacking on top of their assassin and berserker abilities.
    The only way to do this properly would be to have the kit manually run 'AddKit(TRUECLASS)' before hitting the "Dual Class" button.

    Wait... so, setting aside this mod for the moment:

    1) if I am a berserker and I dual to thief, then soon thereafter I use and ability that invokes an AddKit script action... the script action would fail to remove my berserker kit? And the game would run clabfi01.2da when I reactivate my first class? (I guess the latter would be intended, if we're doing AddKit.)

    2) What if I'm a berserker and I dual to thief and then quickly invoke a SuperAddKit script action? Would it still run clabfi01.2da when I reactivate my first class?

    Raduziel
  • kjeronkjeron Member Posts: 2,038
    1) if I am a berserker and I dual to thief, then soon thereafter I use and ability that invokes an AddKit script action... the script action would fail to remove my berserker kit? And the game would run clabfi01.2da when I reactivate my first class? (I guess the latter would be intended, if we're doing AddKit.)
    Correct.
    2) What if I'm a berserker and I dual to thief and then quickly invoke a SuperAddKit script action? Would it still run clabfi01.2da when I reactivate my first class?
    Yes. Your fighter class no longer has a valid kit, so CLABFI01 would be run.

    Raduziel
  • subtledoctorsubtledoctor Member Posts: 11,223
    FYI, I just installed this and it seems to have messed up weeapprof.2da. The first row (LARGE_SWORD) is set to 255 for every class and kit; all the BG2 proficiencies are set to 7 for every class and kit.

  • kjeronkjeron Member Posts: 2,038
    FYI, I just installed this and it seems to have messed up weeapprof.2da. The first row (LARGE_SWORD) is set to 255 for every class and kit; all the BG2 proficiencies are set to 7 for every class and kit.
    That's intended - necessary to take control away from the engine, hence:
    kjeron wrote: »
    * The third component(proficiency) should also NOT be installed BEFORE any mod that alters or reads (WEAPPROF.2da).

    Raduziel
  • subtledoctorsubtledoctor Member Posts: 11,223
    Oh. Hm. So is it possible for me to make manual edits to a kit's proficiency limits after the fact?

  • kjeronkjeron Member Posts: 2,038
    edited March 30
    Oh. Hm. So is it possible for me to make manual edits to a kit's proficiency limits after the fact?
    It get's stored as a table in "M_KITPRF.lua", entries look like this:
    kitProfList[9] =  function(key)	local kit = { kit = 25337, desc = 24300, [89] = 0, [90] = 0, [91] = 0, [92] = 0, [93] = 0, [94] = 0, [95] = 0, [96] = 0, [97] = 0, [115] = 2, [98] = 0, [99] = 0, [100] = 0, [101] = 0, [102] = 2, [103] = 2, [104] = 2, [105] = 2, [106] = 2, [107] = 2, [111] = 2, [112] = 2, [113] = 2, [114] = 3, }	return kit[key]	end
    
    [proficiency stat] = maxvalue

    You could probably run REPLACE_TEXTUALLY:
    OUTER_SPRINT w ~[ %TAB%]*~
    OUTER_SET	id = (kit's row from KITLIST.2DA) or (classID + 1000)
    OUTER_SET	prof = (proficiency stat)
    OUTER_SET	newvalue = (new max prof value)
    COPY_EXISTING	~M_KITPRF.LUA~	override
    	REPLACE_TEXTUALLY	~\(kitProfList\[%id%\]%w%=%w%function(key).+\[%prof%\]%w%=%w%\)[0-9]+~
    	~\1%newvalue%~
    

    Though - what is it that needs to be installed after this?

    edit - fixed regexp

  • subtledoctorsubtledoctor Member Posts: 11,223
    edited March 30
    Nothing needs to be installed; just I see some things that need fine-tuning and make a few edits by hand. Standard procedure for my big installs. I see something I don't like or that didn't work - in this case, one of the Might & Guile kit proficiencies - and I change it in the mod for future installs, but for this install, to avoid reinstallation of everything (including SCS), I just make the change in NI.

    Complicating that is that I'm playing on an iPad. I install all mods, transfer over the override folder via dropbox, then anything I want to change once I've started playing the modded install, I can just tweak a few files and send them over individually. Reinstallation of anything in Weidu means the whole override folder with its 28,000 files needs to be sent back over to the iPad. My Dropbox weeps.

    Not the end of the world - and I think not worth trying to change anything with this mod. It just looked like a bug to me.

    EDIT - but there's no reason that wouldn't work, right? Uninstall this mod, make edits to weapprof, then install this mod anew? (Thankfully, I installed it last.)

  • Necromanx2Necromanx2 Member Posts: 1,060
    edited April 9
    @kjeron I am in a BGEE game and Jaheria just leveled her 3rd Fighter level. She cannot select more then one PIP in a weapon (see screenshot). If I uninstall the dual to kit mod, she can put a second PIP into sling or Quarter staff. So this mod seems to be blocking the second PIP.

    EDIT: I do have DoF installed and it modifies Jaheria's class in case that makes a difference.
    xxgdaphiojn4.png
    [spoiler/]

    Post edited by Necromanx2 on
  • kjeronkjeron Member Posts: 2,038
  • kjeronkjeron Member Posts: 2,038
    @Necromanx any other information you can give me?
    Is she still a Fighter/Druid, does she have a kit?
    I don't recall DoF changing anything but her spellbook, as it doesn't have a component specifically for her.

  • Necromanx2Necromanx2 Member Posts: 1,060
    Actually I have I Hate Undead and that gives Jaheria the Circle Enforcer kit on here multi-class.

  • kjeronkjeron Member Posts: 2,038
    Well that is odd, because the Circle Enforcer's Multiclass kit has been updated to work with this (separate descriptions for single/multi class version).
    I've matched those mods (DoF + IHU + DtK) and she's allowing two pips at level 3.

    Curious: In the Record Screen, "Class" Tab, does the kit description start off:
    CIRCLE ENFORCER (F/D):
    
    or just:
    CIRCLE ENFORCER:
    
    (It should be the former)

  • RaduzielRaduziel Member Posts: 4,611
    Just to clarify some things, if I may:

    DoF -> Updates Jaheira's spellbook if the sphere system is installed

    IHU -> Gives the Circle Enforcer kit to Jaheira, different strings for D and F/D version.

    IHU + DoF -> Gives the Circle Enforcer kit, updates her spellbook accordingly and alters the strings of IHU to fit DoF's pattern maintaining the distinction between D and F/D.

    StummvonBordwehr
Sign In or Register to comment.