The thing is, if you do it this way, there’s no sudden jump from one state to the other. It’s a smooth transition.
@dg4prez If you’re looking at options this isn’t EDIT_MODE compatible but I modded some code a while back for this purpose.
Layers<StripesX<Int<50>,Int<-1500>,RotateColorsX<Variation,Black>,RotateColorsX<Variation,Black>,RotateColorsX<Variation,Rgb<0,0,150>>,RotateColorsX<Variation,Rgb<0,0,50>>>>
If you want EDIT_MODE stuff @Fett263 does indeed have options such as this that you can edit the bump size.
/* copyright Fett263 Simple (Accent LED / PCB) OS6 Style
https://fett263.com/fett263-proffieOS6-style-library.html#Simple
OS6.6 v3.05
This Style Contains 12 Unique Combinations
Style Options:
Default (0): HumpFlicker Small (Two Color)
1: RandomFlicker (Two Color)
Off Behavior Options: Default (0): Slow Turbine, 1: Slow Run Reverse
--Effects Included--
Preon Effect Options: Default (0): Disable, 1: Rey TROS Spark, 2: Overload (PreOn Color)
Ignition Effect: Instant
PowerUp Effect: Unstable Power Up Forward
Retraction Effect: Instant
CoolDown Effect: Unstable Cool Down Reverse
Lockup Effect: Intensity Lockup Up V1
LightningBlock Effect: Full Blade Lightning
Clash Effect: Flash on Clash (Full Blade)
Swing Effect: Fire Swing (Scaled Full Blade)
Battery Level: Full Blade (Green to Red)
*/
StylePtr<Layers<ColorSelect<IntArg<STYLE_OPTION_ARG,0>,TrInstant,HumpFlicker<RgbArg<BASE_COLOR_ARG,Rgb<0,0,255>>,RgbArg<ALT_COLOR_ARG,Rgb<0,0,220>>,60>,RandomFlicker<RgbArg<BASE_COLOR_ARG,Rgb<0,0,255>>,RgbArg<ALT_COLOR_ARG,Rgb<0,0,220>>>>,AlphaL<Stripes<2800,-3000,RgbArg<SWING_COLOR_ARG,Rgb<255,255,255>>,Mix<Int<2096>,Black,RgbArg<SWING_COLOR_ARG,Rgb<255,255,255>>>,Mix<Int<16384>,Black,RgbArg<SWING_COLOR_ARG,Rgb<255,255,255>>>>,Scale<IsLessThan<SwingSpeed<600>,Int<13600>>,Scale<SwingSpeed<600>,Int<-19300>,Int<32768>>,Int<0>>>,TransitionEffectL<TrConcat<TrJoin<TrDelayX<IgnitionTime<0>>,TrInstant>,Stripes<3000,-3500,RgbArg<IGNITION_COLOR_ARG,Rgb<255,255,255>>,RandomPerLEDFlicker<Mix<Int<7710>,Black,RgbArg<IGNITION_COLOR_ARG,Rgb<255,255,255>>>,Black>,BrownNoiseFlicker<RgbArg<IGNITION_COLOR_ARG,Rgb<255,255,255>>,Mix<Int<3855>,Black,RgbArg<IGNITION_COLOR_ARG,Rgb<255,255,255>>>,200>,RandomPerLEDFlicker<Mix<Int<3137>,Black,RgbArg<IGNITION_COLOR_ARG,Rgb<255,255,255>>>,Mix<Int<3855>,Black,RgbArg<IGNITION_COLOR_ARG,Rgb<255,255,255>>>>>,TrFade<800>>,EFFECT_IGNITION>,TransitionEffectL<TrConcat<TrJoin<TrDelayX<RetractionTime<0>>,TrInstant>,Stripes<3000,3500,RgbArg<RETRACTION_COLOR_ARG,Rgb<255,255,255>>,RandomPerLEDFlicker<Mix<Int<7710>,Black,RgbArg<RETRACTION_COLOR_ARG,Rgb<255,255,255>>>,Black>,BrownNoiseFlicker<RgbArg<RETRACTION_COLOR_ARG,Rgb<255,255,255>>,Mix<Int<3855>,Black,RgbArg<RETRACTION_COLOR_ARG,Rgb<255,255,255>>>,200>,RandomPerLEDFlicker<Mix<Int<3137>,Black,RgbArg<RETRACTION_COLOR_ARG,Rgb<255,255,255>>>,Mix<Int<3855>,Black,RgbArg<RETRACTION_COLOR_ARG,Rgb<255,255,255>>>>>,TrFade<800>>,EFFECT_RETRACTION>,TransitionEffectL<TrConcat<TrJoin<TrDelay<30>,TrInstant>,RgbArg<CLASH_COLOR_ARG,Rgb<255,255,255>>,TrFade<300>>,EFFECT_CLASH>,TransitionEffectL<TrConcat<TrInstant,AlphaL<RgbArg<LOCKUP_COLOR_ARG,Rgb<255,255,255>>,SmoothStep<ClashImpactF<>,Int<-4000>>>,TrFadeX<Scale<ClashImpactF<>,Int<100>,Int<300>>>>,EFFECT_LOCKUP_BEGIN>,TransitionEffectL<TrConcat<TrInstant,AlphaL<RgbArg<LOCKUP_COLOR_ARG,Rgb<255,255,255>>,Int<0>>,TrSelect<Scale<IsLessThan<ClashImpactF<>,Int<20000>>,Int<1>,Int<0>>,TrWaveX<RgbArg<LOCKUP_COLOR_ARG,Rgb<255,255,255>>,Scale<ClashImpactF<>,Int<50>,Int<400>>,Int<100>,Scale<ClashImpactF<>,Int<500>,Int<300>>,Int<0>>,TrSparkX<Stripes<1200,-3600,Mix<Int<6425>,Black,RgbArg<LOCKUP_COLOR_ARG,Rgb<255,255,255>>>,RgbArg<LOCKUP_COLOR_ARG,Rgb<255,255,255>>,Mix<Int<12850>,Black,RgbArg<LOCKUP_COLOR_ARG,Rgb<255,255,255>>>>,Int<30>,Scale<Sum<ClashImpactF<>,SwingSpeed<600>>,Int<100>,Int<400>>,Int<0>>>>,EFFECT_LOCKUP_END>,LockupTrL<Strobe<RgbArg<LB_COLOR_ARG,Rgb<255,255,255>>,AudioFlicker<RgbArg<LB_COLOR_ARG,Rgb<255,255,255>>,Blue>,50,1>,TrInstant,TrFade<1000>,SaberBase::LOCKUP_LIGHTNING_BLOCK>,InOutTrL<TrInstant,TrInstant,ColorSelect<IntArg<OFF_OPTION_ARG,0>,TrInstant,ColorCycle<RgbArg<BASE_COLOR_ARG,Rgb<0,135,255>>,25,100,RgbArg<BASE_COLOR_ARG,Rgb<0,135,255>>,25,300,4000>,TransitionLoop<Black,TrConcat<TrWipeIn<1000>,RgbArg<BASE_COLOR_ARG,Rgb<0,135,255>>,TrWipeIn<1000>>>>>,TransitionEffectL<TrSelect<IntArg<PREON_OPTION_ARG,0>,TrInstant,TrConcat<TrJoin<TrDelayX<Int<100>>,TrInstant>,AlphaL<Green,SmoothStep<IntArg<PREON_SIZE_ARG,32768>,Int<-2000>>>,TrWipe<100>,AlphaL<DodgerBlue,SmoothStep<IntArg<PREON_SIZE_ARG,32768>,Int<-2000>>>,TrDelayX<Sum<WavLen<EFFECT_PREON>,Int<200>>>>,TrConcat<TrFadeX<Mult<Int<8192>,WavLen<EFFECT_PREON>>>,AlphaL<HumpFlickerL<RgbArg<PREON_COLOR_ARG,Rgb<255,255,255>>,10>,SmoothStep<IntArg<PREON_SIZE_ARG,32768>,Int<-4000>>>,TrFadeX<Mult<Int<8192>,WavLen<EFFECT_PREON>>>,AlphaL<HumpFlickerL<RgbArg<PREON_COLOR_ARG,Rgb<255,255,255>>,15>,SmoothStep<Sum<Int<2000>,IntArg<PREON_SIZE_ARG,32768>>,Int<-4000>>>,TrFadeX<Mult<Int<8192>,WavLen<EFFECT_PREON>>>,AlphaL<HumpFlickerL<RgbArg<PREON_COLOR_ARG,Rgb<255,255,255>>,20>,SmoothStep<Sum<Int<4000>,IntArg<PREON_SIZE_ARG,32768>>,Int<-4000>>>,TrBoingX<Mult<Int<8192>,WavLen<EFFECT_PREON>>,3>>>,EFFECT_PREON>,TransitionEffectL<TrConcat<TrJoin<TrDelay<2000>,TrInstant>,Mix<BatteryLevel,Red,Green>,TrFade<300>>,EFFECT_BATTERY_LEVEL>>>()},
I’ve been working on this actually, and made some good progress as to what I was aiming for. My setup is using the small accent ring and large accent ring with a 50/50 in the center, all wired in series. Figured out how to split up the sections using LinearSectionF and Stripes to precisely control the looping size and timing. Some examples below:
nice! Care to share the styles?
Sure! I’m still working on putting them all together in one cohesive style using STYLE OPTIONS, but here’s the code for the lower blue one:
Layers<
/* ON */
Layers<Black,
/* LOWER (3:1) */ AlphaL<Stripes<108,-800,RgbArg<ALT_COLOR_ARG,Red>,RgbArg<ALT_COLOR_ARG,Red>,RgbArg<ALT_COLOR_ARG,Red>,RgbArg<POSTOFF_COLOR_ARG,Black>,RgbArg<POSTOFF_COLOR_ARG,Black>>,
/* LOWER MATTE */ LinearSectionF<Int<6656>,Int<11264>>>,
/* UPPER (3:1) */ AlphaL<Stripes<142,-1119,RgbArg<POSTOFF_COLOR_ARG,Black>,RgbArg<POSTOFF_COLOR_ARG,Black>,RgbArg<POSTOFF_COLOR_ARG,Black>,RgbArg<POSTOFF_COLOR_ARG,Black>,RgbArg<BASE_COLOR_ARG,Red>,RgbArg<BASE_COLOR_ARG,Red>,RgbArg<BASE_COLOR_ARG,Red>>,
/* UPPER MATTE */ LinearSectionF<Int<32768>,Int<40960>>>,
/* FIRST PIXEL */ AlphaL<Blinking<RgbArg<EMITTER_COLOR_ARG,Red>,Black,600,500>,LinearSectionF<Int<512>,Int<1024>>>
>,
/* OFF */
InOutTrL<TrInstant,TrInstant,
Layers<Black,
/* LOWER (3:1) */ AlphaL<Stripes<108,-600,RgbArg<ALT_COLOR_ARG,Red>,RgbArg<POSTOFF_COLOR_ARG,Black>,RgbArg<POSTOFF_COLOR_ARG,Black>,RgbArg<POSTOFF_COLOR_ARG,Black>,RgbArg<POSTOFF_COLOR_ARG,Black>>,
/* LOWER MATTE */ LinearSectionF<Int<6656>,Int<11264>>>,
/* UPPER (3:1) */ AlphaL<Stripes<142,-839,RgbArg<POSTOFF_COLOR_ARG,Black>,RgbArg<POSTOFF_COLOR_ARG,Black>,RgbArg<POSTOFF_COLOR_ARG,Black>,RgbArg<POSTOFF_COLOR_ARG,Black>,RgbArg<BASE_COLOR_ARG,Red>,Black,RgbArg<POSTOFF_COLOR_ARG,Black>>,
/* UPPER MATTE */ LinearSectionF<Int<32768>,Int<40960>>>,
/* FIRST PIXEL */ AlphaL<Blinking<RgbArg<EMITTER_COLOR_ARG,Red>,Black,1200,500>,LinearSectionF<Int<512>,Int<1024>>>
>
>
>
Open to suggestions and areas of improvement (this snippet doesn’t include the clash, blast, etc. effects, which I’ve implemented in the main code). One issue is that sometimes the code goes out of sync - i.e. the inner and outer rings are offset. Turning the saber off and back on resets the sync issue. Not sure why this happens sometimes.
I’m curious, is this a blade plug sort of thing? That’s the emitter, yes? no pogo pins or anything.
It’s actually the pommel of the SaberBay Survivor JSJ chassis - the speaker is uniquely located higher in the chassis, so the pommel has two crystal chambers, where I custom fit the accent rings at the end.
Fantastic!
wait what? where?
I have a podracing soundfont and thought I saw a podracing style but I couldn’t see it. I think the electrostaff may work but a dedicated podracing style would be great.
Thry are under Accent or Crystal ON / OFF Behavior options.