Can't get old style multiphase to work

I set up two colours to change between, and added the multphase define, but I cannot get the PWR+twist to do anything but turn off my blade. I feel like I missed something. Here’s the code I used:

/* copyright Fett263 CustomBlade (Primary Blade) OS7 Style
https://fett263.com/fett263-proffieOS7-style-library.html#CustomBlade
OS7.12 v1.017-p
Single Style
Multi Phase (Original - Color Change)
Default: Hyper Responsive Rotoscope (Original Trilogy) [BaseColorArg]
1: Hyper Responsive Rotoscope (Original Trilogy) [AltColorArg]

Multi Phase Control: use Color Change with COLOR_CHANGE_DIRECT define (to enable click-to-change).

--Effects Included--
Ignition Effect: Standard Ignition [Color: IgnitionColorArg]
Retraction Effect: Standard Retraction [Color: RetractionColorArg]
Lockup Effect: Intensity Lockup V1, Begin Effect: Real Clash, End Effect: Full Blade Absorb [Color: LockupColorArg]
LightningBlock Effect: Responsive Lightning Block [Color: LBColorArg]
Drag Effect: Intensity Sparking Drag [Color: DragColorArg]
Melt Effect: Intensity Melt [Color: StabColorArg]
Stab Effect: Normal Stab [Color: StabColorArg]
Blast Effect: Blast Wave (Random) [Color: BlastColorArg]
Clash Effect: Real Clash V1 [Color: ClashColorArg]
Swing Effect: Bright Swing (Scaled Full Blade) [Color: SwingColorArg]
Battery Monitor: Passive Battery Monitor (Change Preset)
*/
StylePtr<Layers<Black,ColorChange<TrSelect<Ifon<Int<1>,Int<0>>,TrInstant,TrFadeX<Int<1000>>>,Mix<HoldPeakF<SwingSpeed<250>,Scale<SwingAcceleration<100>,Int<50>,Int<500>>,Scale<SwingAcceleration<>,Int<20000>,Int<10000>>>,RandomFlicker<StripesX<Int<15000>,Scale<HoldPeakF<SwingSpeed<200>,Scale<SwingAcceleration<100>,Int<50>,Int<300>>,Scale<SwingAcceleration<100>,Int<24000>,Int<16000>>>,Int<-3200>,Int<-200>>,RgbArg<BASE_COLOR_ARG,Rgb<180,130,0>>,RgbArg<BASE_COLOR_ARG,Rgb<180,130,0>>,Mix<Int<7710>,Black,RgbArg<BASE_COLOR_ARG,Rgb<180,130,0>>>,RgbArg<BASE_COLOR_ARG,Rgb<180,130,0>>,Mix<Int<19276>,Black,RgbArg<BASE_COLOR_ARG,Rgb<180,130,0>>>>,RgbArg<BASE_COLOR_ARG,Rgb<180,130,0>>>,RgbArg<BASE_COLOR_ARG,Rgb<180,130,0>>>,Mix<HoldPeakF<SwingSpeed<250>,Scale<SwingAcceleration<100>,Int<50>,Int<500>>,Scale<SwingAcceleration<>,Int<20000>,Int<10000>>>,RandomFlicker<StripesX<Int<15000>,Scale<HoldPeakF<SwingSpeed<200>,Scale<SwingAcceleration<100>,Int<50>,Int<300>>,Scale<SwingAcceleration<100>,Int<24000>,Int<16000>>>,Int<-3200>,Int<-200>>,RgbArg<ALT_COLOR_ARG,Rgb<255,68,0>>,RgbArg<ALT_COLOR_ARG,Rgb<255,68,0>>,Mix<Int<7710>,Black,RgbArg<ALT_COLOR_ARG,Rgb<255,68,0>>>,RgbArg<ALT_COLOR_ARG,Rgb<255,68,0>>,Mix<Int<19276>,Black,RgbArg<ALT_COLOR_ARG,Rgb<255,68,0>>>>,RgbArg<ALT_COLOR_ARG,Rgb<255,68,0>>>,RgbArg<ALT_COLOR_ARG,Rgb<255,68,0>>>>,AlphaL<RgbArg<SWING_COLOR_ARG,Rgb<191,255,255>>,Scale<IsLessThan<SwingSpeed<600>,Int<13600>>,Scale<SwingSpeed<600>,Int<-19300>,Int<32768>>,Int<0>>>,TransitionEffectL<TrConcat<TrJoin<TrDelayX<WavLen<>>,TrWipeIn<200>>,AlphaL<RgbArg<STAB_COLOR_ARG,Rgb<255,68,0>>,SmoothStep<IntArg<MELT_SIZE_ARG,28000>,Int<2000>>>,TrWipe<200>>,EFFECT_STAB>,TransitionEffectL<TrWaveX<RgbArg<BLAST_COLOR_ARG,Rgb<255,255,255>>,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,Rgb<255,255,255>>,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,Rgb<255,255,255>>,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<TransitionEffect<AlphaMixL<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>>>,BrownNoiseFlickerL<RgbArg<LOCKUP_COLOR_ARG,Rgb<255,255,255>>,Int<200>>,StripesX<Int<1800>,Scale<NoisySoundLevel,Int<-3500>,Int<-5000>>,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>>>>>,AlphaL<AudioFlicker<RgbArg<LOCKUP_COLOR_ARG,Rgb<255,255,255>>,Mix<Int<10280>,Black,RgbArg<LOCKUP_COLOR_ARG,Rgb<255,255,255>>>>,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>>>,Int<13000>>>,TrJoin<TrDelay<8000>,TrInstant>,TrFade<3000>,EFFECT_LOCKUP_BEGIN>,TrConcat<TrJoin<TrDelay<50>,TrInstant>,Mix<IsLessThan<ClashImpactF<>,Int<26000>>,RgbArg<LOCKUP_COLOR_ARG,Rgb<255,255,255>>,AlphaL<RgbArg<LOCKUP_COLOR_ARG,Rgb<255,255,255>>,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<20000>,Int<60000>>>>>,TrFade<300>>,TrConcat<TrInstant,RgbArg<LOCKUP_COLOR_ARG,Rgb<255,255,255>>,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<RgbArg<LB_COLOR_ARG,Rgb<255,255,255>>,AudioFlicker<RgbArg<LB_COLOR_ARG,Rgb<255,255,255>>,Blue>,50,1>,TrConcat<TrInstant,AlphaL<RgbArg<LB_COLOR_ARG,Rgb<255,255,255>>,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<RgbArg<LB_COLOR_ARG,Rgb<255,255,255>>,Int<16000>>,30>,TrSmoothFade<600>>>,LockupTrL<AlphaL<RandomPerLEDFlickerL<RgbArg<DRAG_COLOR_ARG,Rgb<255,255,255>>>,SmoothStep<IntArg<DRAG_SIZE_ARG,28000>,Int<3000>>>,TrConcat<TrJoin<TrDelay<4000>,TrWipeIn<200>>,AlphaL<BrownNoiseFlickerL<RgbArg<DRAG_COLOR_ARG,Rgb<255,255,255>>,Int<300>>,SmoothStep<IntArg<DRAG_SIZE_ARG,28000>,Int<3000>>>,TrFade<4000>>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<Remap<Scale<RampF,Int<65536>,Int<0>>,StaticFire<Mix<TwistAngle<>,RgbArg<STAB_COLOR_ARG,Rgb<255,68,0>>,RotateColorsX<Int<3000>,RgbArg<STAB_COLOR_ARG,Rgb<255,68,0>>>>,Mix<TwistAngle<>,RotateColorsX<Int<3000>,RgbArg<STAB_COLOR_ARG,Rgb<255,68,0>>>,RotateColorsX<Int<3000>,Mix<Int<12000>,Black,RgbArg<STAB_COLOR_ARG,Rgb<255,68,0>>>>>,0,3,5,3000,10>>,SmoothStep<IntArg<MELT_SIZE_ARG,28000>,Int<4000>>>,TrConcat<TrWipeIn<100>,AlphaL<RgbArg<STAB_COLOR_ARG,Rgb<255,68,0>>,SmoothStep<IntArg<MELT_SIZE_ARG,28000>,Int<4000>>>,TrJoin<TrDelay<4000>,TrFade<300>>,AlphaL<Mix<TwistAngle<>,RgbArg<STAB_COLOR_ARG,Rgb<255,68,0>>,RotateColorsX<Int<3000>,RgbArg<STAB_COLOR_ARG,Rgb<255,68,0>>>>,SmoothStep<IntArg<MELT_SIZE_ARG,28000>,Int<4000>>>,TrFade<4000>>,TrWipe<200>,SaberBase::LOCKUP_MELT>,InOutTrL<TrWipeX<BendTimePowInvX<IgnitionTime<200>,Mult<IntArg<IGNITION_OPTION2_ARG,10992>,Int<98304>>>>,TrWipeInX<BendTimePowInvX<RetractionTime<0>,Mult<IntArg<RETRACTION_OPTION2_ARG,10992>,Int<98304>>>>,Black>,TransitionEffectL<TrConcat<TrJoin<TrDelay<2000>,TrInstant>,AlphaL<Mix<BatteryLevel,Red,Green>,SmoothStep<IntArg<EMITTER_SIZE_ARG,2000>,Int<-4000>>>,TrFade<300>>,EFFECT_NEWFONT>>>(),

