5e Activity Importer
A premium Bakshi’s Bazaar module for Foundry VTT.
Add D&D 5e activities and Active Effects to existing Items from structured YAML, with previews and checks before importing.
Features · Preview · Installation · Compatibility · Integration · Roadmap · Community · AI Use · License
Feature Index
| Feature | What it does |
|---|---|
| Activity & Effect Authoring | Add attacks, saves, spells, effects, and other supported mechanics to Items you already have. |
| Preview & Validation | Review parsed data, check references, and compare the imported result. |
| Linked Activity Batches | Import activities with their Forward targets resolved in dependency order. |
| Import Tools | Reuse presets, find linked documents, and undo imports from the current session. |
| Item Importer Integration | Create Items with activities and effects when the free companion is enabled. |
Use quick-start templates, write YAML yourself, or supply the bundled references to an LLM for help preparing it. Review generated mechanics before importing and test their behavior at your table. The module imports the YAML you supply; it does not generate content through an AI service.
Preview

Features
Activity & Effect Authoring
Choose Add Activity or Add Effect from the Items Directory dropdown, drop an Item into the window, and paste your YAML. Start with a quick-start template, or use the full references for field options and examples.
The importer supports Attack, Save, Damage, Heal, Utility, Check, Cast, Enchant, Summon, Transform, and Forward activities, plus standalone Active Effects. MIDI-QOL variants are available for workflows that use that module.

Preview & Validation
Parse the input to review preview cards, then use Dry Run to inspect the planned import without changing the Item. It reports schema changes, unresolved references, dependency problems, and icon checks. The compatibility notice lists the active Foundry, dnd5e, MIDI-QOL, and DAE versions.
Enable the comparison option when importing to see expected values beside the saved result. Test automation in your world as well; validation only checks the data.

Linked Activity Batches
Forward activities can refer to an existing or same-batch non-Forward activity by exact ID, identifier, or unique exact name. The importer assigns IDs and imports dependencies before the Forward activities that use them. Missing, ambiguous, Forward-to-Forward, and cyclic references block the plan.
Import Tools
Save named activity or effect presets in the current browser, load or update them, and exchange them through JSON export or JSON/YAML import. Search accessible world and compendium spells or Actors for Cast, Summon, and Transform links. Resolve All fills a UUID only when there is one unique exact-name match.
Session history records recent imports and asks for confirmation before undoing one. It checks access and import markers before removing documents created by that import. Reloading the client clears history.

Item Importer Integration
The free 5e Item Importer can create Items on its own. With both modules enabled, you can include activities and effects when creating an Item, or export them with the Item as YAML.
Activity Importer also works directly on existing Items without the companion. Strict export rejects saved fields and third-party data it cannot preserve.

