Need .h file for 89Sabers Quantum Saber

Just got an 89Sabers Quantum Neopixel Saber proffie 3.9 of course from CCSabers.

I checked the SD card & it doesn’t have any .h file or config with the text for one.
I got a hold of their Customer Support & asked them for the file, & instead they gave me this link
https://drive.google.com/drive/folders/1RcJjYH4ZPAN59LaODvf_j_kC-IELnJLj?usp=drive_link

All it had as far as .h files was a download for a zip file that had 14 generic .h files that had basic basic red, green, blue blades. Only thing different was the set-up of the buttons, blades, ect.
Maybe if you know which one out of the 14 to use for this board?

What I need is a .h file for this 89Sabers Quantum Saber proffie 3.9
Is there a site that keeps track of 89Sabers config files?

For the cost of the saber, it’s not unreasonable to ask a follow up like: thanks for the files, which one do comes installed on this saber? or some such.

Yeah, I know. It’s just so weird how he’d give me a link to 14 different ones & say “The one I sent to you includes the general ones categorized by color.”

What does that mean? Why would they be “categorized by color” to begin with. And he knows exactly which Lightsaber I purchased, so why can’t he just tell me ‘Use this config file.’

I clicked on a few and they all satisfy this requirement.

The blade array is the most importantly part, so if you know which of those match you can create your own config or chose whichever matches that way.

You can do that by understanding how the is wired and how many pixels or sets of pixels there are. This can come from a diagram, visual inspection, or by uploading configs (.h files) until glows properly.

I love that mecha saber, btw. Very cool choice!

Edit: The blade arrays seem to match, although I didn’t open them all.

BladeConfig blades[] = {
 { 0, WS281XBladePtr<128, bladePin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3> >(),
    WS281XBladePtr<30, blade2Pin, Color8::GRB, PowerPINS<bladePowerPin4, bladePowerPin5> >()
  , CONFIGARRAY(presets) },
};

128 pixel main blade, 30 pixel secondary. Less pixels would also light up fine, but the effects will be off until it’s adjusted down.

1 Like

Thanks for the info that did the trick!

Now that leaves me with a almost insignificant problem…
The chassis has 2 light strips on each side that show on the outside as part of all the lights on it.
Problem is that one side automatically links up to the saber & what’s it doing, the other side needs to be programmed like a Crystal but more complex since it has so many LED’s in the strips.

Is there a way I can link that Strip to the Strip that Automatically links to the blade, or do I have to do it manually by putting in the Blade Style Code twice???

The only way to not to double up on the code is to have the strips all use the same data pad on the Proffie. So you’d have to move one wire so that it’s getting data feed from that pad.

You can also choose to use a sub blade to get control of the strips that have data in series with the main blade, but you have to increase your blade number to 3 and have style code in your presets to match.

Thats what I would want, so you can have the chassis LEDs do their own thing.

1 Like

Tried to use the Kylo config they had, but that wasn’t compiling (as I was expecting)
Could you put up the code for what a link to that extra strip would look like?

If you give this a shot:

We can tune it up.

Post the full config you’re using

like this

you can manually enter 3 back ticks above and below the code or push the button that looks like </>

So what I’m understanding is that you have a fully lit blade, one strip of LEDs that mimics the blade’s behavior on the chassis, and one strip of LEDs doing it’s own thing but working on the chassis. Is that right?

And each pixel strip in the chassis is 30 LEDs? (if the independent strip on the chassis if fully lit, it’s 30 or less accoring to the blade array)

1 Like

Quantum.h (53.7 KB)
Here’s the config I’m using now. It’s the best I’ve come up with to make the strips match…

You got it right. One strip on the chassis mimics the blade, & the strip on the other side of the chassis follows a code. Without a code it’s just black like you’d expect it to be.

Now that I think about it I’m not sure if the strip is 30 LEDs, that’s just what’s on all the random blade config files that CCSabers has & that’s what worked. They didn’t have any config files available for any specific Proffie Lightsabers they sold & they didn’t add them in the SD Cards.

Asked a Guy if he could get me the Config for this specific Lightsaber they sold me & he said that he’d try to get it from 89Sabers & he’d get back to me that day. Never heard from him again…

It’s fine. We can get it running properly. There may be a delay if people get busy, but noone ghosts people here.

What we need to know is whether the strip you want to get indepent control of is wired in series (a long line) or in parallel (kind of next to it, with all of the connecting wires touching the same pads as the blade connector).

A wiring diagram is best. Pics can help too if you can post a couple of the board and chassis.

My guess is that they are in series, so I suggested a subblade. That would split the 128 pixels into two lengths. We have to figure out one of them, either the blade or the strip.

We can keep trying things to get at those numbers, including upgrading your config and OS and staying with the Fett263 setup you have. That would give you a blade length counter with some additional set up.

But just counting LEDs and looking at the wire flow from the data pads would be quick. So yeah, pics?

Also, once you know you chassis pixel strip length you can fix it in the other blade and get more precise effects that match up perfectly.

Your styles are look a bit outdated, especially working with Fett’s prop. What OS are you running?

Once you get the blade array set, I recommend checking out his library and related info:

The config compiiles fine in 7.16 at only 60% memory consumption.

I’m going to post it below as is for anyone interested, or incase we need more help :slight_smile:

#ifdef CONFIG_TOP
#include "proffieboard_v3_config.h"
#define NUM_BLADES 2
#define NUM_BUTTONS 2
#define VOLUME 1500
const unsigned int maxLedsPerStrip = 144;
#define CLASH_THRESHOLD_G 3.0
#define ENABLE_AUDIO
#define ENABLE_MOTION
#define ENABLE_WS2811
#define ENABLE_SD
#define ENABLE_SERIAL
#define ORIENTATION ORIENTATION_USB_TOWARDS_BLADE

#define DISABLE_DIAGNOSTIC_COMMANDS
#define FETT263_MULTI_PHASE

#define FETT263_TWIST_ON_NO_BM 
#define FETT263_TWIST_ON 
#define FETT263_TWIST_OFF    

#define MOTION_TIMEOUT 60 * 3 * 1000  

#define FETT263_THRUST_ON
#define FETT263_THRUST_OFF
#define FETT263_DISABLE_COPY_PRESET
#define FETT263_DISABLE_CHANGE_FONT

// #define ENABLE_SSD1306
// // Max 20 characters
// #define BLE_PASSWORD "your password"
// // Max 32 characters.
// #define BLE_NAME "Your Saber Name"
// // Max 9 characters
// #define BLE_SHORTNAME "Saber"

#define MOTION_TIMEOUT 60 * 3 * 800               
#endif

#ifdef CONFIG_PROP
#include "../props/saber_fett263_buttons.h"

#endif


