NameID (TODO: hex values)ValueDescriptionNotes
Info text alphatexta0-1Controls the transparency of the “BLUE = LEFT”, “RED = RIGHT” text
Image positionimgx?, imgy?PixelsControls the position of each overlay image, where ? is the image number from 1-7Image list: sp_ram_car1 , sp_ram_car2 , sp_ram_car3 , sp_ram_car4 , sp_ram_cat , sp_ram_presidential , sp_ram_presidential
Image scaleimgzm?, imgzmb?, imgzmx?/imgzmy?Scale factorControls the scale of each image, where ? is the image number. imgzm and imgzmb are added to the x or y value.
Image rotationimgrz?Angle in degreesControls the rotation of each image, where ? is the image number.
Image alphaimga?0-1Controls the transparency of each image, where ? is the image number.
Plane alphaplanea0-1Controls the transparency of the plane thing.The actual video only plays at beat 152, no matter what the alpha is set to. If you set the alpha to 1 before this, you’ll only see the first frame until beat 152.
Fisheye VFXfish0-1Controls the strength of the fisheye effect.This gets crazy if you set it to high values. Like super crazy.
Vignettevig0-5Controls the strength of the vignette effect.If you set this above 5 it starts getting weird and inverting the colours.
Glitch strengthglitchamp0-1Controls the strength of the glitch effect.
Glitch offsetglitchoffset?I can’t notice any changes based on this. For reference, it’s used to set the shader uniform stime.
Bloom VFXbloom0-1Controls the strength of the bloom effect.
Greyscale VFXgray0-1Controls the strength of the greyscale effect.If you push this above 1 the colours get real fucked. Setting it to 10 makes the lanes red and green which may be peak for christmas themed charts.
HUD positionposx/posy0-0.9Moves the HUD around on the screen, wrapping around the edges.When this hits 1 it just wraps and appears like nothing changed.
Sine transformationsina/sinp/sinoSee notesTransforms the UI in the Y axis according to a sine wave. a = amplitude, p = period, o = offset.Setting the p value to 0 will stop anything showing on screen, the closer it gets to 0 the smaller the waves are.. The o value should be from 0-1.
Cosine transformationcosa/cosp/cosoThe same as above, but in the X axis.
Tangent transformationtana/tanp/tanoThe same as above, but I don’t even know how to describe this in words. Just put tan(x) into a graphing calculator and it looks kinda like that.
Twist effecttwx?, twy?, twa?, twr?? refers to the twist object number, from 1-4. x/y = position, a = amplitude, r = rotation?.I need to research this more, it’s all in the shader.
TV static VFXstatic0-1Controls the transparency of the TV static overlay.This didn’t do anything in my testing, not sure why.
Cover 1 (UI hide)cover10-1Controls whether the HUD (scoring and stuff) is hidden. (Inverse UI alpha)This is actually used to set the value of the uialpha modifier, so that one doesn’t work on this chart.
Cover 2cover20-1Controls the transparency of the sp_cover2 sprite. TODO: check what this actually is.
Cover 3cover30-1Controls the transparency of the sp_cover3 sprite. TODO: check what this actually is.
Spin radiusspinradiusx/spinradiusz?This is used by the wiggle and flicker per-frames. Look at those for more info.spinradiusz isn’t actually used anywhere in this, only the x one is.
???fakezy/fakezyb?These seem to be unused in this one.
Floatfloat?This is used by the wiggle per-frame. Look at that for more info.
Wigglywiggly?Also as above.
Rotation dirrotdir0-360 degreesAs far as I can tell this is for rotating the screen but it relies on proxy objects and I’m too tired to get it working right now.

Per-frames

This section is incomplete because I’m extremely tired writing this; I’ll find out more and update it soon™

quake

Seeds the RNG based on the current frame number, then sets the prxd modifier of the first 8 proxies based on a random number and the prvib modifier.

wiggle

Uses the spinradiusx, float and wiggly modifiers as in the table above. Sets the prxc, prrx, prry and prrzb fields of the first 4 proxies based on these.

flicker

Uses the spinradiusx modifier as in the table above. Sets the prxc field of the first 4 proxies to the spin radius multiplied by a global variable. This global variable starts at 1, and is negated every frame.