I added to the create_compendiums.py script because I wanted a compendium that excluded the Modern content and (optionally) flattened out subclasses.
I'm happy to make changes before merging upstream, or I'll just continue to maintain my fork for personal use.
Here are the changes summarized:
Content: Fixed file names in Homebrew and Unearthed Arcana
Script: compiles an Unearthed Arcana Compendium.xml but not add that to Full Compendium.xml to be consistent with previous behavior
Content: Updated Templates.xml to include notes for values and reference newer app features
Script: load and process partial files for BaseClasses and SubClasses
using <baseclass><name>Fighter</name>...<subclass baseclass="Fighter">... as a replacement for <class>...
Base/Sub files expected in directory Character/Classes/<class-name>/<class-name> (<subclass-name>).xml
Script: added argument processing and standard help features python ./create_compendiums.py -h
6 Script: add flags to manage whether subclasses are combined into one and/or are compiled separately (with or without base included) --basetype-format=complete --subtype-format=reference etc
Script: add flags so that certain tagged content can be excluded from compendiums
the script looks for XML attributes which I've named ['UA', 'MF', 'HB', 'PS', 'IL'] for
UA Unearthed Arcana
MF Modern and Future
HB HomeBrew and 3rd Party
PS Psuedo Spells - class features added to the Spells list to compensate for lack of support in app, eg Maneuvers and Eldritch Invocations
IL Inline Lists - repeated class feature options for later levels (eg Warlock Eldritch Invocations and Sorcerer Metamagic. I'd prefer to use back-references, but upstream excludes level-prerequisite features from early auto-level blocks
without using flags, MF and HB are excluded as they are not core D&D content
TODO:
support subclasses against multiple baseclasses (Ranger).
Consider how to get Mystic to work well with subclass pattern
Investigate a scripting solution to item affixes until FightClub adds that cms feature
I added to the
create_compendiums.py
script because I wanted a compendium that excluded the Modern content and (optionally) flattened out subclasses.I'm happy to make changes before merging upstream, or I'll just continue to maintain my fork for personal use.
Here are the changes summarized:
Unearthed Arcana Compendium.xml
but not add that toFull Compendium.xml
to be consistent with previous behavior<baseclass><name>Fighter</name>...
<subclass baseclass="Fighter">...
as a replacement for<class>...
Character/Classes/<class-name>/<class-name> (<subclass-name>).xml
python ./create_compendiums.py -h
6 Script: add flags to manage whether subclasses are combined into one and/or are compiled separately (with or without base included)--basetype-format=complete --subtype-format=reference
etc['UA', 'MF', 'HB', 'PS', 'IL']
forTODO: