All Projects → fantasycalendar → FoundryVTT-Sequencer

fantasycalendar / FoundryVTT-Sequencer

Licence: other
This module implements a basic pipeline that can be used for managing the flow of a set of functions, effects, sounds, and macros.

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to FoundryVTT-Sequencer

JB2A DnD5e
Templates of spells from the DnD5e ruleset (SRD and PHB), to use on FoundryVTT
Stars: ✭ 28 (+12%)
Mutual labels:  foundry-vtt, jb2a
fvtt-data-toolbox
Foundry VTT Data Toolbox
Stars: ✭ 17 (-32%)
Mutual labels:  foundry-vtt
fvtt-module-narrator-tools
Special tools to increase immersivity in your game.
Stars: ✭ 15 (-40%)
Mutual labels:  foundry-vtt
arduino-audio-tools
Arduino Audio Tools (Music Player, Music Recorder supporting I2S, Microphones, DAC, ADC, A2DP, Url, MP3, AAC, AudioKit, ES8388)
Stars: ✭ 393 (+1472%)
Mutual labels:  effects
ReduxSimple
Simple Stupid Redux Store using Reactive Extensions
Stars: ✭ 119 (+376%)
Mutual labels:  effects
FoundryVTT-Module-Template
A template repository for FoundryVTT module development that comes with versioned CI/CD
Stars: ✭ 72 (+188%)
Mutual labels:  foundry-vtt
Bryans-Preferred-Modules-for-FoundryVTT
My personally cultivated list of FoundryVTT Modules for Dungeons and Dragons 5e and Pathfinder 2e that play nicely together without creating an overwhelming amount of UI options or causing noticeable FPS drops.
Stars: ✭ 119 (+376%)
Mutual labels:  foundry-vtt
pi-stomp
pi-stomp is a DIY high definition, multi-effects stompbox platform for guitar, bass and keyboards
Stars: ✭ 42 (+68%)
Mutual labels:  effects
AudioEffectDynamics
Dynamics Processor (Gate, Compressor & Limiter) for the Teensy Audio Library
Stars: ✭ 23 (-8%)
Mutual labels:  effects
purescript-smash
An "extensible coeffect" system built out of comonads and Day convolution.
Stars: ✭ 36 (+44%)
Mutual labels:  effects
PDFoundry
A fully featured PDF viewer module for Foundry VTT, including form fillable actor sheets, journal links, and more!
Stars: ✭ 38 (+52%)
Mutual labels:  foundry-vtt
images-processing
Project of computational mathematics, image processing, eliminating the noise of an image, reflection of an image and canny filter
Stars: ✭ 23 (-8%)
Mutual labels:  effects
L5P-Keyboard-RGB
Cross platform software to control the lighting of the 4 zone keyboard included in the 2020 and 2021 lineup of the Lenovo Legion laptops. Works on Windows and Linux.
Stars: ✭ 79 (+216%)
Mutual labels:  effects
palettify
Configurable JavaScript plugin to extract image primary colors and apply cool effects to it.
Stars: ✭ 18 (-28%)
Mutual labels:  effects
foundry-vtt-types
Unofficial type declarations for the Foundry Virtual Tabletop API
Stars: ✭ 80 (+220%)
Mutual labels:  foundry-vtt
waveguide
An effect/IO datatype in typescript
Stars: ✭ 102 (+308%)
Mutual labels:  effects
forbidden-lands-foundry-vtt
This is a Forbidden Lands game System for the Foundry Virtual Table Top. Made by @Perfectro, @patrys and @aMediocreDad. Maintained by @aMediocreDad, @narukaioh
Stars: ✭ 28 (+12%)
Mutual labels:  foundry-vtt
NNAOTest
Neural Network Ambient Occlusion for Unity
Stars: ✭ 72 (+188%)
Mutual labels:  effects
bow-openapi
🌐 Functional HTTP client generator from an OpenAPI/Swagger specification.
Stars: ✭ 47 (+88%)
Mutual labels:  effects
Tokenmagic
A Foundry VTT module that allows you to add animations and graphic effects to tokens, tiles, templates and drawings.
Stars: ✭ 28 (+12%)
Mutual labels:  foundry-vtt

Sequencer

Latest Release Download Count Forge Installs Foundry Core Compatible Version Latest Version

Animation showing the Sequencer


Fantasy Computerworks Logo

A module made by Fantasy Computerworks.

Other works by us:

  • Fantasy Calendar - The best calendar creator and management app on the internet
  • Item Piles - Drag & drop items into the scene to drop item piles that you can then easily pick up
  • Tagger - Tag objects in the scene and retrieve them with a powerful API
  • Token Ease - Make your tokens feel good to move around on the board
  • Rest Recovery - Automate most D&D 5e long and short rest mechanics

Like what we've done? Buy us a coffee!

Buy Me a Coffee at ko-fi.com


What Is Sequencer?

Sequencer is a powerful module that allows you and other module creators to quickly and easily play visual effects in your scenes, attaching them to tokens or other objects, animating them, ending them easily and quickly, play sounds for all or specific players, run macros one after another in a controlled way, and so much more.

Effects shown in this readme

Download here:

https://github.com/FantasyCalendar/FoundryVTT-Sequencer/releases/latest/download/module.json

If you want to test the beta track, you can install it from this link - NOT RECOMMENDED FOR NOVICE USERS: https://raw.githubusercontent.com/fantasycalendar/FoundryVTT-Sequencer/next/module.json

