HenchmenPresets

From Divinity Engine Wiki
Revision as of 15:17, 26 August 2017 by Tinkerer (talk | contribs)
Jump to: navigation, search

Overview

  • Henchman presets are designed to work with a character that already exists in the world (Global Character). Henchman presets are unique in that they can have their abilities and attributes weighted so that when the preset is applied, the stats are leveled up based on their weighting and the current level.
  • As a result of henchman presets designed to work with global characters, this means only certain file attributes are used compared to other preset types: Abilities, Attributes, Talents, Equipment and Skills.
  • Secondary attributes that can be defined by the preset are: NumStartingCombatAbilityPoints, NumStartingCivilAbilityPoints, NumStartingAttributePoints, NumStartingTalentPoints, Price and AreStatsWeighted
  • Presets must be placed in the folder ..\Data\Mods\Shared\CharacterCreation\HenchmanPresets\
  • Every preset must have a unique ClassType, otherwise the preset won't be loaded
  • Applying a henchmen preset: CharacterApplyHenchmanPreset

Attributes

  • ClassType: Name of the preset (required)
  • AbilityChange: Encompasses both Civil and Combat abilities (can be weighted). TODO: A list of these abilities.
  • AttributeChange: Strength, Finesse, Intelligence, Constitution, Memory, Wit (can be weighted).
  • TalentAdded: Racial and origin talents are applied automatically and don't need to be included.
  • SkillSet: Ensure these are valid based on the abilities assigned.
  • StartingEquipmentSet: Try and use equipment that scale with level.
  • NumStartingCombatAbilityPoints: If not weighted, must match the number of combat ability points assigned (required).
  • NumStartingCivilAbilityPoints: If not weighted, must match the number of civil ability points assigned (required).
  • NumStartingAttributePoints: If not weighted, must match the number of attribute points assigned (required).
  • NumStartingTalentPoints: Must match the number of talent points assigned (required).
  • Price: Base price for a Henchman. This is scaled based on character level (so it will be different even at level 1)

Weights

  • Weights work off a the process of dividing up available points based on the fraction that a single weight makes up
  • Any easy way to think of it, if A's weight is 2 and B's weight is 4, then B will be weighted to get two times more points than A. The reason this isn't exact is because it depends on how many points are available to distribute.
  • Note that if you don't assign a weight, then it will NEVER get points assigned.
  • Example:
    • Total points: 10
    • Weights; A=1, B=3, C=2
    • Total weight; 1+3+2 = 6.
    • Weight fractions; A=1/6, B=3/6, C=2/6
    • Points distributed; A=2, B=5, C=3