The style tells you how to do it :wink:

If you mean the “live” preset change method, that is controlled via define in my prop.

#define FETT263_MULTI_PHASE

However, this define will not allow Special Abilities so you’ll lose access to many of the new OS7 features. The old multi-phase has been replaced by Alt Fonts. We used to have to change presets for different sounds, that is no longer the case with Alt Fonts, so the need for this define was significantly reduced as Alt Font and Special Abilities can do this better and allows more additional features.

Info on defines available here:

OK, so what if i just want one font, but to toggle two colours? Do I still need an alt font folder?

Depends what you want, color only the style you posted is right but refer to the controls needed.

If you want to use Special Abilities control then you need alt font set up on at least one sound, you could just do the boot.wav or font.wav and it would count.

Yeah, I was trying to use the controls in your prop as per your website, but “hold PWR + twist” only turned the blade off (I have twist to activate). I had the define mentioned, but also had the special abilities one as well. Would that cause a conflict?

Now, I’ve tried special abilities multi phase and I keep getting ‘error in font directory’. I have the same folders/files as per the Survivor Party Mode font (in folder alt000). Only difference is I have all the file groups in their own sub folders, like the hum etc. Would that cause issues?

The FETT263_MULTI_PHASE define and FETT263_SPECIAL_ABILITIES define can’t be used together.

