Register

Simultaneous Combat System

An Add-on Module for Foundry Virtual Tabletop

Author: arcanist Project Source: Project URL Versions 0.7.9+ (Verified 10) Last Updated 1 year, 8 months ago

Version Latest Release Download Count Supported Foundry Versions Discord Server Patreon

A beautiful mostly system-agnostic and completely customizable implementation of a Simultaneous Combat System. See the Reddit post from the author.

Have you ever tired of waiting for the turns of your friends to be over? Are you fed up with your players taking so long in every combat encounter? Do you feel like changing things up in your game and trying something new?

gradient 

Usage

Please follow the built-in tutorial (built with IntroJS), for instructions. You can always relaunch the tutorial from within the settings. If you have any questions, feel free to contact me.

Features

Action Locking

In supported systems, SCS will detect whether the current phase has been registered with the module and will restrict what can be done on your turn accordingly.

If you would like to add support for another system or more phases, please make a PR or let me know on my Discord (link is below) and I will happily take suggestions.

Currently only dnd5e is supported with the default phases as described in the reddit post linked above.

Phase and Round display

The module will display the current phase and round in an interactive and draggble app. You can use the arrows to change phase (< or >) and change round (<< or >>), or you can simply click on the phase you would like to switch to (not recommended if using phase/cycle limits).

Integration with the Core Combat Tracker

While this module hides the Combat Tracker by default, it updates it in the background whenever the round is switched to allow for better compatibility. There is also a setting to show the default Combat Tracker.

Attack Roll HUD

In order to ease determining the attack order (for example, in the default attack phase), the module shows you the last attack roll in the token's HUD. This currently only works in D&D 5e and PF 2e.

Integration with other modules

SmallTime

The app moves outside of SmallTime's way

About Time

If using About Time's realtime clock, SCS will prompt you to pause for the duration of your combat encounter. Just add a combatant (by right clicking on it and clicking "Toggle Combat State" in the HUD) and it will percieve that as a combat that has started. Removing all combatants ends the combat.

Argon Combat HUD

This module hides Argon's "End Turn" button.

Change Colors

Clicking this button will generate new random colors for the phases!

Limit Phases

This setting will automatically switch the round at the end of the cycle of all phases. You can also do this with Maximum Cycle set to 1 and Limit Cycles enabled.

Limit Cycles & Maximum Cycle

This setting will put a limit on how many cycles can take place before switching to the next round. For example, if Maximum Cycle is set to 3, after each phase has been completed three times, it will be the next round. It is recommended using the arrows to navigate between phases when using this.

API

Methods

SCS has a small API with a few methods that can be called by others. They are accessible under game.modules.get("scs")?.api.

defaultTracker(hide = true)

This will elegantly hide the default combat tracker from the sidebar. An optional Boolean paramter can be used to show the trackeragain, if hidden.

startTutorial()

This will show the IntroJS tutorial tour once.

stopTutorial(close = false)

This will stop the tour from showing everytime the page is loaded unless the user re-enabled the tutorial from within the module settings. An optional Boolean paramter can be used to also immediately close the tutorial, but this defaults to false.

changeRound(delta)

An asynchronous method that changes the SCS's round by a given delta. Note that this will also change the Core round. Use a positive number for the delta to move the round forward and a negative number to go to previous rounds.

changePhase(delta)

An asynchronous method that changes the SCS's phase by a given delta. Use a positive number for the delta to move the round forward and a negative number to go to previous rounds.

Hooks

This module has two hooks which are only called on the GM's client:

scsRoundChanged

This hook is called whenever the SCS round changes. It has three arguments which are (in order): the current phase, the previous phase, and the delta.

scsPhaseChanged

This hook is called whenever the SCS phase changes. It has three arguments which are (in order): the current phase, the previous phase, and the delta.

 


 
Come hang out on my Discord server if you have questions, suggestions, or need help.

Categories