Siren Documentation & Guides Siren

Click the link above to go to the documentation where each feature is listed.

How to use

First you have to define a sequence:

let sequence = new Sequence()

Then, you can add functions and effects to it.

let sequence = new Sequence()

sequence.thenDo(function(){
    do_something();
})

sequence.wait(200)

sequence.thenDo(async function(){
    do_something_else();
})

The Sequencer uses a method-chaining fluent interface, meaning you can continuously call functions on the sequence object, like so:

let sequence = new Sequence()
    .thenDo(function(){
        do_something();
    })
    .wait(200)
    .thenDo(async function(){
        do_something_else();
    })

To start the sequence off, you simply call play() on the sequence.

Advanced examples

Teleportation Usage Example

This example uses Jack Kerouac's Animated Cartoon Spell Effets

Animation showing the Sequencer

To get the following result:

  • Plays an effect on a token's location
  • Wait for 400 milliseconds
  • Play a sound
  • Wait for 600 milliseconds
  • Play another effect pointing towards 5 squares to the left of the token
  • Wait for 100 milliseconds
  • Teleport the token 5 squares to the left
  • Play another effect on the token's location
let tokenD = canvas.tokens.controlled[0];
let sequence = new Sequence()
    .effect()
        .file("modules/animated-spell-effects-cartoon/spell-effects/cartoon/electricity/electrivity_blast_CIRCLE.webm")
        .atLocation(tokenD)
        .scale(0.35)
    .wait(1000)
        .effect()
        .file("modules/animated-spell-effects-cartoon/spell-effects/cartoon/electricity/lightning_bolt_RECTANGLE_05.webm")
        .atLocation(tokenD)
        .stretchTo({
            x: tokenD.center.x + canvas.grid.size*5,
            y: tokenD.center.y
        })
    .wait(100)
    .animation()
        .on(tokenD)
        .teleportTo({
            x: tokenD.x + canvas.grid.size*5,
            y: tokenD.y
        })
        .waitUntilFinished()
    .effect()
        .file("modules/animated-spell-effects-cartoon/spell-effects/cartoon/electricity/electric_ball_CIRCLE_06.webm")
        .atLocation(tokenD)
        .scale(0.5)

sequence.play();

Magic Missile

Uses JB2A - Jules&Ben's Animated Assets

One token firing three magic missiles on another token

new Sequence()
    .effect()
        .atLocation(canvas.tokens.controlled[0])
        .stretchTo(canvas.tokens.controlled[1])
        .file("jb2a.magic_missile")
        .repeats(3, 200, 300)
        .randomizeMirrorY()
    .play();

Magic Circle

A magic circle fading, rotating, and scaling in, then fading, rotating, and scaling out

new Sequence()
    .effect()
        .file("modules/jb2a_patreon/Library/Generic/Magic_Signs/Abjuration_01_Blue_Circle_800x800.webm")
        .atLocation(canvas.tokens.controlled[0])
        .scaleToObject(2)
        .belowTokens()
        .fadeIn(1500, {ease: "easeOutCubic", delay: 500})
        .fadeOut(1500)
        .rotateIn(90, 2500, {ease: "easeInOutCubic"})
        .rotateOut(350, 1500, {ease: "easeInCubic"})
        .scaleIn(2, 2500, {ease: "easeInOutCubic"})
        .scaleOut(0, 1500, {ease: "easeInCubic"})
    .play()

Uses JB2A - Jules&Ben's Animated Assets

Lightning Strike

Uses JB2A - Jules&Ben's Animated Assets

Random lightning strikes on a token

new Sequence()
    .effect()
        .atLocation(canvas.tokens.controlled[0])
        .file('Images/Effects/Lightning/LightningStrike_01{{letter}}_800x800.webm')
        .setMustache({
            // random letter between a to f
            "letter": () => {
                const letters = ['a', 'b', 'c', 'd', 'e', 'f']; 
                return letters[Math.floor(Math.random() * letters.length)];
            }
        })
        .scale(2)
        .randomizeMirrorX()
    .play();

Acid Splash

Uses Jack Kerouac's Animated Cartoon Spell Effets

Acid splash hitting two tokens with random rotation and scales

new Sequence()
    .effect("modules/animated-spell-effects-cartoon/spell-effects/cartoon/water/acid_splash_CIRCLE_01.webm")
        .atLocation(canvas.tokens.controlled[0])
        .scale(0.3, 0.6)
        .randomRotation()
    .effect("modules/animated-spell-effects-cartoon/spell-effects/cartoon/water/acid_splash_CIRCLE_01.webm")
        .atLocation(canvas.tokens.controlled[1])
        .scale(0.3, 0.6)
        .randomRotation()
    .play();

Siren Documentation & Guides Siren

Click the link above to go to the documentation where each feature is listed.

Changelog

Credits

Feedback and amazing help

  • U-man over at FXMaster for his implementation of layers - Copyright © 2020 Emmanuel Ruaud
  • Otigon with his Automated Animations for his work on handling standardized effects - Copyright © 2020 Otigon
  • ghost (ghost#2000 on discord) for his fixes to the audio sections
  • Kandashi (Kandashi#6698 on discord) for the inspiration and code of persistent effects
  • Naito (Naito#1235 on discord) for his assistance with improving the Database Viewer's speed
  • League of Extraordinary FoundryVTT Developers for their ongoing support and suggestions
  • Foundry VTT Core code for heaps of inspiration

Oujia Board Scene

Other Attributions

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].