Example

 <?xml version="1.0" encoding="UTF-8" ?>
 <save>
   <header version="2" time="1387205254" />
   <version major="1" minor="3" revision="0" build="0" />
   <region id="CharacterCreationClass">
       <node id="root">
           <attribute id="ClassType" value="Battlemage" type="22" />			
           <attribute id="NumStartingCombatAbilityPoints" value="2" type="4" />
           <attribute id="NumStartingCivilAbilityPoints" value="1" type="4" />
           <attribute id="NumStartingAttributePoints" value="3" type="4" />
           <attribute id="NumStartingTalentPoints" value="1" type="4" />
           <attribute id="Price" value="200" type="4" />
           <attribute id="AreStatsWeighted" value="1" type="19" />
           <attribute id="SkillSet" value="Class_Battlemage_Act2" type="22" />
           <children>
               <node id="EquipmentProperties">
                   <children>
                       <node id="EquipmentProperty">
                           <attribute id="RaceName" value="Human" type="22" />
                           <attribute id="PreviewEquipmentSet" value="Class_Battlemage_Humans" type="22" />
                           <attribute id="StartingEquipmentSet" value="Class_Battlemage_Act2" type="22" />
                       </node>
                       <node id="EquipmentProperty">
                           <attribute id="RaceName" value="Dwarf" type="22" />
                           <attribute id="PreviewEquipmentSet" value="Class_Battlemage_Dwarves" type="22" />
                           <attribute id="StartingEquipmentSet" value="Class_Battlemage_Act2" type="22" />
                       </node>
                       <node id="EquipmentProperty">
                           <attribute id="RaceName" value="Elf" type="22" />
                           <attribute id="PreviewEquipmentSet" value="Class_Battlemage_Elves" type="22" />
                           <attribute id="StartingEquipmentSet" value="Class_Battlemage_Act2" type="22" />
                       </node>
                       <node id="EquipmentProperty">
                           <attribute id="RaceName" value="Lizard" type="22" />
                           <attribute id="PreviewEquipmentSet" value="Class_Battlemage_Lizards" type="22" />
                           <attribute id="StartingEquipmentSet" value="Class_Battlemage_Act2" type="22" />
                       </node>
                       <node id="EquipmentProperty">
                           <attribute id="RaceName" value="Undead_Human" type="22" />
                           <attribute id="PreviewEquipmentSet" value="Class_Battlemage_Humans" type="22" />
                           <attribute id="StartingEquipmentSet" value="Class_Battlemage_Act2" type="22" />
                       </node>
                       <node id="EquipmentProperty">
                           <attribute id="RaceName" value="Undead_Dwarf" type="22" />
                           <attribute id="PreviewEquipmentSet" value="Class_Battlemage_Dwarves" type="22" />
                           <attribute id="StartingEquipmentSet" value="Class_Battlemage_Act2" type="22" />
                       </node>
                       <node id="EquipmentProperty">
                           <attribute id="RaceName" value="Undead_Elf" type="22" />
                           <attribute id="PreviewEquipmentSet" value="Class_Battlemage_Elves" type="22" />
                           <attribute id="StartingEquipmentSet" value="Class_Battlemage_Act2" type="22" />
                       </node>
                       <node id="EquipmentProperty">
                           <attribute id="RaceName" value="Undead_Lizard" type="22" />
                           <attribute id="PreviewEquipmentSet" value="Class_Battlemage_Lizards" type="22" />
                           <attribute id="StartingEquipmentSet" value="Class_Battlemage_Act2" type="22" />
                       </node>
                   </children>
               </node>
               <node id="AbilityChanges">
                   <children>
                       <node id="AbilityChange">
                           <attribute id="Ability" value="DualWielding" type="23" />
                           <attribute id="AmountIncreased" value="3" type="4" />
                       </node>
                       <node id="AbilityChange">
                           <attribute id="Ability" value="AirSpecialist" type="23" />
                           <attribute id="AmountIncreased" value="2" type="4" />
                       </node>
                       <node id="AbilityChange">
                           <attribute id="Ability" value="WarriorLore" type="23" />
                           <attribute id="AmountIncreased" value="3" type="4" />
                       </node>
                       <node id="AbilityChange">
                           <attribute id="Ability" value="Persuasion" type="23" />
                           <attribute id="AmountIncreased" value="1" type="4" />
                       </node>
                   </children>
               </node>
               <node id="AttributeChanges">
                   <children>
                       <node id="AttributeChange">
                           <attribute id="AmountIncreased" value="6" type="4" />
                           <attribute id="Attribute" value="STR" type="23" />
                       </node>
                       <node id="AttributeChange">
                           <attribute id="AmountIncreased" value="4" type="4" />
                           <attribute id="Attribute" value="INT" type="23" />
                       </node>
                       <node id="AttributeChange">
                           <attribute id="AmountIncreased" value="3" type="4" />
                           <attribute id="Attribute" value="CON" type="23" />
                       </node>
                       <node id="AttributeChange">
                           <attribute id="AmountIncreased" value="2" type="4" />
                           <attribute id="Attribute" value="WIT" type="23" />
                       </node>
                   </children>
               </node>
               <node id="TalentsAdded">
                   <children>
                       <node id="TalentAdded">
                           <attribute id="Talent" value="ResistDead" type="23" />
                       </node>
                   </children>
               </node>
           </children>
       </node>
   </region>
 </save>