For alt font all altNNN folders need to have same sounds and number of sounds or you’ll get an ‘Error in Font Directory’.

The video at the top of the library goes through it.

You can remove DISABLE_DIAGNOSTIC_COMMANDS define, upload, then go into Tools >Serial Monitor and type ‘effects’ and it will tell you what is causing the error message.

Just to confirm, the “twist + PWR/AUX” for old multiphase is the same twist as for igniting/retracting?

No, see the define and controls for the Prop. “Multi-Phase” Control uses FETT263_MULTI_PHASE define to give you a control to change presets while ON. This is old method.

“Multi-Phase” styles in OS7 library have multiple ways to trigger and run in a single preset so the controls are listed in the information section of the style code. To use Multi-Phase styles just refer to the control to change the phase based on the option you selected.

Thank you. Yeah, I get that. I’ve implemented multiphase with special abilities and with swing change using the Kyberphonic party mode. It’s just that I can’t work out why I’m getting this ‘error in font directory’ with the font and alt font folders this this specific bladestyle, so I thought if I can implement the old way, then it would be simpler.

This is what I get with the effects command. For reference, the folder that is causing issues is called ‘balance’, with a subfolder ‘alt000’ inside, containing all the swing folders, clsh folder, in/out folders, hum.wav, :

16:09:12.726 -> Found mnum files: 1-20 in subdirs in common
16:09:12.726 -> Found medit files: one unnumbered file in common
16:09:12.726 -> Found vmend files: one unnumbered file in common
16:09:12.726 -> Found vmbegin files: one unnumbered file in common
16:09:12.726 -> Found color files: one unnumbered file in holocron
16:09:12.726 -> Found drag files: one unnumbered file in subdirs in holocron
16:09:12.726 -> Found swingh files: 1-1 using 2 digits in subdirs in holocron
16:09:12.726 -> Found swingl files: 1-1 using 2 digits in subdirs in holocron
16:09:12.726 -> Found swng files: 1-1 using 2 digits in subdirs in holocron
16:09:12.726 -> Found lock files: 1-5 using 2 digits in subdirs in holocron
16:09:12.726 -> Found out files: 1-2 using 2 digits in subdirs in holocron
16:09:12.726 -> Found in files: 1-1 using 2 digits in subdirs in holocron
16:09:12.726 -> Found clsh files: 1-1 using 2 digits in subdirs in holocron
16:09:12.726 -> Found blst files: 1-36 using 2 digits in subdirs in holocron
16:09:12.726 -> Found font files: one unnumbered file in subdirs in holocron
16:09:12.726 -> Found stab files: 1-1 in subdirs in holocron
16:09:12.726 -> Found force files: 1-2 using 2 digits in subdirs in holocron
16:09:12.726 -> Found pwroff files: 2-2 in holocron
16:09:12.726 -> Found hum files: 1-1 using 2 digits in subdirs in holocron
16:09:12.726 -> Found boot files: 1-1 in subdirs in holocron
16:09:12.726 -> Found pstoff files: 1-3 in subdirs in holocron
16:09:12.726 -> Found preon files: 1-4 in subdirs in holocron
16:09:12.726 -> Done listing effects.

Does it make a difference if the filenames have a leading zero? ie in01.wav etc?

You have to run ‘effects’ in the preset giving you trouble. It will tell you which file(s) are causing error. I don’t see any errors in the above.

Ooooh. Right. So this is what I get in the font directory:

