Proffie "Piercing" saber effect

OK, if it becomes a problem I might be able to add something that cuts the effect short so it can restart properly, would just need to play around with the order of events in the style to give it more independence.

1 Like

Sounds good, thank you! I’ll let you know if it turns out to be disruptive. I have a feeling they are going to work just fine as-is.

Meanwhile, here is a clip of both sabers fully armed and operational! The second droid is at a friend’s house, but it would be lying on its back on the floor.

Thank you again!! :grin:

5 Likes

Very cool, you’re welcome. Should be very popular, are you 501st or RL?

Very cool. Great idea and execution!

1 Like

Hello! First, sorry I missed your message here - yes, I am 501st and RL. Stormtrooper & Plo Koon :slight_smile:

We debuted these babies at their first convention last month and they were a hit! Thanks so much for making it possible. I have a couple of takeaway notes to ask about.

  • Consensus among the handlers was that a press-on, press-off would be preferred over the current press-on, hold-off configuration. Can this be done?

  • The issue of “leftover” voice tracks playing when the saber reignites was recurring - in fact, it seems to happen every time. I think, somehow, if the saber is off for longer than the 9/14sec timer, it queues up a voice track to play when activated, resulting in a vocal overlap with the ignition dialogue.

For the second issue, if it’s too much of a headache, I think I can roll with it by simply removing dialogue from the ignition, and letting the “queued” lines be the ignition dialogue. It’s a funny solution but I think it would work just fine. Let me know if you’re interested in tackling that problem again - if not I’m happy to proceed with my plan B.

Thanks as always! Cheers :slight_smile:

No worries.

I’ve been in the 501st forever, although I only troop a couple of times a year nowadays.

I think I know what’s happening, I’ll try to mess with it a bit. Might take some time, have family visiting for the holiday but I’ll get back to you on it.

1 Like

Sounds good, thank you! No rush. :slight_smile:

OK, I have these to try BUT they’re using a new OS8 feature. So you’ll be doing us a favor and doing an OS8 Alpha test as well.

You’ll need to get the latest code from GitHub for this.
Go to GitHub - profezzorn/ProffieOS: Lightsaber Controller Software

  • Click the Green “Code” button
  • Click “Download ZIP”
  • Then extract the ZIP file to your computer
  • Save your previous configs to the /config folder of the new extract and then add these styles.
  • Update the new ProffieOS.ino to define your config
  • Launch ProffieOS.ino for OS8 in Arduino and upload as usual

These, in theory, handle the issue of the quotes timer running even while off and instead the quote timer will cut off on retraction and then reset on ignition.

Since OS8 is still in Alpha, if anything odd pops up let us know as well. If this is successful though, you’ll have done the Alpha test we need on the new TransitionLoopWhileL<> layer, so “two birds, one stone”.

Blue

