Jump to content


Photo

Remove Druid Armor/Helmet/Shield Restrictions


  • Please log in to reply
6 replies to this topic

#1 MatthewH86

MatthewH86
  • Member
  • 34 posts

Posted 10 February 2010 - 08:23 PM

I'm having trouble removing the restrictions given to shields/helmets/armour for Druids. I used the Big World Mod setup program for the installation of BGT and it automatically installed the Item Revisions pack without giving me any options. I've tried running the setup-item_rev.exe to remove the restrictions but it shows that that part of the module isn't currently installed.
Restrict Fighter/Druids to Armor that Druids Can Wear (*)

Is there anything else that affects Druid armour usability?

Spoiler


#2 Jarno Mikkola

Jarno Mikkola

    The Imp in his pink raincoat.

  • Member
  • 10911 posts

Posted 10 February 2010 - 10:14 PM

I've tried running the setup-item_rev.exe to remove the restrictions but it shows that that part of the module isn't currently installed.
Restrict Fighter/Druids to Armor that Druids Can Wear (*)

Is there anything else that affects Druid armour usability?

Well, it's part of the primary component of the mod. This:
~ITEM_REV/ITEM_REV.TP2~ #0 #0 // Item Revisions by Demivrgvs: v2 (Hotfix 20091009)

Now, if you wish to make a hack out of the thing, I can help you...

Deactivated account. The user today is known as The Imp.


#3 Mike1072

Mike1072
  • Modder
  • 539 posts

Posted 10 February 2010 - 10:16 PM

These two changes are a part of IR's main component and can be reverted with this mini-mod. When IR v3 is released, these will be moved out of the main component and become available solely in the global components.

#4 Jarno Mikkola

Jarno Mikkola

    The Imp in his pink raincoat.

  • Member
  • 10911 posts

Posted 10 February 2010 - 10:44 PM

These two changes are a part of IR's main component and can be reverted with this mini-mod. When IR v3 is released, these will be moved out of the main component and become available solely in the global components.

Did you forget the Fighter/Druid multi-class?
PS: What's this supposed to be? The (\([%lnl%%mnl%%wnl%].*\)*\) in
~Not Usable By:.*\(\([%lnl%%mnl%%wnl%].*\)*\)[%lnl%%mnl%%wnl%][ %tab%]*Druid~
-just out of interest? :)

Edited by Jarno Mikkola, 10 February 2010 - 10:45 PM.

Deactivated account. The user today is known as The Imp.


#5 Mike1072

Mike1072
  • Modder
  • 539 posts

Posted 11 February 2010 - 01:00 AM

These two changes are a part of IR's main component and can be reverted with this mini-mod. When IR v3 is released, these will be moved out of the main component and become available solely in the global components.

Did you forget the Fighter/Druid multi-class?

I don't think so. The two changes are "Druids can't wear helmets" and "Fighter/Druids can't use armor (and shields etc.) that Druids can't" and there are separate components for each.

PS: What's this supposed to be? The \(\([%lnl%%mnl%%wnl%].*\)*\) in

REPLACE_TEXTUALLY ~Not Usable By:.*\(\([%lnl%%mnl%%wnl%].*\)*\)[%lnl%%mnl%%wnl%][ %tab%]*Druid~
 ~Not Usable By:\1~
-just out of interest? :)

It registers a bunch of lines of text of anything (and stores the result). [%lnl%%mnl%%wnl%].* means a newline character followed by any amount of text. Wrapping it in \( \) and adding a * to that means any number (0 or more) of these lines. Adding a further \( \) around the whole thing will store whatever text was matched, so we can use it later as \1. The whole operation is to remove a line containing Druid from the "Not Usable By" section of the description.

#6 MatthewH86

MatthewH86
  • Member
  • 34 posts

Posted 11 February 2010 - 08:46 AM

Thanks for the help guys, although I managed to bork my installation last night by attempting to uninstall another mod (I'll get the selection right yet!) so I'll put your advice to use when I've reinstalled the mods I hopefully want. sigh...

EDIT: That posted file worked a treat, many thanks! :)

Edited by MatthewH86, 11 February 2010 - 08:02 PM.


#7 MatthewH86

MatthewH86
  • Member
  • 34 posts

Posted 14 February 2010 - 05:41 PM

These two changes are a part of IR's main component and can be reverted with this mini-mod. When IR v3 is released, these will be moved out of the main component and become available solely in the global components.

Sorry for double post, but I think it's different enough from my previous to justify it.

I modified the file so that not all but some Armours were wearable by Fighter/Druids, as I didn't feel comfortable with Jaheira being able to wear Full Plate Armor. The effect of this is that Chainmail and below are now usable whereas Plate Armour isn't.
BEGIN ~Fighter/Druids Can Wear Armor Below Plate~

// fighter/druids can wear armor
...
COPY_EXISTING_REGEXP GLOB ~^.+\.itm$~ ~override~
  PATCH_IF (SOURCE_SIZE > 0x71) BEGIN
    READ_SHORT 0x1c item_type
    READ_BYTE  0x1e usability1
    READ_BYTE  0x1f usability2
    PATCH_IF (item_type == 0x03 || item_type == 0x06 || item_type == 0x07 || item_type == 0x0c) BEGIN // belts, bracers, helms, shields
      PATCH_IF ((usability2 BAND 0b00001000) == 0b00000000) BEGIN // if usable by fighters
        WRITE_BYTE 0x1f (usability2 BAND 0b11101111) // make usable by fighter/druids
        // update description
        PATCH_IF (~%LANGUAGE%~ STRING_COMPARE_CASE ~english~ == 0) BEGIN // if english
          SPRINT text_update ~druids_can_wear_helmets_english~
          LAUNCH_PATCH_MACRO ~update_item_descriptions~
        END
      END
    END
    PATCH_IF (item_type == 0x02) BEGIN // armour
      PATCH_IF ((usability2 BAND 0b00001000) == 0b00000000) BEGIN // if usable by fighters
        PATCH_IF ((usability1 BAND 0b01000000) == 0b00000000) BEGIN // if usable by bards
          WRITE_BYTE 0x1f (usability2 BAND 0b11101111) // make usable by fighter/druids
          // update description
          PATCH_IF (~%LANGUAGE%~ STRING_COMPARE_CASE ~english~ == 0) BEGIN // if english
            SPRINT text_update ~druids_can_wear_helmets_english~
            LAUNCH_PATCH_MACRO ~update_item_descriptions~
          END
		END
      END
    END
  END
  BUT_ONLY_IF_IT_CHANGES
...