Releases: morepurplemorebetter/MPMBs-Character-Record-Sheet
v13.0.6-beta2 (2021-05-29)
The document-level code for v13.0.6 beta version of MPMB's Character Record Sheet, originally released on 29 May 2021.
Note that this repository only includes the SRD content and that these files alone are not enough to create the PDF character sheet.
Code changes
Changelog
- Changed how semantic versioning is used to indicate the different versions free/Patreon.
- Changed how minimum version requirements of import script are handled if the import script also produces an error.
- Changed the fields for armour AC, shield AC, and companion AC to accept modifier strings (e.g. Str and Prof).
- Changed all spells with the range Self (area) to have that included in their range description as "S:" (previously only showed the area, which was confusing for things that can’t be used with “range: Self” spells).
- Changed the order of the race dropdown on the Companion page to first list the CreatureList entries and then the RaceList entries.
- Changed cantrip attack entries to no longer have a book reference in the description field, as it was too cramped in the description field when certain class features added their contributions.
- Made it possible for an attack to be recognized as both a spell/cantrip and a weapon.
- Made the attack entries for creatures work identical to those in the WeaponsList object.
- Made it possible to have another layer of submenus in the “Choose Feature” menu on the second page. For example, the warlock invocations are now sorted by level prerequisite to have them easier to navigate.
- Made it easier to add an alternative class feature that has
extrachoices
andautoSelectExtrachoices
of its own. - Made the Choose Feature menu clearer when it comes to selecting optional class features and alternative class features. Each is now grouped together instead of jumbled up.
- Made it possible for RaceList and CreatureList entries to have an array for size, so the player is prompted which size to select.
- Made the average HP to be rounded down on the companion page when a creature is selected (e.g. not a player race).
- Made it possible for a choice (e.g. of a feat or magic item) to change some spellcasting attributes even if only the parent has the
spellcastingBonus
attribute. For example, the choice can now change the spellcasting ability score or the spell DC. - Added a way for features to add magic items to the magic item section.
- Added a way for features to add creatures to the list of options on the companion page.
- Added a way for features to add creatures to a companion page.
- Added a way for features, traits, and actions to only be added once a minimum character level is reached, similar to how class and racial features are added (new CreatureList.features/traits/actions
minlevel
attribute). - Added the
addMod
functionality to creatures for use on the companion page. - Added a way for creatures to have alternative HP calculations on the companion page that also auto-updates.
- Added a way to force HP recalculation (calcChanges.hpForceRecalc).
- Added creatures that are optional Find Familiar choices to the companion familiar menu. They are displayed with the note “(if DM approves)”.
- Added a way for creatures to be recognized with alternative names (e.g. “Toad” and “Frog” now both work for the same stats).
- Added a way for creatures to automatically set its companion type, e.g. be a Familiar (new
companionApply
attribute). - Added a way for creatures to automatically have its proficiency bonus match that of the main character (new CreatureList
proficiencyBonusLinked
attribute). - Added a way for creatures to automatically have its number of hit match that of the class level of the main character (new CreatureList
hdLinked
attribute). - Added a way for creatures to have its level-dependent features be determined by the class level of the main character instead of its total level (new CreatureList
minlevelLinked
attribute). - Added a way for attack entries to use the spellcasting attack or DC of a specific spellcasting object. For example, a creature’s attack can now be set to use the Wizard’s spell attack bonus (
useSpellMod
attribute). - Added a way for weapons to have the ‘special’ attribute without having to include it in the description.
- Added tooltips for the weapons with the special attribute (net and lance).
- Added a new “Companion” section to the Changes dialog to notify about companion page additions and callback changes.
- Added menu options to set the checkboxes for Jack of All Trades, Remarkable Athlete, Proficiency Dice, and Players Make All Rolls.
- Added a way to create ClassFeatureVariants for/with features that have
extrachoices
. - Added callback functions when adding a creature to the companion page (calcChanges.creatureCallback) and when changing something on the companion page to a special companion like a Find Familiar (calcChanges.companionCallback).
- Added a way for limited features of different sources to be added together natively (no longer a need for
eval
functions). - Added a way for races, feats, and magic items to allow their spells to be upcasted (
allowUpCasting
attribute). - Added a way for an entry in the Choose Feature menu to be both disabled (greyed out) and marked, by having the
prereqeval
return “markButDisable”. For example, if you now manually add expertise to a skill, that skill will no longer be selectable for the Expertise class feature (i.e. greyed out in the menu), but it will have a checkmark to indicate that it already has expertise enabled. - Added a way for a companion to have the saving throw bonuses of the main character displayed (
savesLinked
attribute). - In the Choose Feature menu, the current feature’s object name is now also passed to the
prereqeval
function, to adhere to the standard set for Feats and Magic Items, so that prereqeval can be used more dynamically. - Updated ranger’s companions to make use of the new companion page options (e.g. calcChanges.hp).
- Improved Wild Shape calculation to look for alternative AC calculations (any armour with the new ArmourList attribute
affectsWildShape : true
). - Improved the dialog that asks the user to make a choice from a radio button list by adding a third and fourth column, to avoid the dialog getting to long.
- Fixed issue with importing characters from a v12.995 sheet.
- Fixed issue importing the last row of a spell sheet page.
- Fixed Staff of Charming not showing its charges in the Limited Features section.
- Fixed
RemoveString()
deleting seeming random stuff when called with an empty string. - Fixed moving attack entries were not taking their description tooltip along.
- Fixed fatal error when using the spell selection dialog with older Adobe Acrobat versions (before 2015).
- Fixed issues with moving attack entries and their tooltips & colour not coming along.
- Fixed issue with actions not being removed from the first page when deleting ‘special’ companion pages (e.g. ranger companions).
- Fixed Max HP field being emptied when switching to not having it automatically updated.
- Fixed Spell Points not being displayed at 1st level for classes with 1/2 spellcasting progression that rounds up (e.g. the artificer).
- Fixed firearm weapons not being set to proficient when “Firearms” is added as the only/last other weapon proficiency.
- Fixed setting class automation to manual not working if the “Class” field is empty.
v13.0.4 & v13.0.5 (2020-10-27)
The document-level code for v13.0.4 & v13.0.5 stable versions of MPMB's Character Record Sheet, originally released on 27 October 2020.
v13.0.4 is the free version, v13.0.5 is the paid/Patreon version
Note that this repository only includes the SRD content and that these files alone are not enough to create the PDF character sheet.
Code changes
Changelog
- Fixed “Add to selection” button in the spell selection dialog.
- Fixed short description for the Create or Destroy Water spell.
- Fixed spells from subclass not being added to known spells when they should be.
- Fixed spells from subclass not being sorted in the spell selection dialog.
- Fixed armour/weapon/tool/skill proficiencies gained from subclass (base object) not being applied.
v13.0.2 & v13.0.3 (2020-10-12)
The document-level code for the first v13 stable public release of MPMB's Character Record Sheet, originally released on 12 October 2020.
v13.0.2 is the free version, v13.0.3 is the paid/Patreon version
Note that this repository only includes the SRD content and that these files alone are not enough to create the PDF character sheet.
Code changes
Changelog
- NEW FEATURE: you are now prompted to select a racial variant if the race offers any.
- NEW FEATURE: you are now prompted in a single dialog about changes that are otherwise ‘hidden’ or require you to manually do something: ability score improvements, spellcasting, skill proficiencies, hit points, experience points, and things affecting attack calculations. This one dialog replaces the pop-up asking you to update experience points and the pop-up asking you if you want to generate a new spell sheet.
- NEW FEATURE: magic items automation; However, artifacts are not included.
- NEW FEATURE: hide the ‘attuned’ checkbox for a magic item entry.
- NEW FEATURE: added an option to let the empty fields on the spell sheet be truly empty, you can now toggle if you want them to be filled with a dash or remain empty.
- NEW FEATURE: added an option to have cantrips on the spell sheets show the damage for the current character level as well as the spellcasting ability being replaced by their actual value.
- NEW FEATURE: added support for the variant rule “Players Make All Rolls” (but using correct maths). This is a checkbox among the modifier fields on the first page.
- NEW FEATURE: added a way to type in your spells in the spell selection dialogs. It will also search in the allowed spells and give you a choice if multiple spells match.
- NEW FEATURE: added a way to lookup spell descriptions in the spell selection dialogs.
- BIG CHANGE in how the functions ‘pause’ the sheet while adding things to it. The unfortunate side-effect is that the progress bar doesn’t always show. The important benefit is that it speeds up things significantly, like adding pages or generating spell sheets (a big thanks to adamlynam for pointing me in the right direction).
- BIG CHANGE in how the attributes for background, race, racial features, feats, and class features are handled. They are now all parsed through the same function, ensuring that all things are handled the same. This adds functionality previously only available to class features also to backgrounds, race, racial features, and feats.
- Updated all the spell short description to being first person instead of third person.
- Unified all the attributes of class, class features, background, race, racial features, and feats to use the same naming system.
- Updated how player races are handled on the companion page, including warning dialog of what isn’t possible.
- Removed listing of a creature’s known languages in a Wild Shape.
- Changed the version to semantic versioning (as suggested by Ben W.).
- Changed how the sheet handles multiple matching imported entries with the same name. It now looks at the date of the source(s) instead of the length of the object name. It will take the newer source if multiple things match that have the same (length of) name. But it will still ignore a newer source if it the match has a shorter name. You can now set the sheet to ignore search name and prefer source date only, by adding ignoreSearchLength = true; to your import script.
- Consolidated a lot of the options for the 1st/2nd/3rd pages into the ‘Pages Layout’ menu (as suggested by aga9).
- Added a way to set all the coloured items in one go (Colourful sheets only).
- Added a way for classes to more easily add spells to the list of spells they can choose from.
- Added some fungi, awakened plants, and mephits (with help from Undrhil) as creature options.
- Added an easier way to put things on one of the note pages through automation, for extra verbose class features and the like (thanks /u/safety-orange for writing the function for it).
- Added an easier way for adding a Pact Boon to the Warlock class through an import, the AddWarlockPactBoon() function (thanks /u/safety-orange for writing the function for it).
- Added a way to more easily check if the character is proficient and has expertise with a skill.
- Added a warning when importing a HTML file (you can only import JavaScript).
- Added an option to make a creature available for the Find Familiar spell, but not when the sheet is used for Adventurers League.
- Added an option for spells added through class features/racial traits/feats to force the use of a checkbox for it.
- Added a new source “All official WotC backgrounds” that is listed for all backgrounds that are included in the sheet and legal for Adventurers League play. This way, you can exclude all sources except PHB + 1 and still get all the background options (as suggested by /u/SirKiren).
- Added a way for a subclass to override the HD of a class.
- Added the option for the ‘action’ attribute to be an array of subarrays, with each subarray adding an action.
- Added the option for the ‘action’ attribute to override the name of the feature. If the second string entry starts with a letter character it will be used alone instead of amended to the feature name.
- Changed the Ability Score dialog so that it has an extra ‘Class Bonus’ column and allows addition of new columns.
- Added a way for any class feature or feat to add bonuses to stats (hence the change to the Ability Score dialog).
- Added functionality to the Ability Score dialog to cap the score (default at 20) and a way for features to change this cap.
- Added the number of selected and allowed choices to the menu in the Choose Feature button.
- Added the options for Expertise for the Rogue and Bard to the Choose Feature button menu.
- Added a way to disable making text bold and italic through the use of Unicode. This should improve functionality on systems that don’t support the full Unicode character set (e.g. running Adobe Acrobat DC with Wine on Linux).
- Added support for setting expertise with the ‘skills’ attribute.
- Added support for level-dependent features for feats.
- Added support for the Ravnica guild ranks.
- Added support for using a function for calcChanges.atkAdd and calcChanges.atkCalc. These functions have the field/output object as a parameter, so the function can change it. This should reduce calculation time as the eval string doesn’t have to be parsed and should make it easier to find (syntax) bugs.
- Added support for using an array for calcChanges.hp, so that is it is more intuitive to use.
- Added a way to influence how spell lists are created, with a new attribute of calcChanges: ‘spellList’. calcChanges.spellList works just like calcChanges.atkAdd except that it has to be a function, with different inputs of course (added to make the Ravnica backgrounds work).
- Added a way for things to insert a weapon or armour into the WeaponsList/ArmourList variables, thus making it possible to have a certain weapon/armour only available when a class feature/race/feat/etc. is active.
- Added support for armours adding the proficiency bonus just like they already could add ability score modifiers (e.g. “Unarmoured Defence (Prof)” now works as expected).
- Added support for a feature to set the shield using the ‘addShield’ attribute (necessary for magic item support).
- Added support for a feature that has spellcasting to have a fixed DC/spell attack using the ‘fixedDC’ attribute (necessary for magic item support).
- Added support for a weapon (or weaponOptions entry) to refer to a ‘baseWeapon’ instead of having to copy all the attributes of that weapon. This also makes it possible for calcChanges events to still recognize the item as what it is based on.
- Added support for a weapon (WeaponsList entry) to not need an ability selected to have the attack/damage calculated (ability : 0).
- Added support for magic items and feats to have sub-choices (e.g. Spell Sniper feat).
- Added support for magic items to automatically use the spellcasting ability of the spellcasting class (if any).
- Added a way for features to influence the spell attack / spell save DC on the spell sheet pages ‘calcChanges.spellCalc’.
- Added a way for a feature to add multiple limited features.
- Added an option to the menus of feats, spells, and magic items to read their full description as they appear in the book(s).
- Added support for adding things to the magic/miscellaneous lines of the AC/Defense section, the ‘extraAC’ attribute.
- Added support for other things than Class Features to add a text to the Notes section on the third page or on its own “Notes” page, the ‘addToNotes’ attribute.
- Added support for class feature dependencies instead of doing this with several eval custom script (e.g. for the Draconic Bloodline Sorcerer having the Dragon Ancestor automatically affect the Elemental Affinity selection), using the ‘choiceDependencies’ attribute.
- Added support for class features automatically adding an ‘extrachoice’ to the third page instead of using eval (e.g. the Monk’s Flurry of Blows), using the ‘autoSelectExtrachoices’ attribute.
- Added support for changing the Carrying Capacity Multiplier using an attribute, ‘carryingCapacity’, instead of using eval.
- Added support for the ‘type’ attribute for the GearList and ToolsList, making those into submenus instead of listing them with indentation.
- Added support for converting temperatures between Fahrenheit and Celsius when changing between the imperial and metric systems.
- Added support for converting gallons to litres and vice versa when changing between the imperial and metric systems. As a result, cubic feet are no longer converted to litres but to cubic metres instead.
- Added support for converting negative numbers when changing between t...
v12.999 (2017-12-19)
The base code for v12.999 stable version of MPMB's Character Record Sheet, originally released on 19 December 2017.
After v12.998, this GitHub repo was purged of all non-SRD content because the sheets were kicked off DMs Guild and forced to release v12.999 with only SRD content.
You can find all changes since v12.998 here, but changes before that are unfortunately no longe available.
Changelog
- LESS CONTENT: removed all the non-SRD materials as the sheet is no longer being published on DMs Guild.
- NEW CONTENT: added the specter and the homunculus.
- NEW FEATURE: added a way to import content directly from file, no reason to copy-paste all the text anymore.
- These imported files can have a check for the version of the sheet they are designed for.
- NEW FEATURE: it is now possible to generate a list of all ritual spells for the Book of Ancient Secrets and the Ritual Caster feats (as suggested by Undrhil).
- NEW FEATURE: you can now choose to reset the sheet without losing your added scripts.
- NEW FEATURE: you can now set dynamic modifiers on the companion page that use values from the main character (for example, add the character’s proficiency bonus to a skill of the companion).
- NEW FEATURE: added automation for the Find Greater Steed spell on the companion page.
- NEW FEATURE: the Find Steed and Find Greater Steed spell now ask the user what language to include.
- NEW FEATURE: the armour field is now automatically set when selecting a race, class feature, or feat that adds a special armour option, like natural armour.
- Corrected the Bestow Curse spell to show it offers a Wisdom saving throw (thanks @Stalgren for reporting).
- Changed the depreciated export function to sort the skills alphabetically prior to exporting (thanks for reporting).
- Changed the way spells are sorted so that they are sorted by name, and not by the name of the key (important for future support of other languages).
- Added easier options for importing sub-items: subclasses, racial variants, and background variants.
- Fix for the Spell-less Ranger’s combat superiority (thanks Michael C. for reporting).
- Fix for the sources and page numbers of class features not showing up in the Class Features section.
- Fix for damage resistance being applied even though the character already has immunity to it.
- Fix for spells not being recognized correctly when including the Psionics UA (thanks Tove L. A. for reporting).
- Fix for the spell sourcebook abbreviations overflowing their fields.
- Fix for the sheet’s print button only being able to print the first page of the spell sheets.
- Fix for the flatten button not working if a multiple pages of spell sheet are present (thanks Julian for reporting).
- Fix for the Colourful sheets not being able to undo using Spell Points (thanks Lakie and Felipe for reporting).
- Fix for races not being able to use limited features with level-dependent usages (thanks Jeramie for reporting).
- Fix for the dialog to set dynamic modifiers on the companion page.
- Fix for the Beast Master’s animal companion not working correctly in the Printer Friendly version.
- Improved handling of imported scripts in the resource dialogue.
- Added handling of removing imported scripts so that its removal is immediately noticeable in the resource dialogue.
- Improved handling of importing a character from another PDF that included imported scripts.
- Update the spell sheet glossary to correct typos and add the SRD as a source.
- Class features with multiple sources now only show the first source listed.
- Added the option for a feature to add multiple entries of a vision (for example, you can now have something grant both 30 ft blindsight and +10 ft blindsight if it was already present).
- Added support for the usages and recovery attributes to feats, making it easier to add feats to the Limited Features section.