#ifdef CONFIG_PRESETS
Preset presets[] = { 

{ "Shadowfall", "tracks/Endor.wav",
StylePtr<InOutHelper<Blast<LocalizedClash<Lockup<TransitionEffect<TransitionEffect<TransitionEffect<TransitionEffect<TransitionEffect<TransitionEffect<TransitionEffect<Mix<SwingSpeed<300>,StyleFire<BrownNoiseFlicker<DeepSkyBlue,RandomPerLEDFlicker<Rgb<0,8,20>,Rgb<0,18,42>>,200>,Rgb<0,25,60>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>,Mix<SwingSpeed<500>,BrownNoiseFlicker<Blue,Rgb<0,80,0>,300>,StyleFire<BrownNoiseFlicker<Blue,RandomPerLEDFlicker<Rgb<0,25,0>,Rgb<0,60,0>>,200>,Rgb<0,80,0>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>>>,StyleFire<White,DeepSkyBlue,0,6>,TrInstant,TrSmoothFade<1600>,EFFECT_IGNITION>,Mix<Bump<Int<32768>,Int<16000>>,StyleFire<BrownNoiseFlicker<DeepSkyBlue,RandomPerLEDFlicker<Rgb<0,8,20>,Rgb<0,18,42>>,200>,Rgb<0,25,60>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>,RandomPerLEDFlicker<OrangeRed,White>>,TrConcat<TrWipeIn<600>,Mix<Bump<Int<32768>,Int<16000>>,StyleFire<BrownNoiseFlicker<DeepSkyBlue,RandomPerLEDFlicker<Rgb<0,8,20>,Rgb<0,18,42>>,200>,Rgb<0,25,60>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>,RandomPerLEDFlicker<Orange,White>>,TrWipe<600>>,TrInstant,EFFECT_STAB>,White,TrInstant,TrSmoothFade<200>,EFFECT_LOCKUP_BEGIN>,StyleFire<DeepSkyBlue,White,0,6>,TrInstant,TrSmoothFade<500>,EFFECT_LOCKUP_END>,Mix<Bump<Int<32768>,Int<10000>>,StyleFire<BrownNoiseFlicker<DeepSkyBlue,RandomPerLEDFlicker<Rgb<0,8,20>,Rgb<0,18,42>>,200>,Rgb<0,25,60>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>,White>,TrInstant,TrFade<200>,EFFECT_DRAG_BEGIN>,Mix<Bump<Int<32768>,Int<10000>>,StyleFire<BrownNoiseFlicker<DeepSkyBlue,RandomPerLEDFlicker<Rgb<0,8,20>,Rgb<0,18,42>>,200>,Rgb<0,25,60>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>,White>,TrInstant,TrFade<300>,EFFECT_DRAG_END>,Black,TrConcat<TrInstant,HumpFlicker<White,DeepSkyBlue,40>,TrColorCycle<600>>,TrInstant,EFFECT_RETRACTION>,Pulsing<Gradient<DeepSkyBlue,BrownNoiseFlicker<White,Strobe<Blue,White,50,1>,100>>,Gradient<BrownNoiseFlicker<White,Strobe<Blue,White,50,1>,100>,DeepSkyBlue>,3500>,RandomPerLEDFlicker<DeepSkyBlue,White>,Bump<Int<16000>,Int<20000>>,Bump<Int<32768>,Int<10000>>>,White>,White>,300,500,Black>>(),
StylePtr<Layers<Mix<SwingSpeed<300>,StyleFire<BrownNoiseFlicker<DeepSkyBlue,RandomPerLEDFlicker<Rgb<0,8,20>,Rgb<0,18,42>>,200>,Rgb<0,25,60>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>,Mix<SwingSpeed<500>,BrownNoiseFlicker<Blue,Rgb<0,80,0>,300>,StyleFire<BrownNoiseFlicker<Blue,RandomPerLEDFlicker<Rgb<0,25,0>,Rgb<0,60,0>>,200>,Rgb<0,80,0>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>>>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Deadlink", "tracks/hellstyle.wav",
StylePtr<Layers<Mix<SmoothStep<Scale<SwingSpeed<400>,Int<6000>,Int<24000>>,Int<10000>>,Stripes<5000,-1300,RotateColorsX<Variation,Rgb<0,0,150>>,RotateColorsX<Variation,Rgb<25,0,50>>,RotateColorsX<Variation,Rgb<0,0,200>>,RotateColorsX<Variation,Rgb<0,0,100>>>,AudioFlicker<RotateColorsX<Variation,Rgb<0,0,150>>,RotateColorsX<Variation,Rgb<0,0,100>>>>,AlphaL<Stripes<2500,-3000,RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb16<18076,0,0>>,Pulsing<RotateColorsX<Variation,Rgb<26,0,0>>,Black,800>>,SwingSpeed<350>>,LockupTrL<Layers<AlphaL<AudioFlickerL<OrangeRed>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<Red,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,TransitionEffect<DarkOrange,Red,TrInstant,TrFade<200>,EFFECT_LOCKUP_BEGIN>,TrFade<400>>,TrConcat<TrInstant,TransitionEffect<DarkOrange,OrangeRed,TrInstant,TrFade<550>,EFFECT_LOCKUP_BEGIN>,TrFade<400>,Stripes<3000,-3500,RotateColorsX<Variation,Red>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<60,0,0>>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<60,0,0>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<125,0,0>>,RotateColorsX<Variation,Rgb<60,0,0>>>>,TrFade<1350>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<Red,AudioFlicker<Black,DarkOrange>,50,1>,TrConcat<TrInstant,AlphaL<OrangeRed,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<OrangeRed,Int<16000>>,30>,TrSmoothFade<600>>>,ResponsiveStabL<Red>,EffectSequence<EFFECT_BLAST,TransitionEffectL<TrConcat<TrInstant,AlphaL<Red,BlastF<200,200>>,TrFade<300>>,EFFECT_BLAST>,ResponsiveBlastL<Red,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>>,ResponsiveBlastWaveL<Red,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,ResponsiveBlastFadeL<Red,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<Red,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,ResponsiveClashL<TransitionEffect<Red,OrangeRed,TrInstant,TrFade<100>,EFFECT_CLASH>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,TransitionEffectL<TrConcat<TrInstant,Stripes<3000,-3500,RotateColorsX<Variation,Red>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<60,0,0>>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<60,0,0>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<125,0,0>>,RotateColorsX<Variation,Rgb<60,0,0>>>>,TrFade<2700>>,EFFECT_IGNITION>,TransitionEffectL<TrConcat<TrInstant,HumpFlickerL<RotateColorsX<Variation,Red>,40>,TrFade<1100>>,EFFECT_RETRACTION>,LockupTrL<AlphaL<HumpFlickerL<Red,100>,SmoothStep<Int<30000>,Int<30000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<Mix<TwistAngle<>,Red,OrangeRed>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,InOutTrL<TrWipeSparkTip<Magenta,300>,TrWipeInSparkTip<Magenta,1100>>,TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>,TransitionEffectL<TrConcat<TrInstant,AlphaL<BrownNoiseFlickerL<Magenta,Int<30>>,SmoothStep<Scale<SlowNoise<Int<2000>>,Int<1000>,Int<4000>>,Int<-4000>>>,TrDelay<1250>>,EFFECT_RETRACTION>>>(),
StylePtr<Layers<Mix<SmoothStep<Scale<SwingSpeed<400>,Int<6000>,Int<24000>>,Int<10000>>,Stripes<5000,-1300,RotateColorsX<Variation,Rgb<0,0,150>>,RotateColorsX<Variation,Rgb<25,0,50>>,RotateColorsX<Variation,Rgb<0,0,200>>,RotateColorsX<Variation,Rgb<0,0,100>>>,AudioFlicker<RotateColorsX<Variation,Rgb<0,0,150>>,RotateColorsX<Variation,Rgb<0,0,100>>>>,AlphaL<Stripes<2500,-3000,RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb16<18076,0,0>>,Pulsing<RotateColorsX<Variation,Rgb<26,0,0>>,Black,800>>,SwingSpeed<350>>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Apocalypse", "tracks/BattleOfHeros.wav",
StylePtr<Layers<Mix<SmoothStep<Scale<SwingSpeed<400>,Int<6000>,Int<24000>>,Int<10000>>,Mix<Sin<Int<30>>,StyleFire<BrownNoiseFlicker<RotateColorsX<Variation,Red>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<128,0,0>>,RotateColorsX<Variation,Rgb<60,0,0>>>,300>,RotateColorsX<Variation,Rgb<30,0,0>>,0,6,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>>,StyleFire<BrownNoiseFlicker<RotateColorsX<Variation,OrangeRed>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<128,25,0>>,RotateColorsX<Variation,Rgb<60,15,0>>>,300>,RotateColorsX<Variation,Rgb<30,2,0>>,0,6,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>>>,HumpFlicker<RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<125,0,0>>,40>>,AlphaL<AlphaL<AudioFlickerL<RotateColorsX<Variation,Rgb16<65535,8729,0>>>,SwingSpeed<350>>,SmoothStep<Scale<SwingSpeed<450>,Int<29000>,Int<9500>>,Int<16000>>>,LockupTrL<Layers<AlphaL<AudioFlickerL<Rgb<255,150,0>>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<Moccasin,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<500>>,TrConcat<TrInstant,White,TrFade<600>,StyleFire<BrownNoiseFlicker<RotateColorsX<Variation,OrangeRed>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<128,25,0>>,RotateColorsX<Variation,Rgb<60,15,0>>>,300>,RotateColorsX<Variation,Rgb<30,2,0>>,0,6,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>>,TrFade<50>,RotateColorsX<Variation,Rgb16<65535,8729,0>>,TrFade<525>,StyleFire<BrownNoiseFlicker<RotateColorsX<Variation,OrangeRed>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<128,25,0>>,RotateColorsX<Variation,Rgb<60,15,0>>>,300>,RotateColorsX<Variation,Rgb<30,2,0>>,0,6,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>>,TrFade<50>,RotateColorsX<Variation,Rgb16<35913,7294,0>>,TrFade<250>,StyleFire<BrownNoiseFlicker<RotateColorsX<Variation,OrangeRed>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<128,25,0>>,RotateColorsX<Variation,Rgb<60,15,0>>>,300>,RotateColorsX<Variation,Rgb<30,2,0>>,0,6,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>>,TrFade<100>,RotateColorsX<Variation,Rgb16<20393,1818,0>>,TrBoing<950,3>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,ResponsiveStabL<RotateColorsX<Variation,Orange>>,EffectSequence<EFFECT_BLAST,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,LocalizedClashL<White,80,30,EFFECT_BLAST>,ResponsiveBlastWaveL<White,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,BlastL<White,200,200>,ResponsiveBlastFadeL<White,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<White,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,ResponsiveClashL<TransitionEffect<Rgb<255,150,0>,Moccasin,TrInstant,TrFade<100>,EFFECT_CLASH>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,TransitionEffectL<TrConcat<TrInstant,Stripes<3000,-3500,RotateColorsX<Variation,Orange>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<70,25,5>>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,OrangeRed>,RotateColorsX<Variation,Rgb<75,20,5>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<155,25,0>>,RotateColorsX<Variation,Rgb<65,15,0>>>>,TrFade<2500>,Stripes<3000,-2250,RotateColorsX<Variation,DarkOrange>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<195,15,0>>,RotateColorsX<Variation,Rgb<50,15,0>>>,BrownNoiseFlicker<RotateColorsX<Variation,OrangeRed>,RotateColorsX<Variation,Rgb<85,15,0>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<155,25,0>>,RotateColorsX<Variation,Rgb<95,15,0>>>>,TrFade<1000>,Stripes<3000,-1500,RotateColorsX<Variation,Rgb16<65535,8729,0>>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<195,10,0>>,RotateColorsX<Variation,Rgb<55,5,0>>>,BrownNoiseFlicker<RotateColorsX<Variation,OrangeRed>,RotateColorsX<Variation,Rgb<185,10,0>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<255,13,0>>,RotateColorsX<Variation,Rgb<105,3,0>>>>,TrFade<2500>>,EFFECT_IGNITION>,TransitionEffectL<TrConcat<TrInstant,HumpFlickerL<RotateColorsX<Variation,Rgb<255,75,0>>,40>,TrFade<500>>,EFFECT_RETRACTION>,LockupTrL<AlphaL<BrownNoiseFlickerL<White,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<Mix<TwistAngle<>,Rgb<255,200,0>,DarkOrange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,InOutTrL<TrWipeSparkTip<White,175,250>,TrColorCycle<500>>,TransitionEffectL<TrConcat<TrInstant,AlphaL<BrownNoiseFlickerL<White,Int<30>>,SmoothStep<Scale<SlowNoise<Int<2000>>,Int<500>,Int<5500>>,Int<-4000>>>,TrFade<1100>>,EFFECT_RETRACTION>,TransitionEffectL<TrConcat<TrInstant,AlphaL<White,Bump<Int<0>,Int<10000>>>,TrFade<1600>,AlphaL<RotateColorsX<Variation,Orange>,Bump<Int<0>,Int<8000>>>,TrFade<1400>,AlphaL<RotateColorsX<Variation,Red>,Bump<Int<0>,Int<6000>>>,TrFade<1000>>,EFFECT_RETRACTION>,TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>,TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<Trigger<EFFECT_PREON,Int<3000>,Int<2000>,Int<1000>>,BrownNoiseFlicker<Black,RotateColorsX<Variation,Red>,100>,RandomPerLEDFlicker<RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb16<14386,0,0>>>,BrownNoiseFlicker<Mix<NoisySoundLevel,RotateColorsX<Variation,Red>,RotateColorsX<Int<4000>,RotateColorsX<Variation,Red>>>,DarkOrange,50>>,SmoothStep<Scale<NoisySoundLevel,Int<-1000>,Int<25000>>,Int<-4000>>>,TrDelay<6500>>,EFFECT_PREON>,TransitionEffectL<TrConcat<TrDelay<3000>,TransitionLoopL<TrWaveX<RotateColorsX<Variation,Red>,Int<115>,Int<400>,Int<250>,Int<0>>>,TrDelay<1000>,TransitionLoopL<TrWaveX<RotateColorsX<Variation,Red>,Int<215>,Int<300>,Int<395>,Int<0>>>,TrDelay<1500>,TransitionLoopL<TrWaveX<RotateColorsX<Variation,Red>,Int<345>,Int<200>,Int<500>,Int<0>>>,TrDelay<1500>,AlphaL<RotateColorsX<Variation,Red>,Bump<Int<0>,Int<6000>>>,TrBoing<500,2>>,EFFECT_PREON>,TransitionEffectL<TrConcat<TrFade<1500>,AlphaL<HumpFlickerL<RotateColorsX<Variation,Red>,10>,Bump<Int<0>,Int<4000>>>,TrFade<2000>,AlphaL<HumpFlickerL<RotateColorsX<Variation,Orange>,15>,Bump<Int<0>,Int<5000>>>,TrFade<2500>,AlphaL<HumpFlickerL<White,20>,Bump<Int<0>,Int<6000>>>,TrBoing<500,2>>,EFFECT_PREON>>>(),
StylePtr<Layers<Mix<SmoothStep<Scale<SwingSpeed<400>,Int<6000>,Int<24000>>,Int<10000>>,Mix<Sin<Int<30>>,StyleFire<BrownNoiseFlicker<RotateColorsX<Variation,Red>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<128,0,0>>,RotateColorsX<Variation,Rgb<60,0,0>>>,300>,RotateColorsX<Variation,Rgb<30,0,0>>,0,6,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>>,StyleFire<BrownNoiseFlicker<RotateColorsX<Variation,OrangeRed>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<128,25,0>>,RotateColorsX<Variation,Rgb<60,15,0>>>,300>,RotateColorsX<Variation,Rgb<30,2,0>>,0,6,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>>>,HumpFlicker<RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<125,0,0>>,40>>,AlphaL<AlphaL<AudioFlickerL<RotateColorsX<Variation,Rgb16<65535,8729,0>>>,SwingSpeed<350>>,SmoothStep<Scale<SwingSpeed<450>,Int<29000>,Int<9500>>,Int<16000>>>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Seethe", "tracks/hellstyle.wav",
StylePtr<Layers<AudioFlicker<RotateColorsX<Variation,Rgb<50,0,125>>,RotateColorsX<Variation,Rgb<75,0,200>>>,TransitionEffectL<TrConcat<TrFade<200>,AlphaL<RotateColorsX<Variation,Rgb<100,0,225>>,SwingSpeed<500>>,TrDelay<30000>,AlphaL<RotateColorsX<Variation,Rgb<100,0,225>>,SwingSpeed<500>>,TrFade<800>>,EFFECT_FORCE>,AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,Rgb<50,0,125>>,Black,300>,SwingSpeed<315>>,LockupTrL<Layers<AlphaL<AudioFlickerL<OrangeRed>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<18000>,Int<18000>>>>,AlphaL<Red,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<18000>>>>,TrConcat<TrInstant,DarkOrange,TrFade<400>>,TrConcat<TrInstant,AlphaL<Rgb<75,0,225>,Int<0>>,TrWaveX<DodgerBlue,Int<300>,Int<100>,Int<400>,Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<Red,AudioFlicker<Black,DarkOrange>,50,1>,TrConcat<TrInstant,AlphaL<DarkOrange,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<OrangeRed,Int<16000>>,30>,TrSmoothFade<600>>>,Mix<Sin<Int<8>>,AlphaL<RotateColorsX<Variation,Magenta>,Bump<Int<0>,Int<6000>>>,AlphaL<RotateColorsX<Variation,Rgb<100,0,255>>,Bump<Int<0>,Int<22000>>>>,ResponsiveStabL<Red>,EffectSequence<EFFECT_BLAST,ResponsiveBlastL<Red,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>>,LocalizedClashL<OrangeRed,80,30,EFFECT_BLAST>,ResponsiveBlastWaveL<OrangeRed,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,BlastL<OrangeRed,200,200>,ResponsiveBlastFadeL<OrangeRed,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<OrangeRed,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,ResponsiveClashL<TransitionEffect<Red,OrangeRed,TrInstant,TrFade<100>,EFFECT_CLASH>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,LockupTrL<AlphaL<BrownNoiseFlickerL<Red,Int<300>>,SmoothStep<Int<30000>,Int<15000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<Mix<TwistAngle<>,DarkOrange,Orange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,InOutTrL<TrWipe<2650>,TrWipeIn<1375>>,TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Blue,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Blue,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>>>(),
StylePtr<Layers<AudioFlicker<RotateColorsX<Variation,Rgb<50,0,125>>,RotateColorsX<Variation,Rgb<75,0,200>>>,AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,Rgb<50,0,125>>,Black,300>,SwingSpeed<315>>,Mix<Sin<Int<8>>,AlphaL<RotateColorsX<Variation,Magenta>,Bump<Int<0>,Int<6000>>>,AlphaL<RotateColorsX<Variation,Rgb<100,0,255>>,Bump<Int<0>,Int<22000>>>>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Splinter", "tracks/DarkPath.wav",
StylePtr<Layers<Mix<SmoothStep<Scale<SwingSpeed<400>,Int<6000>,Int<24000>>,Int<10000>>,Stripes<5000,-1300,RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<60,0,0>>,RotateColorsX<Variation,OrangeRed>,RotateColorsX<Variation,Rgb<120,0,0>>>,AudioFlicker<RotateColorsX<Variation,OrangeRed>,RotateColorsX<Variation,Red>>>,AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,Rgb<0,0,200>>,Black,300>,SwingSpeed<600>>,LockupTrL<Layers<AlphaL<AudioFlickerL<SteelBlue>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<SteelBlue,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,TransitionEffect<SteelBlue,SteelBlue,TrInstant,TrFade<200>,EFFECT_LOCKUP_BEGIN>,TrFade<400>>,TrConcat<TrInstant,TransitionEffect<SteelBlue,SteelBlue,TrInstant,TrFade<550>,EFFECT_LOCKUP_BEGIN>,TrFade<400>,Stripes<3000,-3500,RotateColorsX<Variation,SteelBlue>,RandomPerLEDFlicker<RotateColorsX<Variation,OrangeRed>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,OrangeRed>,RotateColorsX<Variation,SteelBlue>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,OrangeRed>,RotateColorsX<Variation,SteelBlue>>>,TrFade<1350>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<SteelBlue,AudioFlicker<White,DodgerBlue>,50,1>,TrConcat<TrInstant,AlphaL<DodgerBlue,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<DodgerBlue,Int<16000>>,30>,TrSmoothFade<600>>>,ResponsiveStabL<Red>,OriginalBlastL<Blue>,ResponsiveClashL<TransitionEffect<SteelBlue,DodgerBlue,TrInstant,TrFade<100>,EFFECT_CLASH>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,TransitionEffectL<TrConcat<TrInstant,Stripes<3000,-3500,RotateColorsX<Variation,Rgb16<65535,58942,5401>>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<60,17,0>>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,Rgb<255,178,110>>,RotateColorsX<Variation,Rgb<60,17,0>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<128,34,0>>,RotateColorsX<Variation,Rgb<60,17,0>>>>,TrFade<2700>>,EFFECT_IGNITION>,TransitionEffectL<TrConcat<TrInstant,HumpFlickerL<RotateColorsX<Variation,Rgb16<65535,58942,5401>>,40>,TrFade<1100>>,EFFECT_RETRACTION>,LockupTrL<AlphaL<BrownNoiseFlickerL<DodgerBlue,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<Mix<TwistAngle<>,SteelBlue,DodgerBlue>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,InOutTrL<TrWipeSparkTip<White,300>,TrWipeInSparkTip<White,1100>>,TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>,TransitionEffectL<TrConcat<TrInstant,AlphaL<BrownNoiseFlickerL<White,Int<30>>,SmoothStep<Scale<SlowNoise<Int<2000>>,Int<1000>,Int<4000>>,Int<-4000>>>,TrDelay<1250>>,EFFECT_RETRACTION>>>(),
StylePtr<Layers<Mix<SmoothStep<Scale<SwingSpeed<400>,Int<6000>,Int<24000>>,Int<10000>>,Stripes<5000,-1300,RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<60,0,0>>,RotateColorsX<Variation,OrangeRed>,RotateColorsX<Variation,Rgb<120,0,0>>>,AudioFlicker<RotateColorsX<Variation,OrangeRed>,RotateColorsX<Variation,Red>>>,AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,Rgb<0,0,200>>,Black,300>,SwingSpeed<600>>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Lord of Betrayal", "tracks/Mace.wav",
StylePtr<Layers<HumpFlicker<Rgb<125,0,125>,Rgb<100,0,100>,150>,LockupTrL<Layers<AlphaL<HumpFlicker<Black,AudioFlicker<Blue,Black>,75>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<HumpFlicker<Black,AudioFlicker<Blue,Black>,75>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,SteelBlue,TrFade<400>>,TrConcat<TrInstant,SteelBlue,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,TransitionEffectL<TrConcat<TrJoin<TrDelayX<IgnitionTime<>>,TrInstant>,Stripes<5000,-2500,RgbArg<IGNITION_COLOR_ARG,Rgb<128,0,128>>,Mix<Int<7710>,Black,RgbArg<IGNITION_COLOR_ARG,Rgb<128,0,128>>>,Mix<Int<3855>,Black,RgbArg<IGNITION_COLOR_ARG,Rgb<128,0,128>>>>,TrFade<800>>,EFFECT_IGNITION>,TransitionEffectL<TrConcat<TrJoin<TrDelayX<RetractionTime<300>>,TrInstant>,Stripes<5000,2500,RgbArg<RETRACTION_COLOR_ARG,Rgb<128,0,128>>,Mix<Int<7710>,Rgb<128,0,128>,RgbArg<RETRACTION_COLOR_ARG,Rgb<128,0,128>>>,Mix<Int<3855>,Black,RgbArg<RETRACTION_COLOR_ARG,Rgb<128,0,128>>>>,TrFade<800>>,EFFECT_RETRACTION>,ResponsiveLightningBlockL<Strobe<Black,HumpFlicker<Black,AudioFlicker<Blue,Black>,75>,50,1>,TrConcat<TrInstant,AlphaL<Blue,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<DeepSkyBlue,Int<16000>>,40>,TrSmoothFade<600>>>,TransitionEffectL<TrConcat<TrInstant,AlphaL<RgbArg<BLAST_COLOR_ARG,Blue>,Bump<Scale<BladeAngle<>,Int<3000>,Int<29000>>,Int<6000>>>,TrCenterWipeX<Int<100>,Scale<BladeAngle<>,Int<3000>,Int<29000>>>,AlphaL<Remap<CenterDistF<Scale<BladeAngle<>,Int<3000>,Int<29000>>>,Stripes<1600,-2000,RgbArg<BLAST_COLOR_ARG,Blue>,Mix<Int<2096>,Black,RgbArg<BLAST_COLOR_ARG,Blue>>>>,Bump<Scale<BladeAngle<>,Int<3000>,Int<29000>>,Int<32000>>>,TrJoin<TrSmoothFade<50>,TrCenterWipeX<Int<100>,Scale<BladeAngle<>,Int<3000>,Int<29000>>>>>,EFFECT_BLAST>,ResponsiveClashL<HumpFlicker<Black,AudioFlicker<Blue,Black>,75>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<40000>>,LockupTrL<AlphaL<BrownNoiseFlicker<OrangeRed,DarkOrange,500>,SmoothStep<Int<30000>,Int<7000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<AudioFlicker<OrangeRed,DarkOrange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL<TrWipe<300>,TrWipeIn<500>>>>(), 
StylePtr<Layers<HumpFlicker<Rgb<50,0,50>,Rgb<100,0,100>,150>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(), 
},

{ "Lord of Pain", "tracks/stasis.wav",
StylePtr<Layers<DarkOrange,HumpFlickerL<Red,3>,LockupTrL<Layers<AlphaL<AudioFlickerL<LightCyan>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<AudioFlickerL<LightCyan>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,LightCyan,TrFade<400>>,TrConcat<TrInstant,LightCyan,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<LightCyan,AudioFlicker<LightCyan,LightCyan>,50,1>,TrConcat<TrInstant,AlphaL<LightCyan,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<LightCyan,Int<16000>>,30>,TrSmoothFade<600>>>,BlastL<LightCyan>,ResponsiveClashL<LightCyan,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,LockupTrL<AlphaL<BrownNoiseFlickerL<LightCyan,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<Mix<TwistAngle<>,LightCyan,LightCyan>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL<TrWipe<300>,TrWipeIn<500>>>>(),
StylePtr<Layers<DarkOrange,HumpFlickerL<Red,3>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Lord of Hunger", "tracks/SK2.wav", 
StylePtr<Layers<Rgb<160,0,0>,TransitionEffectL<TrConcat<TrFade<200>,AlphaL<RotateColorsX<Variation,DeepPink>,SwingSpeed<500>>,TrDelay<30000>,AlphaL<RotateColorsX<Variation,DeepPink>,SwingSpeed<500>>,TrFade<800>>,EFFECT_FORCE>,AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,Rgb16<40546,1400,1400>>,Black,300>,SwingSpeed<315>>,LockupTrL<AlphaL<AudioFlicker<Red,DeepPink>,SmoothStep<Int<27500>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,LockupTrL<Layers<AlphaL<AudioFlickerL<DeepPink>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<AudioFlicker<DeepPink,Black>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,DeepPink,TrFade<400>>,TrConcat<TrInstant,AlphaL<DeepPink,Int<0>>,TrWaveX<White,Int<300>,Int<100>,Int<400>,Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<DeepPink,AudioFlicker<Black,Black>,50,1>,TrConcat<TrInstant,AlphaL<DeepPink,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<Black,Int<16000>>,30>,TrSmoothFade<600>>>,Mix<Sin<Int<8>>,AlphaL<RotateColorsX<Variation,Rgb16<40546,2000,2000>>,Bump<Int<0>,Int<6000>>>,AlphaL<RotateColorsX<Variation,Rgb16<40546,2000,2000>>,Bump<Int<0>,Int<22000>>>>,ResponsiveStabL<Red>,TransitionEffectL<TrConcat<TrInstant,AlphaL<RgbArg<BLAST_COLOR_ARG,DeepPink>,Bump<Scale<BladeAngle<>,Int<3000>,Int<29000>>,Int<6000>>>,TrCenterWipeX<Int<100>,Scale<BladeAngle<>,Int<3000>,Int<29000>>>,AlphaL<Remap<CenterDistF<Scale<BladeAngle<>,Int<3000>,Int<29000>>>,Stripes<1600,-2000,RgbArg<BLAST_COLOR_ARG,DeepPink>,Mix<Int<2096>,Black,RgbArg<BLAST_COLOR_ARG,DeepPink>>>>,Bump<Scale<BladeAngle<>,Int<3000>,Int<29000>>,Int<32000>>>,TrJoin<TrSmoothFade<50>,TrCenterWipeX<Int<100>,Scale<BladeAngle<>,Int<3000>,Int<29000>>>>>,EFFECT_BLAST>,ResponsiveClashL<HumpFlicker<Black,AudioFlicker<DeepPink,Black>,75>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<40000>>,LockupTrL<AlphaL<BrownNoiseFlicker<Magenta,HotPink,500>,SmoothStep<Int<27500>,Int<7000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,InOutTrL<TrWipe<2650>,TrWipeIn<1375>>,TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>>>(),
StylePtr<Layers<Rgb<160,0,0>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "The Blinded One", "tracks/therescue.wav",
StylePtr<Layers<Rgb<60,0,0>,LockupTrL<Layers<AlphaL<HumpFlicker<Red,AudioFlicker<Red,Black>,75>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<HumpFlicker<Red,AudioFlicker<Red,Black>,75>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,Red,TrFade<400>>,TrConcat<TrInstant,Red,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<Red,HumpFlicker<Black,AudioFlicker<Red,Black>,75>,50,1>,TrConcat<TrInstant,AlphaL<Red,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<Red,Int<16000>>,30>,TrSmoothFade<600>>>,TransitionEffectL<TrWaveX<RgbArg<BLAST_COLOR_ARG,Red>,Scale<EffectRandomF<EFFECT_BLAST>,Int<100>,Int<400>>,Int<100>,Scale<EffectPosition<EFFECT_BLAST>,Int<100>,Int<400>>,Scale<EffectPosition<EFFECT_BLAST>,Int<28000>,Int<8000>>>,EFFECT_BLAST>,ResponsiveClashL<AudioFlicker<OrangeRed,Red>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<30000>>,LockupTrL<AlphaL<BrownNoiseFlicker<Red,OrangeRed,50>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<AudioFlicker<Red,OrangeRed>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL<TrWipe<300>,TrWipeIn<500>>>>(),
StylePtr<Layers<Rgb<60,0,0>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Prodigal Butcher", "tracks/RevanSongYT.wav",
StylePtr<Layers<Stripes<2500,-3000,RotateColorsX<Variation,Rgb<75,0,200>>,RotateColorsX<Variation,Rgb<75,0,150>>,Pulsing<RotateColorsX<Variation,Rgb<50,0,100>>,Rgb<25,0,50>,800>>,LockupTrL<Layers<AlphaL<HumpFlickerL<Red,50>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<HumpFlickerL<Red,50>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<20000>>>>,TrConcat<TrInstant,OrangeRed,TrFade<400>>,TrConcat<TrInstant,OrangeRed,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<Azure,AudioFlicker<LightCyan,Azure>,50,1>,TrConcat<TrInstant,AlphaL<Azure,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<Azure,Int<16000>>,30>,TrSmoothFade<600>>>,AlphaL<RotateColorsX<Variation,Rgb<200,0,255>>,SmoothStep<Scale<SlowNoise<Int<2300>>,Int<1200>,Int<1200>>,Int<-8000>>>,BlastL<OrangeRed>,ResponsiveClashL<Red,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,LockupTrL<AlphaL<AudioFlicker<GhostWhite,OrangeRed>,SmoothStep<Int<30000>,Int<20000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<AudioFlicker<OrangeRed,Red>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL<TrWipe<300>,TrWipeIn<500>>>>(),    
StylePtr<Layers<Stripes<2500,-3000,RotateColorsX<Variation,Rgb<75,0,200>>,RotateColorsX<Variation,Rgb<75,0,150>>,Pulsing<RotateColorsX<Variation,Rgb<50,0,100>>,Rgb<25,0,50>,800>>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Metallic Jaw", "tracks/something.wav",
StylePtr<Layers<HumpFlicker<OrangeRed,Mix<Int<16448>,Black,RgbArg<BASE_COLOR_ARG,OrangeRed>>,75>,LockupTrL<Layers<AlphaL<HumpFlickerL<LightCyan,50>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<HumpFlickerL<LightCyan,50>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<20000>>>>,TrConcat<TrInstant,LightCyan,TrFade<400>>,TrConcat<TrInstant,LightCyan,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<Azure,AudioFlicker<LightCyan,Azure>,50,1>,TrConcat<TrInstant,AlphaL<Azure,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<Azure,Int<16000>>,30>,TrSmoothFade<600>>>,BlastL<LightCyan>,ResponsiveClashL<LightCyan,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,LockupTrL<AlphaL<AudioFlicker<White,Orange>,SmoothStep<Int<30000>,Int<20000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<AudioFlicker<DarkOrange,Orange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL<TrWipe<300>,TrWipeIn<500>>>>(),
StylePtr<Layers<HumpFlicker<OrangeRed,Mix<Int<16448>,Black,RgbArg<BASE_COLOR_ARG,OrangeRed>>,75>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Shadow Hand", "tracks/something.wav",
StylePtr<Layers<HumpFlicker<Red,Mix<Int<16448>,Black,RgbArg<BASE_COLOR_ARG,Red>>,75>,LockupTrL<Layers<AlphaL<HumpFlickerL<LightCyan,50>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<HumpFlickerL<LightCyan,50>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<20000>>>>,TrConcat<TrInstant,LightCyan,TrFade<400>>,TrConcat<TrInstant,LightCyan,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<Azure,AudioFlicker<LightCyan,Azure>,50,1>,TrConcat<TrInstant,AlphaL<Azure,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<Azure,Int<16000>>,30>,TrSmoothFade<600>>>,BlastL<LightCyan>,ResponsiveClashL<LightCyan,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,LockupTrL<AlphaL<AudioFlicker<White,Orange>,SmoothStep<Int<30000>,Int<20000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<AudioFlicker<DarkOrange,Orange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL<TrWipe<300>,TrWipeIn<500>>>>(),
StylePtr<Layers<HumpFlicker<Red,Mix<Int<16448>,Black,RgbArg<BASE_COLOR_ARG,Red>>,75>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Last Handmaiden", "tracks/hanszimmer.wav",  	
StylePtr<Layers<AudioFlicker<RotateColorsX<Variation,Rgb16<13655,53737,65535>>,RotateColorsX<Variation,Rgb<75,150,200>>>,LockupTrL<Layers<AlphaL<AudioFlickerL<Yellow>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<AudioFlickerL<LemonChiffon>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,LightCyan,TrFade<400>>,TrConcat<TrInstant,LightCyan,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<RgbArg<LB_COLOR_ARG,LemonChiffon>,AudioFlicker<RgbArg<LB_COLOR_ARG,LemonChiffon>,LemonChiffon>,50,1>,TrConcat<TrInstant,AlphaL<RgbArg<LB_COLOR_ARG,Yellow>,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<RgbArg<LB_COLOR_ARG,Yellow>,Int<16000>>,30>,TrSmoothFade<600>>>,ResponsiveStabL<AudioFlickerL<RgbArg<STAB_COLOR_ARG,Yellow>>,TrWipeInX<Percentage<WavLen<EFFECT_STAB>,50>>,TrFadeX<Percentage<WavLen<EFFECT_STAB>,50>>>,BlastL<AudioFlicker<LemonChiffon,LemonChiffon>>,ResponsiveClashL<LemonChiffon,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,LockupTrL<AlphaL<AudioFlicker<Cyan,Aquamarine>,SmoothStep<Int<30000>,Int<10000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<BrownNoiseFlicker<Yellow,Orange,50>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL<TrWipe<300>,TrWipeIn<500>>>>(),
StylePtr<Layers<AudioFlicker<RotateColorsX<Variation,Rgb16<13655,53737,65535>>,RotateColorsX<Variation,Rgb<75,150,200>>>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Crazy Hermit", "tracks/therescue.wav",
StylePtr<Layers<Mix<Int<16384>,SpringGreen,Green>,LockupTrL<Layers<AlphaL<HumpFlickerL<Coral,50>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<HumpFlickerL<Coral,50>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,Coral,TrFade<400>>,TrConcat<TrInstant,Coral,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<Yellow,AudioFlicker<LightYellow,LemonChiffon>,50,1>,TrConcat<TrInstant,AlphaL<Yellow,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<Yellow,Int<16000>>,30>,TrSmoothFade<600>>>,TransitionEffectL<TrWaveX<RgbArg<BLAST_COLOR_ARG,Tomato>,Scale<EffectRandomF<EFFECT_BLAST>,Int<100>,Int<400>>,Int<100>,Scale<EffectPosition<EFFECT_BLAST>,Int<100>,Int<400>>,Scale<EffectPosition<EFFECT_BLAST>,Int<28000>,Int<8000>>>,EFFECT_BLAST>,TransitionEffectL<TrConcat<TrInstant,AlphaL<RgbArg<CLASH_COLOR_ARG,Tomato>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-12000>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<10000>>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-10000>>>,Scale<ClashImpactF<>,Int<12000>,Int<60000>>>>,TrFadeX<Scale<ClashImpactF<>,Int<200>,Int<400>>>>,EFFECT_CLASH>,LockupTrL<AlphaL<BrownNoiseFlickerL<Yellow,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<AudioFlicker<Coral,Tomato>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL<TrWipe<300>,TrWipeIn<500>>>>(),
StylePtr<Layers<Mix<Int<16384>,SpringGreen,Green>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Sentinel Shan", "tracks/something.wav",
StylePtr<InOutHelper<OnSpark<Blast<LocalizedClash<Lockup<AudioFlicker<Rgb16<65535,38402,0>,Rgb16<47361,30457,0>>,Pulsing<Gradient<AudioFlicker<Rgb16<65535,38402,0>,Rgb16<47361,30457,0>>,AudioFlicker<Rgb16<65535,38402,0>,Rgb16<47361,30457,0>>,HumpFlicker<Magenta,Cyan,50>,AudioFlicker<Rgb16<65535,38402,0>,Rgb16<47361,30457,0>>,AudioFlicker<Rgb16<65535,38402,0>,Rgb16<47361,30457,0>>>,Gradient<AudioFlicker<Rgb16<65535,38402,0>,Rgb16<47361,30457,0>>,AudioFlicker<Rgb16<65535,38402,0>,Rgb16<47361,30457,0>>,HumpFlicker<Magenta,Cyan,50>,AudioFlicker<Rgb16<65535,38402,0>,Rgb16<47361,30457,0>>,AudioFlicker<Rgb16<65535,38402,0>,Rgb16<47361,30457,0>>,AudioFlicker<Rgb16<65535,38402,0>,Rgb16<47361,30457,0>>>,3500>,HumpFlicker<Chartreuse,DeepPink,50>>>,White>,Cyan,400>,200,200>>(),
StylePtr<Layers<AudioFlicker<Rgb16<65535,38402,0>,Rgb16<47361,30457,0>>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Cathar Guardian", "tracks/something.wav",
StylePtr<Layers<StyleFire<Stripes<2500,-5000,BrownNoiseFlicker<RotateColorsX<Variation,Rgb<0,0,200>>,Black,20>,RotateColorsX<Variation,Rgb<0,0,8>>,BrownNoiseFlicker<Black,RotateColorsX<Variation,Rgb<0,0,225>>,70>,RotateColorsX<Variation,Rgb<0,0,100>>>,RotateColorsX<Variation,Rgb<0,0,65>>,0,5,FireConfig<2,3000,0>,FireConfig<2,3000,0>,FireConfig<2,3000,0>,FireConfig<2,3000,0>>,LockupTrL<Layers<AlphaL<AudioFlickerL<DeepPink>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<DeepPink,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,Magenta,TrFade<400>>,TrConcat<TrInstant,Magenta,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<DeepPink,AudioFlicker<DeepPink,DeepPink>,50,1>,TrConcat<TrInstant,AlphaL<Magenta,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<Magenta,Int<16000>>,30>,TrSmoothFade<600>>>,ResponsiveStabL<Red>,ResponsiveBlastL<DeepPink,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>>,ResponsiveClashL<DeepPink,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,TransitionEffectL<TrConcat<TrInstant,AudioFlickerL<RotateColorsX<Variation,Rgb<160,60,255>>>,TrFade<1200>>,EFFECT_RETRACTION>,LockupTrL<AlphaL<BrownNoiseFlickerL<HotPink,Int<300>>,SmoothStep<Int<25000>,Int<10000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<Mix<TwistAngle<>,Orange,DarkOrange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL<TrWipeSparkTip<White,800>,TrWipeInSparkTip<White,880>>,TransitionEffectL<TrConcat<TrWipe<300>,AlphaL<HumpFlickerL<RotateColorsX<Variation,Rgb<21,0,52>>,90>,SmoothStep<Int<2000>,Int<-500>>>,TrDelay<1000>,AlphaL<HumpFlickerL<RotateColorsX<Variation,Rgb<21,0,52>>,90>,SmoothStep<Int<2000>,Int<-500>>>,TrWipe<300>,AlphaL<HumpFlickerL<RotateColorsX<Variation,Rgb<42,0,105>>,60>,SmoothStep<Int<4000>,Int<-500>>>,TrDelay<1000>,AlphaL<HumpFlickerL<RotateColorsX<Variation,Rgb<42,0,105>>,60>,SmoothStep<Int<4000>,Int<-500>>>,TrWipe<300>,AlphaL<HumpFlickerL<RotateColorsX<Variation,Rgb<64,0,145>>,30>,SmoothStep<Int<6000>,Int<-500>>>,TrDelay<5100>>,EFFECT_PREON>>>(),
StylePtr<Layers<StyleFire<Stripes<2500,-5000,BrownNoiseFlicker<RotateColorsX<Variation,Rgb<0,0,200>>,Black,20>,RotateColorsX<Variation,Rgb<0,0,8>>,BrownNoiseFlicker<Black,RotateColorsX<Variation,Rgb<0,0,225>>,70>,RotateColorsX<Variation,Rgb<0,0,100>>>,RotateColorsX<Variation,Rgb<0,0,65>>,0,5,FireConfig<2,3000,0>,FireConfig<2,3000,0>,FireConfig<2,3000,0>,FireConfig<2,3000,0>>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Competent Slicer", "tracks/something.wav",
StylePtr<Layers<DarkOrange,LockupTrL<AlphaL<AudioFlicker<RgbArg<LOCKUP_COLOR_ARG,SteelBlue>,Mix<Int<20000>,Black,RgbArg<LOCKUP_COLOR_ARG,SteelBlue>>>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-12000>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<10000>>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-10000>>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,TrConcat<TrInstant,SteelBlue,TrFade<400>>,TrConcat<TrInstant,SteelBlue,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<DodgerBlue,AudioFlicker<Cyan,LightCyan>,50,1>,TrConcat<TrInstant,AlphaL<Blue,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<Blue,Int<16000>>,30>,TrSmoothFade<600>>>,TransitionEffectL<TrWaveX<RgbArg<BLAST_COLOR_ARG,DodgerBlue>,Scale<EffectRandomF<EFFECT_BLAST>,Int<100>,Int<400>>,Int<100>,Scale<EffectPosition<EFFECT_BLAST>,Int<100>,Int<400>>,Scale<EffectPosition<EFFECT_BLAST>,Int<28000>,Int<8000>>>,EFFECT_BLAST>,Mix<IsLessThan<ClashImpactF<>,Int<26000>>,TransitionEffectL<TrConcat<TrInstant,AlphaL<RgbArg<CLASH_COLOR_ARG,Azure>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-12000>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<10000>>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-10000>>>,Scale<ClashImpactF<>,Int<12000>,Int<60000>>>>,TrFadeX<Scale<ClashImpactF<>,Int<200>,Int<400>>>>,EFFECT_CLASH>,TransitionEffectL<TrWaveX<RgbArg<CLASH_COLOR_ARG,DodgerBlue>,Scale<ClashImpactF<>,Int<100>,Int<400>>,Int<100>,Scale<ClashImpactF<>,Int<100>,Int<400>>,Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-12000>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<10000>>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-10000>>>>,EFFECT_CLASH>>,LockupTrL<AlphaL<BrownNoiseFlickerL<LightCyan,Int<75>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<AudioFlicker<Azure,GhostWhite>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL<TrWipe<300>,TrWipeIn<500>>>>(),
StylePtr<Layers<DarkOrange,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "The Huntress", "tracks/something.wav",
StylePtr<Layers<AudioFlicker<RotateColorsX<Variation,Rgb<100,100,150>>,RotateColorsX<Variation,Rgb<50,50,75>>>,EffectSequence<EFFECT_FORCE,AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,White>,Black,300>,SwingSpeed<450>>,AlphaL<Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<100,100,150>>,Black>,White,RotateColorsX<Variation,Rgb<100,100,150>>,White>,SwingSpeed<450>>>,LockupTrL<Layers<AlphaL<AudioFlickerL<SteelBlue>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<AudioFlicker<Black,SteelBlue>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<15000>>>>,TrConcat<TrInstant,TransitionEffect<DodgerBlue,SteelBlue,TrInstant,TrFade<200>,EFFECT_LOCKUP_BEGIN>,TrFade<400>>,TrConcat<TrInstant,TransitionEffect<DodgerBlue,SteelBlue,TrInstant,TrFade<200>,EFFECT_LOCKUP_BEGIN>,TrFade<700>>,SaberBase::LOCKUP_NORMAL>,ResponsiveClashL<Red,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<30000>>,TransitionEffectL<TrWaveX<RgbArg<BLAST_COLOR_ARG,Red>,Scale<EffectRandomF<EFFECT_BLAST>,Int<100>,Int<400>>,Int<100>,Scale<EffectPosition<EFFECT_BLAST>,Int<100>,Int<400>>,Scale<EffectPosition<EFFECT_BLAST>,Int<28000>,Int<8000>>>,EFFECT_BLAST>,LockupTrL<AlphaL<AudioFlicker<DodgerBlue,SteelBlue>,SmoothStep<Int<25000>,Int<10000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<AudioFlicker<SteelBlue,DodgerBlue>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,ResponsiveLightningBlockL<Strobe<DodgerBlue,AudioFlicker<SteelBlue,Black>,50,1>,TrConcat<TrInstant,AlphaL<DodgerBlue,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<DodgerBlue,Int<16000>>,30>,TrSmoothFade<600>>>,InOutTrL<TrWipe<300>,TrWipeIn<500>>>>(),
StylePtr<Layers<AudioFlicker<RotateColorsX<Variation,Rgb<100,100,150>>,RotateColorsX<Variation,Rgb<50,50,75>>>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "The Exile", "tracks/something.wav",
StyleRainbowPtr<300, 800>(),
StylePtr<Layers<Rainbow,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},

{ "Magnetic", "tracks/hellstyle.wav",
StylePtr<Layers<AudioFlicker<StripesX<Sin<Int<4>,Int<3000>,Int<6000>>,Scale<TwistAngle<>,Int<-50>,Int<-100>>,StripesX<Sin<Int<3>,Int<1000>,Int<3000>>,Scale<TwistAngle<>,Int<25>,Int<80>>,Pulsing<RotateColorsX<Variation,Rgb16<0,65535,52226>>,RotateColorsX<Variation,Rgb16<0,33908,20693>>,3000>,Mix<Sin<Int<2>>,RotateColorsX<Variation,Rgb<0,63,200>>,RotateColorsX<Variation,Rgb<0,7,8>>>>,RotateColorsX<Variation,Rgb<0,39,40>>,Pulsing<RotateColorsX<Variation,Rgb<0,36,30>>,StripesX<Sin<Int<2>,Int<2000>,Int<4000>>,Sin<Int<2>,Int<25>,Int<75>>,Mix<Sin<Int<4>>,RotateColorsX<Variation,Cyan>,RotateColorsX<Variation,Rgb<50,130,255>>>,RotateColorsX<Variation,Rgb<0,70,56>>>,2000>,Pulsing<RotateColorsX<Variation,Rgb<0,40,128>>,RotateColorsX<Variation,Rgb<0,38,30>>,3000>>,AlphaL<StripesX<Sin<Int<8>,Int<3000>,Int<6000>>,Scale<TwistAngle<>,Int<60>,Int<140>>,StripesX<Sin<Int<6>,Int<1000>,Int<3000>>,Scale<TwistAngle<>,Int<-25>,Int<-80>>,Pulsing<Mix<Sin<Int<4>>,RotateColorsX<Variation,Cyan>,RotateColorsX<Variation,Rgb<50,130,255>>>,RotateColorsX<Variation,Rgb<0,12,14>>,4000>,Mix<Sin<Int<2>>,RotateColorsX<Variation,Rgb<50,130,255>>,Black>>,RotateColorsX<Variation,Rgb<0,39,40>>,Pulsing<RotateColorsX<Variation,Rgb<0,26,40>>,StripesX<Sin<Int<2>,Int<2000>,Int<4000>>,Sin<Int<2>,Int<-25>,Int<-75>>,Mix<Sin<Int<4>>,RotateColorsX<Variation,Cyan>,RotateColorsX<Variation,Rgb16<1899,49276,65535>>>,RotateColorsX<Variation,Rgb<0,30,96>>>,2000>,Pulsing<RotateColorsX<Variation,Rgb<0,40,128>>,RotateColorsX<Variation,Rgb<0,16,50>>,3000>>,Int<10000>>>,AlphaL<AudioFlickerL<AlphaL<Mix<Trigger<EFFECT_FORCE,Int<4000>,Int<3800>,Int<200>>,BrownNoiseFlicker<Black,RotateColorsX<Variation,Rgb16<33124,0,65535>>,100>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb16<43654,0,65535>>,RotateColorsX<Variation,Rgb16<9500,0,14386>>>,BrownNoiseFlicker<Mix<NoisySoundLevel,RotateColorsX<Variation,Rgb16<0,65535,52226>>,RotateColorsX<Int<4000>,RotateColorsX<Variation,DeepSkyBlue>>>,RotateColorsX<Variation,Rgb16<43654,0,65535>>,50>>,SmoothStep<Scale<NoisySoundLevel,Int<-10000>,Int<36000>>,Int<-4000>>>>,SwingSpeed<450>>,LockupTrL<Layers<AlphaL<AudioFlickerL<Rgb<255,225,0>>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<NavajoWhite,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<400>>,TrConcat<TrInstant,White,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,AlphaL<RotateColorsX<Variation,Rgb16<11366,0,65535>>,SmoothStep<Scale<SlowNoise<Int<2500>>,Int<1000>,Int<4000>>,Int<-4000>>>,ResponsiveStabL<Red>,EffectSequence<EFFECT_BLAST,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,LocalizedClashL<White,80,30,EFFECT_BLAST>,ResponsiveBlastWaveL<White,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,BlastL<White,200,200>,ResponsiveBlastFadeL<White,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<White,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,ResponsiveClashL<TransitionEffect<Rgb<255,225,0>,NavajoWhite,TrInstant,TrFade<100>,EFFECT_CLASH>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,TransitionEffectL<TrConcat<TrFade<1040>,RotateColorsX<Variation,Rgb16<2521,681,18076>>,TrInstant,RotateColorsX<Variation,Rgb16<0,65535,52226>>,TrFade<550>>,EFFECT_IGNITION>,TransitionEffectL<TrConcat<TrInstant,AudioFlickerL<RotateColorsX<Variation,Rgb16<40546,3350,65535>>>,TrFade<1000>>,EFFECT_RETRACTION>,LockupTrL<AlphaL<BrownNoiseFlickerL<White,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<Mix<TwistAngle<>,Red,Orange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,InOutTrL<TrColorCycle<1040,5500,2000>,TrWipeInSparkTip<White,875>>,TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>>>(),  
StylePtr<Layers<Layers<AudioFlicker<StripesX<Sin<Int<4>,Int<3000>,Int<6000>>,Scale<TwistAngle<>,Int<-50>,Int<-100>>,StripesX<Sin<Int<3>,Int<1000>,Int<3000>>,Scale<TwistAngle<>,Int<25>,Int<80>>,Pulsing<RotateColorsX<Variation,Rgb16<0,65535,52226>>,RotateColorsX<Variation,Rgb16<0,33908,20693>>,3000>,Mix<Sin<Int<2>>,RotateColorsX<Variation,Rgb<0,63,200>>,RotateColorsX<Variation,Rgb<0,7,8>>>>,RotateColorsX<Variation,Rgb<0,39,40>>,Pulsing<RotateColorsX<Variation,Rgb<0,36,30>>,StripesX<Sin<Int<2>,Int<2000>,Int<4000>>,Sin<Int<2>,Int<25>,Int<75>>,Mix<Sin<Int<4>>,RotateColorsX<Variation,Cyan>,RotateColorsX<Variation,Rgb<50,130,255>>>,RotateColorsX<Variation,Rgb<0,70,56>>>,2000>,Pulsing<RotateColorsX<Variation,Rgb<0,40,128>>,RotateColorsX<Variation,Rgb<0,38,30>>,3000>>,AlphaL<StripesX<Sin<Int<8>,Int<3000>,Int<6000>>,Scale<TwistAngle<>,Int<60>,Int<140>>,StripesX<Sin<Int<6>,Int<1000>,Int<3000>>,Scale<TwistAngle<>,Int<-25>,Int<-80>>,Pulsing<Mix<Sin<Int<4>>,RotateColorsX<Variation,Cyan>,RotateColorsX<Variation,Rgb<50,130,255>>>,RotateColorsX<Variation,Rgb<0,12,14>>,4000>,Mix<Sin<Int<2>>,RotateColorsX<Variation,Rgb<50,130,255>>,Black>>,RotateColorsX<Variation,Rgb<0,39,40>>,Pulsing<RotateColorsX<Variation,Rgb<0,26,40>>,StripesX<Sin<Int<2>,Int<2000>,Int<4000>>,Sin<Int<2>,Int<-25>,Int<-75>>,Mix<Sin<Int<4>>,RotateColorsX<Variation,Cyan>,RotateColorsX<Variation,Rgb16<1899,49276,65535>>>,RotateColorsX<Variation,Rgb<0,30,96>>>,2000>,Pulsing<RotateColorsX<Variation,Rgb<0,40,128>>,RotateColorsX<Variation,Rgb<0,16,50>>,3000>>,Int<10000>>>,AlphaL<AudioFlickerL<AlphaL<Mix<Trigger<EFFECT_FORCE,Int<4000>,Int<3800>,Int<200>>,BrownNoiseFlicker<Black,RotateColorsX<Variation,Rgb16<33124,0,65535>>,100>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb16<43654,0,65535>>,RotateColorsX<Variation,Rgb16<9500,0,14386>>>,BrownNoiseFlicker<Mix<NoisySoundLevel,RotateColorsX<Variation,Rgb16<0,65535,52226>>,RotateColorsX<Int<4000>,RotateColorsX<Variation,DeepSkyBlue>>>,RotateColorsX<Variation,Rgb16<43654,0,65535>>,50>>,SmoothStep<Scale<NoisySoundLevel,Int<-10000>,Int<36000>>,Int<-4000>>>>,SwingSpeed<450>>,AlphaL<RotateColorsX<Variation,Rgb16<11366,0,65535>>,SmoothStep<Scale<SlowNoise<Int<2500>>,Int<1000>,Int<4000>>,Int<-4000>>>>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},



  { "Power", "tracks/Power.wav",
     &style_charging,
     &style_charging,},

};