Getting started & YAML input
- Open the Items Directory dropdown and choose Add Activity or Add Effect.
- Drop the target Item into the window.
- Paste YAML or insert a quick-start template.
- Parse it and review the preview cards. Resolve required document links.
- Use Dry Run to check the import without changing the Item, then add the parsed activities or effects.
Auto-parse is enabled by default. Ctrl+Enter parses; Ctrl+Shift+Enter adds the current results.
Each activity starts with a top-level key such as ACTIVITY_ATTACK:; a standalone effect starts with EFFECT:. Raw YAML and one enclosing YAML code fence are accepted. Separate repeated top-level types with --- inside the fence; duplicate keys in one YAML mapping are invalid. Different types can share a document. Legacy ===ACTIVITY_*=== markers are not supported.
Start with the generation guide (templates/README.md in the installed module), authoring guide (docs/template-authoring.md in the installed module), and concrete examples (docs/examples/README.md in the installed module). Full references are in Base Activity Templates (templates/Base Activity Templates/ in the installed module) and Midi QOL Activity Templates (templates/Midi QOL Activity Templates/ in the installed module). Replace bracket placeholders before importing. Supply the actual reference files to an LLM; a link alone does not provide their contents.
Supported types, fields & limits
| Type | YAML root |
|---|---|
| Attack | ACTIVITY_ATTACK: |
| Save | ACTIVITY_SAVE: |
| Damage | ACTIVITY_DAMAGE: |
| Heal | ACTIVITY_HEAL: |
| Utility | ACTIVITY_UTILITY: |
| Check | ACTIVITY_CHECK: |
| Cast | ACTIVITY_CAST: |
| Enchant | ACTIVITY_ENCHANT: |
| Summon | ACTIVITY_SUMMON: |
| Transform | ACTIVITY_TRANSFORM: |
| Forward | ACTIVITY_FORWARD: |
| Active Effect | EFFECT: |
The native dnd5e Order activity is not supported for import. Loot and Container Items can receive passive effects but cannot host activities.
Full templates document shared activation, duration, consumption, scaling, uses, recovery, range, targeting, and visibility fields, plus the fields specific to each type. The field coverage reference (docs/explicit-yaml-v2.md in the installed module) explains supported mappings and compatibility aliases. Use Active Effect Keys V2.txt (templates/Active Effect Keys V2.txt in the installed module) as an effect-key reference; a key’s behavior still depends on the system or integration that handles it.
Authored activation and duration use their own timing by default. Set the corresponding override to false when inheriting from the parent Item. The YAML controls are Override Activation, Override Duration, Override Range, and Override Target. Supported inactive values remain stored where documented.
Check skill/tool choices share one ability override and DC; use separate activities for different overrides or DCs. Foundry 14 Active Effects use one duration unit at a time. Cast needs a spell Item UUID; direct-link Summon and Transform need Actor UUIDs. A name used for lookup is not itself a resolved document link.
Dry runs, comparison & recovery
Dry Run checks the planned data without writing documents. Review any fields that were removed or converted, inaccessible links, and icon warnings before importing. A successful dry run does not execute activities, macros, resource consumption, MIDI workflows, or effect application.
Comparison displays the values the module knows how to extract. Some MIDI fields are missing from previews and comparisons; check those fields on the imported activity or effect sheet.
If an import fails partway through creation, the module attempts to remove the documents it created and reports recovery failures. A comparison or callback failure after a successful import does not roll that import back.
History retains up to 25 imports in the current client session. Undo removes the activities/effects created by that import; it is not a full Item snapshot. It checks the target Item, permissions, compendium lock, import fingerprints, and deletion results. Keep world backups for changes that import undo cannot restore.
Settings & local storage
Open Configure Settings → 5e Activity Importer.
| Setting | Scope | Default / purpose |
|---|---|---|
| Debug Logging (Advanced) | Client | Off; detailed troubleshooting logs |
| Show Parse Results | Client | Off; log parsed activity/effect data |
| Show YAML Normalization Warnings | Client | Off; report input normalization |
| Auto-Parse on Input | Client | On; parse while typing |
| Auto-Parse Delay (ms) | Client | 1000; adjustable from 250 to 3000 |
Presets use a hidden client setting and stay with the current browser profile. Export them before moving to another browser. Import history is memory-only and clears on reload.
Troubleshooting
Confirm the world uses a supported dnd5e version and that Activity Importer is enabled, then reload. The Items Directory controls require Create Items permission; the target Item must also be editable. Locked compendia cannot be updated.
If parsing fails, check YAML indentation, replace reference placeholders, and separate repeated roots with ---. Review each error before importing. For unresolved Cast, Summon, or Transform links, search for or drag the actual document; Resolve All leaves a name unresolved if more than one document matches.
For more detail, enable Debug Logging (Advanced) and inspect the browser console. Test suspected integration conflicts in a separate test world with only the modules needed for the workflow.
The native catalog guide (docs/native-field-catalog.md in the installed module) and MIDI catalog guide (docs/midi-field-catalog.md in the installed module) describe field discovery and coverage. Discovery does not add import or export support.
Installation
- Join Bazaar Patron.
- Link your Patreon account to your Foundry VTT account.
- Install 5e Activity Importer through Foundry Premium Content.
- Open your dnd5e world, enable 5e Activity Importer in Manage Modules, and reload connected clients.
Enable the free 5e Item Importer as well to create Items with activities and effects. MIDI-QOL and DAE are optional integrations for the templates and fields that use them.
| Requirement | Version |
|---|---|
| Foundry VTT | v14 minimum; verified platform 14.367 |
| dnd5e | 5.3.0 minimum; verified platform 5.3.3 |
| Additional modules | None required for base activity/effect import |
| Optional 5e Item Importer | Minimum and recorded verified companion version 14.1.2 |
Compatibility
Built for Foundry VTT v14 and dnd5e, with recorded live checks on 14.367 / 5.3.3. The declared dnd5e 5.3.0 minimum has not been separately retested. Foundry 13 is not supported by this release line.
Recorded testing & integration limits
The 14.1.2 release candidate was tested in Foundry 14.367 / dnd5e 5.3.3. For 14.1.3, read-only checks covered parsing, validation, the Item Importer handoff, and served assets on the same platform. These checks did not execute gameplay automation.
MIDI-QOL 14.0.9 and DAE 14.0.12 appear in recorded integration checks. A template passing validation does not prove that its automation works during play. The recorded tests cover specific workflows and settings on those versions.
Strict activity/effect export supports the documented native fields and rejects unsupported saved data from third-party modules. An active integration can add such data even to an activity created from a base template. Some inactive MIDI overtime values are omitted by import; consult the authoring and coverage guides when preserving existing data.
The importers can work together at different versions when both provide the features needed for the import or export. Other sheet replacements and module combinations may require separate testing. A declared minimum does not establish compatibility with all future releases.
Integration support
The optional free 5e Item Importer is the supported companion for creating complete Items with activities and effects. The internal interfaces used by that integration are not offered as a supported public API for third-party modules or macros.
For other integration requests, describe the workflow you want to support on the Bakshi’s Bazaar Discord.
Roadmap
I plan updates around campaign needs, reported issues, and ideas I want to build. Share a feature request on Discord with an example of what you are importing and what you would like to do.
Suggestions are not promises or commissions.
Community
Support is handled through the Bakshi’s Bazaar Discord. Patrons receive priority support, without guaranteed response or resolution times.
- Report bugs — Report on Discord. Include your Foundry version, 5e Activity Importer version, game system and version, steps to reproduce, console logs, and screenshots or short clips when useful.
- Request features — tell me what you were trying to import and what you wish the module could do.
- Follow updates — check the Bakshi’s Bazaar Discord for changes and compatibility notes.
AI-Assisted Development
This module is developed and maintained with the help of AI-assisted tools for coding, debugging, and testing.
I care about the quality, behavior, performance, security, and long-term maintainability of this module, and I take full responsibility for what ships. AI assistance does not replace review, testing, debugging, or security and design judgment.
AI is used here as a tool under my direction to make Foundry better and allow for long term mod support while still having a life outside of building and maintaining my free and premium modules.
If you are uncomfortable using software developed with AI-assisted tools, this module is not for you.
⚖️ License & Permissions
Premium License
5e Activity Importer is a paid, premium module from Bakshi’s Bazaar. Refer to the shipped LICENSE.txt for usage and redistribution permissions.
Commercial Licensing
For bundling, commercial integrations, or custom feature development, contact GnollStack to discuss licensing and permission.
Contact
For licensing inquiries or permission slips:
- Discord:
GnollStack(Preferred) - Email:
Somedudeed@gmail.com
Author: GnollStack · Compatibility: Foundry VTT v14 / dnd5e 5.3.3 verified