Usage
Donothon Mode
If you want to adjust the subathon to be a donothon, that is done by configuring your goals list to be of type "Money" instead of "Points". Even if you have no goals.
Generic Alert / Timerless Mode
To use this as a generic alert system for overlays, or a timerless event with goal tracking, "unlock" the subathon timer and ensure everything you want to have tracked or overlays for has seconds or points configuration above 0. In these cases, set the timer to a very high number, such as 300d, to ensure it won't hit zero and auto lock.
Subathon Controls¶
Subathon & Time Management¶
In this section, you can create a new subathon with an initial time set by clicking the start new subathon button. You can also specify if it is a reverse subathon in the popup, which if true, will make the timer tick up, but all events will reduce time instead.
To the left of this button is an end-date configuration button. If you wish to set an end date and time for the subathon, you can do so here. If the time of your timer exceeds this value, then what will be displayed in widgets, data, and the app, will be time until the end date, and will "count down" even if paused - time can still be "added" if unlocked, but will not increase visually until end date is removed, so no data is lost. You can enable/disable the end date at any time.
In addition to viewing what the current timer value is, you can also toggle pausing and locking the subathon.
There is a button to quickly force refresh all browser overlays.
Finally, there is a section for quick adding, removing, or setting of time. Format for time is the same as commands, such as #d#h#m#s.
Multiplier Control¶
Here you can initiate a multiplier for either time, points, or both.
The duration is optional - if not set, multiplier only ends on app restart or force end. If set, multiplier values will reset to 1x when it counts down to 0.
It will preview the current multiplier values as well as a current duration if enabled and active. You can also stop a multiplier here at any time.
Note
Multiplier values can be any positive number, e.g. 2x, 2.5x. The only limitation is both time and points share the same multiplier.
Points Management & Upcoming Goals¶
In this section, you can preview your current points in the subathon, as well as quick add, subtract, or set the points.
Under here, you can preview your upcoming goals list with their points value, as well as see your most recently completed goal.
Recent Event List¶
This list contains a subset of recent events processed by your active subathon!
For each event, you will see the event type, source, time, user who triggered it, and its value(s). Additionally, you will see whether or not it was successfully processed.
- Delete an event from this list to undo the time/points associated with it, if applicable.
- If an event is not processed, you are able to try reprocessing it.
Overlays¶
To use an overlay in OBS, please create a browser source of the correct height and width, then paste in the link for your overlay that you can copy from here.
Overlays Page¶
On this page, you will see on the left, a list of all your current overlays.
From here, you can create a new overlay, or select one from the list where you can then copy the url, edit it (via button or double click), duplicate it, export it, or permanently delete it.
On the right, you will see a button which will let you quickly refresh all overlays that are open.
Overlay Export / Import
You can export any overlay and it will attempt to get all associated files, and save all configuration, then create a .smo file. This file can be shared and imported again here as a brand new, premade overlay with all config and files needed!
Editor¶
You can rename an overlay here, as well as set its Width and Height.
It is important to match this width and height when you create your OBS browser source for the best results.
You can copy the link, open it in a browser, or save your settings here.
Saving the overlay will cause it to refresh in all places.
A list of widgets will be shown here that are active in the overlay.
You can also import new widgets as html files from your system with the Import Widget button.
Their order (also indicated by the Z value) dictates overlapping rules. Widgets higher up / with a bigger number will appear above others.
Options are available to toggle visibility, which keeps the widget in the overlay but not visible when in OBS. You can adjust the overlap position with the arrows, open the widget in the widget editor (or via double click), duplicate the widget, or delete it from the overlay.
When you double click or click the edit button on a widget in this list, it will populate it in the Widget Editor for customization.
This editor preview allows you to view what the widgets in the overlay will currently look like.
You can drag and move around the widgets, as well as click them to select them to populate in the widget editor on the right.
You can hover over a widget to view its name and Z value, and widgets with visibility toggled off will be faded.
You can resize widgets in the editor, and by holding shift and dragging an orange corner, you can preserve aspect ratio while resizing.
There is grid shapping by holding Alt.
When a widget is selected either via the list or the preview UI, you can do various actions.
You can rename the widget, set its width and height, and change its X and Y position (will also update when you drag them around).
A list of detected CSS, JS, and Font variables will also be displayed, which you can customize to override defaults found as CSS Vars in your linked CSS variables from within the widget's local referenced css files.
To load and preview your customizations, you will need to click Save. To reload CSS variable detection from your raw files, click the Reload Vars button. CSS Variables can be previewed instantly without saving, however JS and Font variables require saving. If you swap between widgets without saving, they will be highlighted in yellow.
You can specify custom fonts from Google or Cdn which can be injected into your widgets as well. This will be a comma-separated list.
Saving any widget will cause the widget to refresh in all places. Saving the overlay will cause all widgets to refresh.
Goals¶
Goals List¶
Goals are tracked separately from your subathon, so that once you set them up, they will persist here unless edited or a new list is made. You can swap between active lists at any time, however, whichever one is visible will immediately become active.
You can add new goals with the + button, where for each goal you can set the Text and the number of Points required to achieve. Each goal can also be deleted, and the list will always be sorted from lowest to highest points.
To save changes, click the Save button in the Editor pane.
Goals Editor¶
In the goals editor, you can set a new name for your current goals list or make a new one. Only one set of goals can be active at any given time.
You can preview your live current number of points on this page.
Clicking the Create New List button will create a whole new empty goals list, added to the dropdown.
To save changes to your list, click Save Changes.
Prompts¶
In the prompts tab, you can setup "prompts", which are similar to mini goals during your subathon.
Similar to goals, you can setup multiple "sets" of prompts, and swap between them as desired. Only one set can be active at a time, and it is whichever has "Enabled" checked. To disable the feature, simple uncheck it then hit save.
When enabled, every interval minutes, with an offset of +- offset minutes, a new prompt can be executed if any are available. After it is completed, the interval starts again - if successful, the cooldown minutes is added before the interval starts.
Prompts have multiple fields. The text is presented in overlay widgets to your viewers while the prompt is running.
| Field | Description |
|---|---|
| Type | What events will progress the goal. One of: Points Money Orders Follows Subs Tokens Specific Event |
| How? | Depends on Type. Can be per subscription tier, items vs orders for order events, or Count (default) for a simple event count. |
| Event | Available when Type is Specific Event. Dropdown of all sources and their specific events. |
| Tier | Available when Event is a subscription or membership event. Restricts the goal to a specific tier only. |
| Target | The goal to reach. For example: 10 subs, $100, 5 items ordered from Gamersupps, etc. |
| Duration | How long viewers have to complete the goal before it expires. |
| Quantity | How many times the prompt can be successfully completed before it runs out. Expired, failed, or cancelled runs do not count against it. Set to Infinite for unlimited completions. |
You can choose to manually run any configured prompt immediately, or run a random one from the list. When the interval runs to choose one, it will run one at random that has a valid quantity. Individual prompts can also be disabled or temporarily excluded with their checkbox.
Prompts auto-running is only available if the timer is unlocked and not paused.
You can view the prompt history on the home page, tabbed with recent events.
Settings¶
See Configuration
Chat Commands¶
See Configuration for the command names. You can change the defaults.
| Command | Description | Example |
|---|---|---|
!addpts |
Add a number of points | !addpts 10 |
!subtractpts |
Remove a number of points | !subtractpts 10 |
!setpts |
Set the points to a specific number | !setpts 140 |
| Command | Description |
|---|---|
!pause |
Pause the timer from counting down |
!resume |
Resume counting down the timer |
Controls:
- Time format:
##d##h##m##s- e.g. 5 minutes can be300sor5m
| Command | Description | Example |
|---|---|---|
!addtime |
Add time | !addtime 1h30m |
!subtracttime |
Remove time | !subtracttime 5m |
!settime |
Set time | !settime 8h35m5s |
The multiplier can apply to either time, points, or both. It can also be supplied an optional duration, after which, it will reset to 1x 1x. Multipliers are not preserved between app restarts.
Format: #xt for Time only · #xp for Points only · #xpt or #xtp for both · ##d##h##m##s for optional duration
| Command | Description | Example |
|---|---|---|
!setmultiplier |
Set multiplier. Overwrites any current multiplier. | !setmultiplier 2xtp 2h · !setmultiplier 2xt 30m · !setmultiplier 2.5xpt |
!stopmultiplier |
Stop the multiplier entirely, resetting to 1x for both time and points |
- |
| Command | Description | Example |
|---|---|---|
!addmoney |
Add money, does not affect time. Requires a currency. | !addmoney 10.15 CAD |
!subtractmoney |
Remove money. Requires a currency. | !subtractmoney 10 USD |
| Command | Description |
|---|---|
!lock |
Lock the subathon, preventing new events from contributing |
!unlock |
Unlock the subathon so all events can be added |
!refresh |
Refresh all active browser overlays |














