Roll20 uses cookies to improve your experience on our site. Cookies enable you to enjoy certain features, social sharing functionality, and tailor message and display ads to your interests on our site and others. They also help us understand how our site is being used. By continuing to use our site, you consent to our use of cookies. Update your cookie preferences .
×

[Script] Combat Encounter Director

1781448326

Edited 1781500342
MidNiteShadow7
Pro
API Scripter
Combat Encounter Director Combat Encounter Director is now available for Roll20. Designed for Game Masters who need to adapt encounters on the fly, Combat Encounter Director provides a journal-driven command centre for scaling enemies, managing reinforcements, controlling battlefield visibility and recovering from those inevitable moments when combat doesn't go according to plan. Whether you're running a solo adventure, a traditional four-player campaign or a convention game with a dozen players, Combat Encounter Director helps you keep encounters challenging, organised and under control. What can it do? Dynamic party scaling Adjust encounters to suit the number of players at the table. Built-in presets support everything from solo adventures to massive convention-style groups, automatically adjusting HP, AC and damage expectations. Boss and minion presets Transform ordinary creatures into memorable encounters with a single action. Choose from: Minion Elite Boss Legendary Reinforcements Need another wave of enemies? Duplicate selected tokens and automatically enumerate them to quickly create reinforcements during combat. Battlefield control Manage visibility without breaking immersion. Quickly: Hide creatures on the GM layer Reveal ambushes Move scenery to the map layer Restore the battlefield when combat ends Position recovery Save token positions and restore them later. Perfect for testing encounters, undoing accidental movement or resetting scenes during preparation. Encounter templates Capture the state of an encounter and reload it whenever needed. Templates preserve information such as: Token positions Layer assignments HP values AC values Reset and recovery Experiment with confidence. Combat Encounter Director tracks original values, allowing you to reset selected tokens, entire pages or every tracked token in the campaign. Status reporting Generate a detailed status report directly into a Roll20 journal, giving you a clear overview of the encounters you've modified. Getting started After installation, Combat Encounter Director automatically creates two journal handouts: Combat Encounter Director - Command Deck Combat Encounter Director - Status Open the Command Deck for the full interface, or type: ` !ced `&nbsp;to access the quick-action menu from chat. Compatibility Roll20 API campaigns Roll20 Jumpgate compatible Designed to coexist safely alongside other API scripts Resources Project page: <a href="https://midniteshadow.online/projects/roll20-mods/combat-encounter-director/" rel="nofollow">https://midniteshadow.online/projects/roll20-mods/combat-encounter-director/</a> GitHub: <a href="https://github.com/Roll20/roll20-api-scripts/tree/master/CombatEncounterDirector" rel="nofollow">https://github.com/Roll20/roll20-api-scripts/tree/master/CombatEncounterDirector</a> Issue tracker: <a href="https://github.com/users/steverobertsuk/projects/6/views/1" rel="nofollow">https://github.com/users/steverobertsuk/projects/6/views/1</a> As always, feedback, bug reports and suggestions are welcome.&nbsp;I hope it proves useful at your table.
1781474894
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Awww. I was hoping for a cool video! There is one bit of critical feedback. "!director" is the base command used by the Director script . This will likely cause issues for anyone with both installed.
1781474957
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
The Project Page is really cool, though!
1781477072
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Also, you might want to list in the requirements which sheet(s) this works on.
LOL, been too busy to do a video, but plan to get one done soon. I scanned the GitHub repo for instances of `!director`, but it didn't return any results. I just rechecked the repo, and it now shows - I must have forgotten to clear the search filters, or something, to have missed that! I'll look to sort out a different command.
keithcurtis said: Also, you might want to list in the requirements which sheet(s) this works on. It should work with most sheets because it is token-bar-based rather than sheet-attribute-based. The only requirement is that the token has numeric HP and, optionally, AC values in the configured bars. Defaults are HP on bar1 and AC on bar2, but those can be changed via config commands or via the API settings page.
1781490150
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Got it, so the elite, etc scaling is to HP/AC. Does it unlink them when it does its magic? And yeah, I typically do a search on base commands when writing a new script, but sometimes it can be tricky to find.
No unlinking, and it also stores the original values and has buttons in the journal command deck to restore previous settings.
1781500184

Edited 1781500207
MidNiteShadow7
Pro
API Scripter
Version 1.0.1 updates the primary command for the Combat Encounter Director, as it has been migrated from &nbsp; !director &nbsp; to &nbsp; !ced &nbsp; to prevent conflicts with other Roll20 API scripts. To ensure a smooth transition, this update includes backward compatibility: macros using !director will still function as expected unless a conflict with another "Director" mod is detected. In such cases, Game Masters will receive a clear warning instructing them to update their macros to use !ced. Release Notes Added Legacy command compatibility for &nbsp; !director &nbsp; when no conflicting Director mod is detected. Changed Primary command changed from &nbsp; !director &nbsp; to &nbsp; !ced &nbsp; to avoid command collisions. Localized help and error hints now reference &nbsp; !ced &nbsp; in command examples. Command Deck and Status handouts now consistently render with the intended dark theme. One-Click language configuration is now a select list with all supported locale options. Fixed If a conflicting Director mod is installed, using &nbsp; !director &nbsp; now warns the GM to use &nbsp; !ced . Developer Notes Command migration: Primary command constant changed to &nbsp; !ced . Legacy alias &nbsp; !director &nbsp; is still accepted for backwards compatibility. Conflict detection uses &nbsp; DIRECTOR_CONFLICT_STATE_KEY = 'DIRECTOR_STATE' ; when present, legacy alias usage triggers a GM warning instead of routing under the legacy name. i18n updates: Locale hint strings and command examples were updated from &nbsp; !director &nbsp; to &nbsp; !ced &nbsp; across locale files used in the generated bundle. Journal rendering: Command Deck and Status handout HTML now uses an explicit wrapper/background container to prevent white default journal rendering and preserve intended theme styling. One-Click metadata and options: script.json &nbsp; select-style options were normalized to remove pipe-delimited labels. language &nbsp; useroption was changed to a select option containing all supported locale codes. Build/versioning pipeline: Build flow now bumps/sets version before loading version-dependent config, preventing stale version output paths. Explicit version builds now write snapshots to the matching &nbsp; &lt;version&gt;/CombatEncounterDirector.js &nbsp; directory. Prerelease versions are excluded from &nbsp; previousversions &nbsp; history handling. Code quality hardening: Source files feeding the generated bundle were refactored to address SonarQube warnings and improve maintainability. JSDoc coverage and placement were reviewed and corrected in source modules. Available now Combat Encounter Director version 1.0.1 is downloadable via direct download &nbsp; and will be available soon via the Roll20 One-Click Installer. You can learn more about the mod, explore the full feature set and access download links on the project page below: ➡️ &nbsp; Combat Encounter Director Project Page As always, feedback and suggestions are welcome.