[Tool] Weidu functions for modding HLAs
[Deleted User]
Posts: 0
The user and all related content has been deleted.
Post edited by [Deleted User] on
11
Comments
( bump)
For example if I wanted a caviler to gain access to HLAs at level 15 instead of 20, is there a way to isolate that?
- Drop the required level for HLA's to 1 for the class.
- Assign a dummy prerequisite HLA to each HLA that doesn't already have one or use the MIN_LEV column.
- Apply that dummy prerequisite HLA with Opcode 313 in each of that class's CLAB files one level before the desired level for it to become available (HLA's are done before the CLAB at level-up, so it has to be done on the previous level).
Note - You cannot choose HLA's at character creation, so SoA and ToB starts will lose any HLA picks they would have gotten at those pre-starting levels. This might be something the new UI could actually be modified to fix.
So with a 0.5 you would have to gain 2 levels at a time to get an HLA.
With a .25 you would have to gain 4 levels at a time to get an HLA.
With a .2 you would have to gain 5 levels at a time to get an HLA.
etc...
Fractional values greater than 1 also work(1.2, 1.5, 2.3, etc...) in the same way - fractional values are dropped after each levelup.
So yeah, not remotely practical.
In addition if the system was in fact more flexible I was envisioning a NWN feats style system with abilities that are more appropriate for the earlier levels.
Regardless thank you for your hard work to date!
Does the action action_add_hla function allow for prerequisites?
ABILITY ICON STRREF MIN_LEV MAX_LEVEL NUM_ALLOWED PREREQUISITE EXCLUDED_BY ALIGNMENT_RESTRICT 8 GA_SPCL914 * * 1 99 20 GA_SPCL913 * *
BEGIN ~Kensai High Level Ability revision~ ACTION_IF GAME_IS ~bg2ee~ THEN BEGIN // BG2EE INCLUDE ~Kensai Kit Revision/library/hla_actions.tpa~ // Modify HLA functions (subtledoctor) COPY ~Kensai Kit Revision/Spells/KENSAIH.spl~ ~override~ // Custom HLA Second Wind SAY NAME1 ~Second Wind~ SAY UNIDENTIFIED_DESC ~With extraordinary effort, a high-level kensai can avoid almost certain death. The effect lasts for 2 rounds, and during this time, the kensai cannot be reduced below 1 HP.~ LAF get_hla_table STR_VAR kit_name = ~KENSAI~ RET hla_table END ACTION_IF %hla_table% STRING_EQUAL_CASE ~fi0~ BEGIN COPY_EXISTING ~lufi0.2da~ ~override/lud5bh.2da~ LAF action_add_hla STR_VAR ability = ~GA_KENSAIH~ num_allowed = ~1~ END COPY_EXISTING ~LUABBR.2DA~ ~override~ SET_2DA_ENTRY 31 1 1 ~d5bh~ END ELSE BEGIN COPY_EXISTING ~lu%hla_table%.2da~ ~override~ LAF action_add_hla STR_VAR ability = ~GA_KENSAIH~ num_allowed = ~1~ END END END
Something seems to be array when I try and add a custom HLA. For some reason I'm not coping the lufi0.2da to the override folder not am I copying or editing the LUABBR.2da.
Thank you in advance...
In addition to adding a custom HLA, I used your code to rearrange the order in which they appear.
BEGIN ~Kensai High Level Ability revision~ ACTION_IF GAME_IS ~bg2ee~ THEN BEGIN INCLUDE ~Kensai Kit Revision/library/hla_actions.tpa~ COPY ~Kensai Kit Revision/Spells/KENSAIH.spl~ ~override~ SAY NAME1 ~Second Wind~ SAY UNIDENTIFIED_DESC ~With extraordinary effort, a high-level kensai can avoid almost certain death. The effect lasts for 2 rounds, and during this time, the kensai cannot be reduced below 1 HP.~ LAF action_remove_hla STR_VAR kit_name = ~KENSAI~ remove_ability = ~GA_SPCL900~ END LAF action_replace_hla STR_VAR kit_name = ~KENSAI~ remove_ability = ~GA_SPCL901~ ability = ~GA_SPCL901~ num_allowed = ~20~ END LAF action_remove_hla STR_VAR kit_name = ~KENSAI~ remove_ability = ~GA_SPCL902~ END LAF action_replace_hla STR_VAR kit_name = ~KENSAI~ remove_ability = ~GA_SPCL903~ ability = ~GA_SPCL903~ num_allowed = ~20~ END LAF action_remove_hla STR_VAR kit_name = ~KENSAI~ remove_ability = ~GA_SPCL908~ END LAF action_replace_hla STR_VAR kit_name = ~KENSAI~ remove_ability = ~GA_SPCL906~ ability = ~GA_SPCL906~ num_allowed = ~20~ END LAF action_replace_hla STR_VAR kit_name = ~KENSAI~ remove_ability = ~GA_SPCL905~ ability = ~GA_SPCL905~ num_allowed = ~20~ prerequisite = ~GA_SPCL906~ END LAF action_replace_hla STR_VAR kit_name = ~KENSAI~ remove_ability = ~GA_SPCL909~ ability = ~GA_SPCL909~ num_allowed = ~20~ prerequisite = ~GA_SPCL905~ END LAF action_add_hla STR_VAR kit_name = ~KENSAI~ ability = ~GA_SPCL913~ num_allowed = ~20~ END LAF action_add_hla STR_VAR kit_name = ~KENSAI~ ability = ~GA_SPCL914~ num_allowed = ~20~ prerequisite = ~GA_SPCL913~ END LAF action_add_hla STR_VAR kit_name = ~KENSAI~ ability = ~GA_KENSAIH~ num_allowed = ~1~ END LAF action_replace_hla STR_VAR kit_name = ~KENSAI~ remove_ability = ~GA_SPCL907~ ability = ~GA_SPCL907~ num_allowed = ~20~ END LAF action_replace_hla STR_VAR kit_name = ~KENSAI~ remove_ability = ~GA_SPCL904~ ability = ~GA_SPCL904~ num_allowed = ~20~ END END