BladeConfig blades[] = {
 { 0, WS281XBladePtr<128, bladePin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3> >(),
    WS281XBladePtr<30, blade2Pin, Color8::GRB, PowerPINS<bladePowerPin4, bladePowerPin5> >()
  , CONFIGARRAY(presets) },
};
#endif

#ifdef CONFIG_BUTTONS
Button PowerButton(BUTTON_POWER, powerButtonPin, "pow");
Button AuxButton(BUTTON_AUX, auxPin, "aux");
#endif

If any installers here have seen one of these sabers or the chassis (maybe a universal?) please do chime in :smile:

1 Like

I made a little config for you. This should light 10 pixels in the hilt on each side, and 118 pixels in the blade. It includes one style as an example. This could fix it, or get us closer.

I increased the blades to 3 in the top section, and added a subblade of 10 pixels in series with the blade so you now have control. I also decreased the pixel count to 10 on the independent strip in the chassis.

Then I added one more copy of the second style in the preset.

Finally, I made sure it compiled in proffie OS7.15 (I admit several typos and about 5 tries).

#ifdef CONFIG_TOP
#include "proffieboard_v3_config.h"
#define NUM_BLADES 3
#define NUM_BUTTONS 2
#define VOLUME 1500
const unsigned int maxLedsPerStrip = 144;
#define CLASH_THRESHOLD_G 3.0
#define ENABLE_AUDIO
#define ENABLE_MOTION
#define ENABLE_WS2811
#define ENABLE_SD
#define ENABLE_SERIAL
#define ORIENTATION ORIENTATION_USB_TOWARDS_BLADE