16:51:24.125 -> Found mnum files: 1-20 in subdirs in common
16:51:24.125 -> Found medit files: one unnumbered file in common
16:51:24.125 -> Found push files: one unnumbered file in common2
16:51:24.125 -> Found vmend files: one unnumbered file in common
16:51:24.125 -> Found vmbegin files: one unnumbered file in common
16:51:24.125 -> Found bmend files: 2-2 in common2
16:51:24.125 -> Found bmbegin files: 2-2 in common2
16:51:24.125 -> Found battery files: one unnumbered file in common2
16:51:24.125 -> Found dim files: 1-1 in common2
16:51:24.125 -> Found lowbatt files: one unnumbered file in subdirs in common2
16:51:24.125 -> Found ccchange files: one unnumbered file in common2
16:51:24.125 -> Found ccend files: one unnumbered file in common2
16:51:24.125 -> Found ccbegin files: one unnumbered file in common2
16:51:24.125 -> Found endlb files: 1-3 in subdirs in common2
16:51:24.125 -> Found lb files: one unnumbered file in subdirs in common2
16:51:24.125 -> Found bgnlb files: 1-3 in subdirs in common2
16:51:24.125 -> Found endmelt files: one unnumbered file in subdirs in common2
16:51:24.125 -> Found melt files: one unnumbered file in subdirs in common2
16:51:24.125 -> Found bgnmelt files: one unnumbered file in subdirs in common2
16:51:24.125 -> Found enddrag files: 1-4 in subdirs in balance
16:51:24.125 -> Found drag files: one unnumbered file in subdirs in balance
16:51:24.125 -> Found bgndrag files: 1-4 in subdirs in balance
16:51:24.125 -> Found swingh files: 1-4 in subdirs SOME FILES ARE MISSING! 4 != 8 in balance
16:51:24.125 -> Found swingl files: 1-4 in subdirs SOME FILES ARE MISSING! 4 != 8 in balance
16:51:24.125 -> Found swng files: 1-16 in subdirs SOME FILES ARE MISSING! 16 != 32 in balance
16:51:24.125 -> Found lock files: 1-1 in subdirs in balance
16:51:24.125 -> Found out files: 1-8 in subdirs SOME FILES ARE MISSING! 8 != 16 in balance
16:51:24.125 -> Found in files: 1-2 in subdirs SOME FILES ARE MISSING! 2 != 4 in balance
16:51:24.125 -> Found clsh files: 1-16 in subdirs SOME FILES ARE MISSING! 16 != 32 in balance
16:51:24.125 -> Found blst files: 1-8 in subdirs in balance
16:51:24.125 -> Found endlock files: 1-4 in subdirs in balance
16:51:24.125 -> Found bgnlock files: 1-4 in subdirs in balance
16:51:24.125 -> Found font files: one unnumbered file in balance
16:51:24.125 -> Found stab files: 1-8 using 2 digits in subdirs in common2
16:51:24.125 -> Found force files: 1-4 in subdirs in balance
16:51:24.125 -> Found hum files: one unnumbered file SOME FILES ARE MISSING! 1 != 2 in balance
16:51:24.125 -> Found boot files: one unnumbered file in balance
16:51:24.125 -> Done listing effects.
16:51:25.382 -> Booster off.
16:51:38.799 -> Battery voltage: 3.84
16:51:58.775 -> Battery voltage: 3.84
16:52:18.784 -> Battery voltage: 3.84
16:52:38.788 -> Battery voltage: 3.84
16:52:58.798 -> Battery voltage: 3.84

So you need to fix all of FILES ARE MISSING.

what does that mean though? I have the files that came with the KSith font. Should there be more than four swingl files, for example?

Right, I have it down to now only being a single issue. The problem bounces between either

Found boot files: 1-1 SOME FILES ARE MISSING! 1 != 2 in balance

Or

Found font files: 1-1 SOME FILES ARE MISSING! 1 != 2 in balance

But I don’t know why? I tried just having one or the other in the alt folder when this happens.

UPDATE:

Apparently I need alt000 and alt001 folders. now, adding a font1.wav to each of those throws up the same error, but with a higher number.

17:45:27.214 -> Found font files: 1-1 SOME FILES ARE MISSING! 2 != 3 in balance

I have the font1.wav file in:

/balance/
/balance/alt000/
/balance/alt001/

UPDATE:

Tried removing the font1.wav from root. I finally figured out you need to just have the files in the alt font. I presumed it would work by looking for the first in the sequence in the root, then the alt font folders for other phases.

Sorry for wasting your time.

Glad to hear, just for future reference I specifically cover altNNN set up in the video at the top of the library, I highly recommend watching those videos as they explain a lot about the new features and how to set up :wink:

Yeah man. I did go through them when I first got party mode working but it’s a lot to take in!

Ok, I tried to simplify as much as possible and went through setting up altNNN in detail.

Essentially you just need to move any sounds you want to change with alt into the altNNN folders and make sure that you have copies in each alt folder with 1-to-1 match of filenames.