Automated 5e Framework (Alpha Release)

Framework(s) for D&D 5e.

Moderators: dorpond, trevor, Azhrei, giliath, Gamerdude, jay, Mr.Ice

Post Reply
pmofmalasia
Kobold
Posts: 3
Joined: Wed Sep 16, 2020 8:11 am

Automated 5e Framework (Alpha Release)

Post by pmofmalasia »

Automated 5e

Welcome to my Automated 5e Framework for MapTool! Despite the name, the core principle my framework is built on is having information about abilities and rules available to players at the time they are needed. Over time, this required automation for tracking things like conditions and effects dependent on who you are targeting - to keep it very, very, brief. This automation is designed not to take too much control out of the hands of GMs - allowing for many stopping points to modify and guide things in a game that can never be so predictable as to automate every single crazy scheme the players can think up.

How to Start

The framework can be downloaded at my GitHub page, which will have the most recent updates. Simply download the campaign file and open it in MapTool to set up the framework itself. There is both a video and written guide for using the framework, depending on your preference. Please remember that this is currently an alpha, so it is not ideal for running games as is, but feedback on its current state is appreciated to guide development (details in the video or written guide).

I am most active in the MapTool discord for quick feedback, but I will be checking the forums periodically as well.

Links:
GitHub
Video Guide
Discord Channel

The written quick start guide will be below:

pmofmalasia
Kobold
Posts: 3
Joined: Wed Sep 16, 2020 8:11 am

Re: Automated 5e Framework (Alpha Release)

Post by pmofmalasia »

General Idea Behind the Framework:
  • Core idea is making seeing features and rules more streamlined than a standard character sheet
  • Instead of rules for features being listed in large blocks of text on a character sheet, they are displayed in a frame when the button to use them is moused over
  • Features that work passively are not shown on the token, but incorporated when used
  • Automation exists to allow features to apply passive features that have complex conditions for activating (e.g. only when attacking certain targets)
  • Automation is not the primary goal (despite the name) so the automation is designed to allow the GM to control the flow
  • Because the automation complicates programming in homebrew, there is a detailed set of inputs for adding homebrew without requiring programming - from things as core to the game as Attributes and Damage Types to things as complex as Classes, Spells, and Races.
Initial Setup/Settings:
  • Framework is contained within the campaign file - it is ready to go after that
  • Chat and Selected windows are needed for the framework, plus GM window for GMs. Campaign window is used for some personalization settings.
  • Effect management (GM only) and feature information are stored in frames, so leave space for these as well.
Player Character Creation:
  • Drag an image onto the map to represent the PC
  • Select the token and press the "Initial Setup" button on the GM window, then follow the prompts.
  • Press the "Level Up" button on the GM window to add levels.
  • Starting Equipment is not yet added automatically, so use the "Add Item/Weapon/Armor" buttons to add any equipment.
  • Spellcasters will have a "Spell Preparation" macro for choosing their spells.
  • Click the "Equip Items" button to equip items in hands, equip armor, attune to items, or wear other miscellaneous items.
  • Click the "Show Inventory" button to show the entire inventory, as well as use any items (outside of attacking).
  • "Main Hand/Off- Hand Attack" macros attack with your equipped items (unarmed strike if not holding anything).
  • To throw weapons or use other actions, use the "Other Combat Actions" macro. Checking "Create a Button for this Action" will add a macro to the token for commonly used actions (to reduce clickthrough).
Automation/Effect Management (recommend watching the video for this, much simpler):
  • Using features, making attacks, casting spells, etc. will queue an effect for resolution in the "Effect Management" frame for the GM (if not already open), as long as they require some form of resolution (e.g. Attack Roll, Saving Throw, Deal Damage, Apply Condition, etc.).
  • The GM can then choose how to handle the effect: Resolve, Resolve With Modification (not yet implemented, would allow for adding situational bonuses), or Remove (delete as if not used at all)
  • Resolving effects calculates as much as possible until reaching a point of uncertainty - e.g. Saving Throws have been made, Attack Hits but a passive feature can be used to affect the attack in some way, etc.
  • Since players do not have access to the Resolve Effects frame, if saves/checks are forced upon them they can use the "Save" or "Check" macros to make their checks. Otherwise, the GM clicking the "Resolve" button in the frame will perform all checks/saves for any tokens that need them all at once.
  • Once attacks/saves/checks are resolved, resulting impacts on the token are calculated. Damage is halved/nullified if applicable, and resistances/vulnerabilities are applied. Conditions are applied or prevented, and condition immunities are taken into account.
  • When conditions are applied, their durations are tracked via the rounds passed in initiative or the "Advance Time" macro on the GM panel. They will also trigger saves to end at certain timepoints (e.g. repeat save at end of turn, when damaged, etc.) or end when other things happened as described on the condition (e.g. after making an attack) - currently adding more instances that trigger conditions ending.