/* copyright Fett263 Rotoscope (Light) (Primary Blade) OS8 Style
Customized Style for Droid Display - 5/29/2025
This style will require my prop to run

NOTE:This style includes Control Layer.  Only one Control Layer should be used per preset.

OS8 Alpha
Single Style
Style Option
Base Color: BaseColorArg (0)

--Effects Included--
Ignition Effect: Standard Ignition [Color: IgnitionColorArg]
Retraction Effect: Standard Retraction [Color: RetractionColorArg]

--Supported Sounds--
trloop.wav - "lockup / melt" sound (looped)
quoteNN.wav - quotes, (will be played randomly at varying intervals)

Font should also include:
humNN.wav
outNN.wav
inNN.wav

Recommend removing these sounds from font (no visual effects for these to limit visitor interaction):
clsh
force
blst
lock
bgnlock
endlock
drag
bgndrag
enddrag
melt
bgnmelt
endmelt
lb
bgnlb
endlb
*/
StylePtr<Layers<Stripes<15000,-400,RgbArg<BASE_COLOR_ARG,Rgb<0,135,255>>,Stripes<12000,-200,RgbArg<BASE_COLOR_ARG,Rgb<0,135,255>>,Mix<Int<20000>,Black,RgbArg<BASE_COLOR_ARG,Rgb<0,135,255>>>,RgbArg<BASE_COLOR_ARG,Rgb<0,135,255>>>>,AlphaL<ColorChange<TrInstant,White,White>,Int<0>>,TransitionEffectL<TrConcat<TrDelayX<WavLen<EFFECT_IGNITION>>,AlphaL<White,Int<0>>,TrDoEffectAlways<TrInstant,EFFECT_SOUND_LOOP>>,EFFECT_IGNITION>,TransitionEffectL<TrDoEffectAlways<TrInstant,EFFECT_SOUND_LOOP>,EFFECT_RETRACTION>,TransitionLoopWhileL<TrConcat<TrDelay<19000>,AlphaL<White,Int<0>>,TrDoEffect<TrInstant,EFFECT_QUOTE>,AlphaL<White,Int<0>>,TrDelayX<WavLen<EFFECT_QUOTE>>>,TrInstant,Ifon<Int<32768>,Int<0>>>,AlphaL<Stripes<10000,1000,Orange,AudioFlicker<Orange,BrownNoiseFlicker<DarkOrange,Mix<Int<12000>,Black,Orange>,300>>>,LinearSectionF<Int<25454>,Int<12628>>>,InOutTrL<TrWipeX<Int<300>>,TrWipeInX<Int<500>>,Black>>>(),

Green

/* copyright Fett263 Rotoscope (Light) (Primary Blade) OS8 Style
Customized Style for Droid Display - 5/29/2025
This style will require my prop to run

NOTE:This style includes Control Layer.  Only one Control Layer should be used per preset.

OS8 Alpha
Single Style
Style Option
Base Color: BaseColorArg (0)

--Effects Included--
Ignition Effect: Standard Ignition [Color: IgnitionColorArg]
Retraction Effect: Standard Retraction [Color: RetractionColorArg]

--Supported Sounds--
trloop.wav - "lockup / melt" sound (looped)
quoteNN.wav - quotes, (will be played randomly at varying intervals)

Font should also include:
humNN.wav
outNN.wav
inNN.wav

Recommend removing these sounds from font (no visual effects for these to limit visitor interaction):
clsh
force
blst
lock
bgnlock
endlock
drag
bgndrag
enddrag
melt
bgnmelt
endmelt
lb
bgnlb
endlb
*/
StylePtr<Layers<Stripes<15000,-400,RgbArg<BASE_COLOR_ARG,Rgb<0,255,0>>,Stripes<12000,-200,RgbArg<BASE_COLOR_ARG,Rgb<0,255,0>>,Mix<Int<20000>,Black,RgbArg<BASE_COLOR_ARG,Rgb<0,255,0>>>,RgbArg<BASE_COLOR_ARG,Rgb<0,255,0>>>>,AlphaL<ColorChange<TrInstant,White,White>,Int<0>>,TransitionEffectL<TrConcat<TrDelayX<WavLen<EFFECT_IGNITION>>,AlphaL<White,Int<0>>,TrDoEffectAlways<TrInstant,EFFECT_SOUND_LOOP>>,EFFECT_IGNITION>,TransitionEffectL<TrDoEffectAlways<TrInstant,EFFECT_SOUND_LOOP>,EFFECT_RETRACTION>,TransitionLoopWhileL<TrConcat<TrDelay<11000>,AlphaL<White,Int<0>>,TrDoEffect<TrInstant,EFFECT_QUOTE>,AlphaL<White,Int<0>>,TrDelayX<WavLen<EFFECT_QUOTE>>>,TrInstant,Ifon<Int<32768>,Int<0>>>,AlphaL<Remap<CenterDistF<Int<9844>>,Stripes<10000,-1000,Orange,AudioFlicker<Orange,BrownNoiseFlicker<DarkOrange,Mix<Int<12000>,Black,Orange>,300>>>>,LinearSectionF<Int<9844>,Int<11108>>>,InOutTrL<TrWipeX<Int<300>>,TrWipeInX<Int<500>>,Black>>>(),