#define DISABLE_DIAGNOSTIC_COMMANDS
#define FETT263_MULTI_PHASE

#define FETT263_TWIST_ON_NO_BM 
#define FETT263_TWIST_ON 
#define FETT263_TWIST_OFF    

#define MOTION_TIMEOUT 60 * 3 * 1000  

#define FETT263_THRUST_ON
#define FETT263_THRUST_OFF
#define FETT263_DISABLE_COPY_PRESET
#define FETT263_DISABLE_CHANGE_FONT

// #define ENABLE_SSD1306
// // Max 20 characters
// #define BLE_PASSWORD "your password"
// // Max 32 characters.
// #define BLE_NAME "Your Saber Name"
// // Max 9 characters
// #define BLE_SHORTNAME "Saber"

#define MOTION_TIMEOUT 60 * 3 * 800               
#endif

#ifdef CONFIG_PROP
#include "../props/saber_fett263_buttons.h"

#endif


#ifdef CONFIG_PRESETS
Preset presets[] = { 

{ "Shadowfall", "tracks/Endor.wav",
StylePtr<InOutHelper<Blast<LocalizedClash<Lockup<TransitionEffect<TransitionEffect<TransitionEffect<TransitionEffect<TransitionEffect<TransitionEffect<TransitionEffect<Mix<SwingSpeed<300>,StyleFire<BrownNoiseFlicker<DeepSkyBlue,RandomPerLEDFlicker<Rgb<0,8,20>,Rgb<0,18,42>>,200>,Rgb<0,25,60>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>,Mix<SwingSpeed<500>,BrownNoiseFlicker<Blue,Rgb<0,80,0>,300>,StyleFire<BrownNoiseFlicker<Blue,RandomPerLEDFlicker<Rgb<0,25,0>,Rgb<0,60,0>>,200>,Rgb<0,80,0>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>>>,StyleFire<White,DeepSkyBlue,0,6>,TrInstant,TrSmoothFade<1600>,EFFECT_IGNITION>,Mix<Bump<Int<32768>,Int<16000>>,StyleFire<BrownNoiseFlicker<DeepSkyBlue,RandomPerLEDFlicker<Rgb<0,8,20>,Rgb<0,18,42>>,200>,Rgb<0,25,60>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>,RandomPerLEDFlicker<OrangeRed,White>>,TrConcat<TrWipeIn<600>,Mix<Bump<Int<32768>,Int<16000>>,StyleFire<BrownNoiseFlicker<DeepSkyBlue,RandomPerLEDFlicker<Rgb<0,8,20>,Rgb<0,18,42>>,200>,Rgb<0,25,60>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>,RandomPerLEDFlicker<Orange,White>>,TrWipe<600>>,TrInstant,EFFECT_STAB>,White,TrInstant,TrSmoothFade<200>,EFFECT_LOCKUP_BEGIN>,StyleFire<DeepSkyBlue,White,0,6>,TrInstant,TrSmoothFade<500>,EFFECT_LOCKUP_END>,Mix<Bump<Int<32768>,Int<10000>>,StyleFire<BrownNoiseFlicker<DeepSkyBlue,RandomPerLEDFlicker<Rgb<0,8,20>,Rgb<0,18,42>>,200>,Rgb<0,25,60>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>,White>,TrInstant,TrFade<200>,EFFECT_DRAG_BEGIN>,Mix<Bump<Int<32768>,Int<10000>>,StyleFire<BrownNoiseFlicker<DeepSkyBlue,RandomPerLEDFlicker<Rgb<0,8,20>,Rgb<0,18,42>>,200>,Rgb<0,25,60>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>,White>,TrInstant,TrFade<300>,EFFECT_DRAG_END>,Black,TrConcat<TrInstant,HumpFlicker<White,DeepSkyBlue,40>,TrColorCycle<600>>,TrInstant,EFFECT_RETRACTION>,Pulsing<Gradient<DeepSkyBlue,BrownNoiseFlicker<White,Strobe<Blue,White,50,1>,100>>,Gradient<BrownNoiseFlicker<White,Strobe<Blue,White,50,1>,100>,DeepSkyBlue>,3500>,RandomPerLEDFlicker<DeepSkyBlue,White>,Bump<Int<16000>,Int<20000>>,Bump<Int<32768>,Int<10000>>>,White>,White>,300,500,Black>>(),
StylePtr<Layers<Mix<SwingSpeed<300>,StyleFire<BrownNoiseFlicker<DeepSkyBlue,RandomPerLEDFlicker<Rgb<0,8,20>,Rgb<0,18,42>>,200>,Rgb<0,25,60>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>,Mix<SwingSpeed<500>,BrownNoiseFlicker<Blue,Rgb<0,80,0>,300>,StyleFire<BrownNoiseFlicker<Blue,RandomPerLEDFlicker<Rgb<0,25,0>,Rgb<0,60,0>>,200>,Rgb<0,80,0>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>>>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
StylePtr<Layers<Mix<SwingSpeed<300>,StyleFire<BrownNoiseFlicker<DeepSkyBlue,RandomPerLEDFlicker<Rgb<0,8,20>,Rgb<0,18,42>>,200>,Rgb<0,25,60>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>,Mix<SwingSpeed<500>,BrownNoiseFlicker<Blue,Rgb<0,80,0>,300>,StyleFire<BrownNoiseFlicker<Blue,RandomPerLEDFlicker<Rgb<0,25,0>,Rgb<0,60,0>>,200>,Rgb<0,80,0>,0,6,FireConfig<10,1000,2>,FireConfig<4000,0,0>,FireConfig<2,1000,5>,FireConfig<100,0,5>>>>,InOutHelperL<InOutFuncX<Int<300>,Int<800>>>>>(),
},


};