Available Versions

  1. Version 2.14.0

    1 year, 8 months ago
    Foundry Version 0.7.9+ (Verified 10) Manifest URL Read Notes
  2. Version 2.13.0

    Foundry Version 0.7.9+ (Verified 9) Manifest URL Read Notes
  3. Version 2.12.0

    Foundry Version 0.7.9+ (Verified 0.8.9) Manifest URL Read Notes
  4. Version 2.11.2

    Foundry Version 0.7.9+ (Verified 0.8.9) Manifest URL Read Notes
  5. Version 2.11.1

    Foundry Version 0.7.9+ (Verified 9) Manifest URL Read Notes
  6. Version 2.11.0

    Foundry Version 0.7.9+ (Verified 9) Manifest URL Read Notes
  7. Version 2.10.0

    Foundry Version 0.7.9+ (Verified 9) Manifest URL Read Notes
  8. Version 2.9.0

    Foundry Version 0.7.9+ (Verified 9) Manifest URL Read Notes
  9. Version 2.8.0

    Foundry Version 0.7.9+ (Verified 0.8.9) Manifest URL Read Notes
  10. Version 2.7.2

    Foundry Version 0.7.9+ (Verified 0.8.9) Manifest URL Read Notes
  11. Version 2.7.1

    Foundry Version 0.7.9+ (Verified 0.8.9) Manifest URL Read Notes
  12. Version 2.7.0

    Foundry Version 0.7.9+ (Verified 0.8.9) Manifest URL Read Notes
  13. Version 2.6.0

    Foundry Version 0.7.9+ (Verified 0.8.9) Manifest URL Read Notes
  14. Version 2.5.0

    Foundry Version 0.7.9+ (Verified 0.8.9) Manifest URL Read Notes
  15. Version 2.4.6

    Foundry Version 0.7.9+ (Verified 0.8.8) Manifest URL Read Notes
  16. Version 2.3.0

    Foundry Version 0.7.9+ (Verified 0.8.8) Manifest URL Read Notes
  17. Version 2.2.1

    Foundry Version 0.7.9+ (Verified 0.8.8) Manifest URL Read Notes
  18. Version 2.2.0

    Foundry Version 0.7.9+ (Verified 0.8.8) Manifest URL Read Notes
  19. Version 2.1.1

    Foundry Version 0.7.9+ (Verified 0.8.8) Manifest URL Read Notes
  20. Version 2.1.0

    Foundry Version 0.7.9+ (Verified 0.8.8) Manifest URL Read Notes
  21. Version 2.0.0

    Foundry Version 0.7.9+ (Verified 0.8.8) Manifest URL Read Notes
  22. Version 1.3.0

    Foundry Version 0.7.9+ (Verified 0.8.8) Manifest URL Read Notes
  23. Version 1.2.2

    Foundry Version 0.7.9+ (Verified 0.8.8) Manifest URL Read Notes
  24. Version 1.2.1

    Foundry Version 0.7.9+ (Verified 0.8.8) Manifest URL Read Notes
  25. Version 1.0.2

    Foundry Version 0.7.9+ (Verified 0.8.8) Manifest URL Read Notes
  26. Version 1.0.1

    Foundry Version 0.7.9+ (Verified 0.8.8) Manifest URL Read Notes
  27. Version 1.0.0

    Foundry Version 0.7.9+ (Verified 0.8.8) Manifest URL Read Notes
  28. Version 0.4.2

    Foundry Version 0.7.9+ (Verified 0.8.7) Manifest URL Read Notes
  29. Version 0.4.1

    Foundry Version 0.7.9+ (Verified 0.8.7) Manifest URL Read Notes
  30. Version 0.4.0

    Foundry Version 0.7.9+ (Verified 0.8.7) Manifest URL Read Notes
  31. Version 0.3.1

    Foundry Version 0.7.9+ (Verified 0.8.7) Manifest URL Read Notes
  32. Version 0.3.0

    Foundry Version 0.7.9+ (Verified 0.8.7) Manifest URL Read Notes
  33. Version 0.1.2

    Foundry Version 0.8.6+ (Verified 0.8.7) Manifest URL Read Notes
  34. Version 0.1.1

    Foundry Version 0.8.6+ (Verified 0.8.7) Manifest URL Read Notes
  35. Version 0.1.0

    Foundry Version 0.8.6+ (Verified 0.8.7) Manifest URL Read Notes
  36. Version 0

    Foundry Version 0.7.9+ (Verified 0.7.10) Manifest URL Read Notes