A six shooter can be shot quickly or slowly — until the sixth shot is fired. Then it takes time to reload. Since it’s random, every LED Port can have a different six shooter at odds with all the others. A first rate shoot ’em up.

Define statements are used liberally. They work like the find and replace of a word processor. The new text goes where the name once was. We never see the substitution, though we know it happens.

//Western six-shooter
//made to give each shot a slightly different gunflash, not
//enough to tell which shot is which. Just enough to subtly hint 
//at real-world powder variation or aiming angle differences
//the fainter flashes persist longer, total light is very similar

//R - Rising flash and F - falling flash definitions:
define fire1R chn1 = fade to 90% within 30ms //30ms shot flash is bright
define fire1F chn1 = fade to 0% within 60ms //180ms shot fading
define fire2R chn1 = fade to 85% within 30ms //30ms shot middle bright
define fire2F chn1 = fade to 0% within 65ms //200ms shot fading
define fire3R chn1 = fade to 70% within 25ms //30ms shot less bright
define fire3F chn1 = fade to 0% within 70ms //220ms shot fading
define fire4R chn1 = fade to 80% within 25ms //30ms shot middle bright
define fire4F chn1 = fade to 0% within 75ms //210ms shot fading

//The shooting begins
@100ms aim1 //wait while aiming the first shot
 //this aim may take longer, it includes reload variation
@300ms go to aim1 with 90% chance //sometimes the gunman takes real careful aim

fire1R //fire the first shot
@335ms fire1F

@435ms aim2
@635ms go to aim2 with 80% chance
fire2R //fire 2
@670ms fire2F

@770ms aim3
@970ms go to aim3 with 80% chance

fire3R //fire 3
@1005ms fire3F

@1105ms aim4
@1305ms go to aim4 with 80% chance

fire4R //fire 4
@1340ms fire4F

@1440ms aim5
@1640ms go to aim5 with 80% chance

fire2R //fire 5
@1675ms fire4F

@1775ms aim6
@1975ms go to aim6 with 80% chance

fire4R //fire 6
@2005ms fire2F

//7 seconds to reload, fast gunslinger
@9005ms
//then falls through, starts over to
//aim & shoot some more

The firing rate is controlled separately for each bullet but might all typically be the same chance. Change the chance of taking more time aiming at each  “Go To aim…” statement.