BladeConfig blades[] = {
  { 0,
    SubBlade(10, 127, WS281XBladePtr<128, bladePin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3>>()), 
    SubBlade(0, 9, NULL),
    WS281XBladePtr<10, blade2Pin, Color8::GRB, PowerPINS<bladePowerPin4, bladePowerPin5>>(), 
    CONFIGARRAY(presets),
  }
};
#endif

#ifdef CONFIG_BUTTONS
Button PowerButton(BUTTON_POWER, powerButtonPin, "pow");
Button AuxButton(BUTTON_AUX, auxPin, "aux");
#endif
1 Like

Okay so I was using OS7.14, but just updated it (I was putting it off for too long)

10 LEDs on each Strip & after going through each of them, I was noticing something I didn’t notice before, the LED Strip would react to the clashes, blasts, & LBs but only when they were close to the BASE of the blade.
That meant the LED Strip linked to the blade was only emulating the base of the blade & not the upper parts!!!

I wasn’t able to link up some LED Strip codes to the Strip linked to the blade because I was trying to fit the whole blade on those 10 LEDs.

The ones I was having trouble the most with were the codes where it had a separate effect or color for the bottom part of the blade. So what I did instead of making the light 10 pixels was making it 128 pixels so it would naturally only show those few lower pixels that the LED Strip connected to the blade was showing!

This meant I had to double up on the code but that seemed to fix the problem. Still takes up a little less than 60%
I feel like I’m doing this in a way too complex manner, & if you have less complicated way to go about doing this please let me know!

Or if maybe there was possibly a way to get control of the LED Strip that’s connected to my blade & code that too…

And of course thanks so much! I wouldn’t have been able to figure this out if you didn’t tell me what to go looking for. (and I probably would’ve never updated my OS!)

1 Like

Always update your OS to latest stable version. :wink:

If you don’t know how many pixels your blade has, you can temporarily use this:

2 Likes

Yeah I knew the number of LEDs it had which was just 10. The problem was so simple & right in my face too, but I didn’t realize it. It was emulating the blade that was 128 pixels & it was only 10 LEDs, so of course it would be showing only the bottom 10 pixels!

Well fixed the problem but probably not in the neatest way possible. Like I cut myself hand with a knife & wrapped it with an entire role of gauze…

Well, if it’s a bit cut, lot’s of gauze will be needed. :stuck_out_tongue_winking_eye: