What It Does
Sigilaunch simulates launching a sigil into space after manifesting it unto visible appearance via incantation. It is similar to SigilChant but features a different graphical interface with several new animations, as well as a smoothing algorithm for the audio input. A numeric counter displays the sigil’s percentage of visible manifestation. When the sigil is completely manifested, it shoots off into the distant sky. There is a new, custom-made slider for selecting the audio input threshold, and a pointer that moves automatically to show how the actual (smoothed) input level compares to the threshold.
How It Works
Sigilaunch has a
Controller sprite that receives audio data from the microphone and smooths it (v.i.). Like SigilChant2, Sigilaunch has a slider that sets an audio threshold variable (
threshVal), but instead of using Scratch’s built-in slider interface, I made my own slider integrated into the screen (assembled from three separate sprites:
threshVal is set by mapping the x position of the
SliderThumb sprite to a value between 0 and 100; you can click on
SliderThumb and drag it left or right to decease or increase the threshold. One of the
loud, is set to 1 if the smoothed average is greater than
threshVal, or 0 otherwise. The
SliderPointer sprite automatically glides left and right according to the smoothed sound input value. If
loud = 1 then the pointer is green; otherwise it is red.
loud = 1, the
Sigil sprite’s ghost effect decreases, causing the sprite to appear (just like in SigilChant). If loud = 0, the ghost effect changes in the opposite direction, causing the sigil to disappear.
NumDisp100 display the current value of the
manifestPercent variable, which is calculated from the
ghostVal ranges from 100 (complete transparency) to 0 (complete opacity), so the percentage of opacity is 100 −
When the percentage reaches 100, the
Controller broadcasts the message
launchSigil, which tells the
Sigil sprite to run the script that animates the launch. The
Sigil sprite’s size decreases as its vertical position moves up the screen, giving the appearance that it is flying away, and finally it changes from the
sigil costume to the
starburst costume and fades away using the ghost effect.
Message sprite displays text messages on screen that instruct the operator or inform her about the state of the project while it is running.
Controller‘s smoothing algorithm is inspired by ones I have used for the Arduino microncontroller. Essentially, the last ten values read by the loudness sensing block are saved to a list (
smoothReadings) and then a moving average is computed (
smoothNumReadingsvariable determines how many loudness values are read in order to be averaged. The more readings, the less reactionary the output but the longer the output takes to respond to the input. You can see what I mean by changing the value of
smoothNumReadingsand observing how the
Make It Better
- As with previous projects, it is trivial to change the sigil costume to one of your own design. You can either redraw the costume using Scratch’s built-in editor or import an image from elsewhere.
- The speed of the sigil manifestation is pretty fast. You can slow it down by changing the
ghostValvariable by a value smaller than -1, e.g., try -0.1 or -0.01. You could also change the value by which
loud= 0, or you can leave that as is so the sigil is slow to appear but rapidly disappears again in the absence of sufficiently loud input.
- There are no sounds played in this project but you could add some, e.g., a whooshing sound as the sigil flies off into cyberspace, or thunder after the sigil changes to a starburst. You could replace the text messages with a voice that says, “launch imminent,” &c.
- Implement a launch countdown that plays between the time when the sigil is 100% visibly manifested and when it launches into cyberspace.