NPC Creation:
  • Note: I plan to have a bestiary set up so that already printed monsters do not need to be made - not complete yet.
  • Copy the "Monster Creation" token on the "z.0 Library" map.
  • First, click the "Initial Setup" button and complete the input for the basic components of the statblock (e.g. Attributes, Vision, Resistances, etc.)
  • Then, either add weapons using the same method as PCs (for standard weapons) or use the "Weapon Creation" macro for other weapons.
  • For weapons that do not need to be equipped in a particular hand, choose the "Natural Weapon" option under "Weapon Type". Separate buttons will be created for these weapons for use outside of "Main/Off- Hand Attack".
  • Adding spells for both Innate Spellcasting and standard Spellcasting can be done via the "Spellcasting Creation" macro.
  • Adding new features can be done via the "Create Monster Feature" macro. Currently passive features do not work for creation via input only, but active features can be accessed by checking "Feature can be Used Independently of the above" at the bottom of the long input() dialog.
  • Note that the new features above do not currently have the functionality for opening the Ability Info frame when moused over, but this is planned for update soon.
  • Features that are not unique to one monster can be added using "Add Monster Feature" if they have been created previously (e.g. Magic Resistance, Sunlight Sensitivity).
  • Outside of these, NPCs otherwise function identically to PC tokens.
Homebrew:
  • Note that inputs using the old input() macro are slated to be updated - anything using the html.frame5() functions will stick around and is more subject to feedback in terms of ease of use.
  • Homebrew creation macros can be found on the "Creation Tools" token on the "z.0 Library" map.
  • Anything created using these creation macros will appear where it is needed - e.g. created attributes will be available in other creation macros and when making saves.
  • Selecting an associated sourcebook adds your homebrew to the Lib: token associated with that sourcebook. These Lib: tokens can be saved and shared with others using the framework, and is the method I will use for distributing non- SRD content in the future after I decide on a WotC- kosher method of doing so.
  • Most of these creation macros are fairly straightforward, but the ones for making features are more complicated. Because of this, I'd like to limit how much I say about the inputs for these to see how intuitive they are on their own to get feedback.
  • These more complicated inputs can be found using the following macros: Create Spell, Create Object, Create Feat, Create X Feature (Race, Class, etc.) - plus "Create Monster Feature" as in NPC Creation.
  • The one thing that must be explained since it uses terminology I have made up: Effects vs. Subeffects. A used ability's effect may be subdivided into multiple subeffects for resolution. For example, Ice Knife (1) does an attack against a single target and then (2) forces a save to prevent damage against all creatures within 5 feet of that target.
  • Things that require a separate subeffect (done by checking "Needs additional component of same effect") include changing targets, requiring a subsequent save/check/attack roll to further progress, part of an effect applying conditionally to certain targets (e.g. Smites dealing extra damage), and others.
State of the Framework/Future Updates:
  • Currently, the framework is not in a state that I would expect others to run games with it - I run my own game using it, but it is easier as I know what is/isn't implemented to work around or add things as needed.
  • The most built classes out of the existing content are Barbarian, Bard, Fighter, Rogue, and Warlock (plus Artificer, but can't be shared as it's not SRD). Not all players use SRD subclasses though, so those are not fully built out.
  • When updating the framework, I do not plan on sequentially adding specific classes, for example completing the entirety of the Bard class. Rather, I plan on adding things that each feature can do - for example, adding the ability to shapechange. These get added to the creation input when made as well. This will allow me to focus on making new things and reduce how much I need to correct old ones.
Feedback:
  • Because the framework is not ideal for running games as is, main areas for feedback that I am looking at changing are interacting with items/equipment (the Show Inventory frame and other macros in the Manage Equipment group) and homebrew object/feature creation (particularly the dynamic html5 forms, as the ones using the input() function will likely change).
  • Any bug requests can be submitted as issues to GitHub.
  • Requests for particular published classes/features/items are not necessary, given the above update method and I plan on adding everything published anyway. If you would like to run a game using the framework, let me know and I will try to prioritize what you need if possible.
  • I am most active in the MapTool discord, so the easiest way to ask me questions is in the discord channel!

Post Reply

Return to “D&D 5e Frameworks”