Note control

Note: unless explicitly mentioned, all of these keep notes’ visual and scoring positions in sync.

NameID (hex)Value hintsDescriptionNotes
Note rotationnoterot (0x18)0-360Controls the angle of notes on the playfield.This does not apply to hold notes.
Draw distancedrawdist (0x3C)Up to the screen height in pixels(?)Controls how far up the playfield notes will appear.This only applies to newly spawned notes; any already on the screen won’t be affected.
Note freezefreeze (0x48)0/1Freezes the visuals for all notes in place. The notes will continue to move and score, but just won’t be visible.When notes move off the screen, they will disappear due to the objects being destroyed.
Note scroll speedscrollspeed (0x17)Multiplied with the base speedControls the speed notes move down the playfield.
Note velocityvelocity (0x19)In my testing this acts the same as scroll speed. There may be differing behaviour I’m not aware of.
Wave movementwave (0x1F)Noticeable around >=10Applies a sine wave effect to notes’ motion in the Y axis.
Judgement positiondriven (0x1D)In my testing, it goes off the screen >1.6This controls the position of the line where notes get scored.Particle effects still appear at the normal position when notes are hit/missed.
Note Y offsetyoffset (0x23)PixelsThis offsets the visual Y position of all notes. The scoring position is not affected.
Beat jitterbeat (0x1E)It’s not really noticeable until 10; I think 50 gives a nice effect.This causes notes to jitter side to side on each beat of the song. The direction (left/right) alternates each beat.
Note alphanotealp (0x24)0-1Changes the transparency of notes.
Boost distanceboost_distance (0x21)UnclearUnclear
Boost timeboost_time (0x22)UnclearUnclear
Per-lane scroll speedscrollind0 (0x35), scrollind1 (0x36), scrollind2 (0x37), scrollind3 (0x38), scrollind4 (0x39), scrollind5 (0x3A), scrollind6 (0x3B)MultiplierThis functions the same as scrollspeed, but is indexed per-lane. The number at the end is the lane index, where 0-3 are the main lanes and 4-6 are the bumper lanes.

Particle control

ID (hex)Value hintsDescriptionNotes
pburstleft (0x3D), pburstright (0x3E)0-NSetting this to anything above 0 triggers N particle bursts on the corresponding side of the screen.The value is immediately set back to 0 after the particles have been spawned.
pburstspeed (0x47)MultiplierControls the movement speed of particles spawned by the above two modifiers.
particlexpower (0x3F), particleypower (0x40)Pixels per frameControls the movement of particles in the after being spawned. The value is added to the position of each particle each frame.

VFX

Note: These modifiers affect all game and UI elements, except the text that displays your timing and current combo.

NameID (hex)Value hintsDescription
Contrastfx_contrast (0x42)0-2Controls the colour intensity of the game. A value of 0 removes all colour, 1 is normal, and anything above 1 increases the colour intensity.
Chroma distortfx_chroma_distort (0x43)UnclearI can’t notice anything when changing this value, so I’m unsure as to its intended effect.
Filmfx_film (0x44)0/1Applies a shake and film grain effect. This has no intensity control, it’s just on or off.
Glowfx_glow (0x45)0-1Applies a glow/bloom effect to everything on screen.
Particle glowfx_particleglow (0x46)0-1This uses the same effect as fx_glow, but it only applies to the particles on screen.

UI control

NameID (hex)Value hintsDescription
UI Alphauialpha (0x41)0-1Controls the transparency of the UI elements not including lanes, scoring text or notes.
homhom (0x20)UnclearUnclear

Proxied modifiers

These all require an assigned proxy object to function!

Transformations

NameID (hex)Description
Xprx (0x01), prxb (0x02), prxc (0x03), prxd (0x26)X position offset. These values are all added together.
Ypry (0x04), pryb (0x05), pryc (0x06), pryd (0x27)Y position offset. These values are all added together.
Rotationprrz (0x0F), prrzb (0x10)Playfield angle in degrees. These values are added together.
Scale (both axes)przm (0x09), przmb (0x0A), przmc (0x25)Playfield scale. These values are multiplied together. prrx/prry are angles in degrees, and the cosine is taken of them before being multiplied.
Scale (X only)przx (0x0B), prrx (0x0D)As above
Scale (Y only)przy (0x0C), prry (0x0E)As above
Skewprsx (0x07)Playfield skew in the X axis.
Alphapra (0x08)Playfield transparency
Unclearprvib (0x2C)This is only implemented for “dual” and “ram”.

Clipping

GroupNameID (hex)Value hintsDescription
EdgesTop, Bottom, Left, Rightshct (0x2D), shcb (0x30), shcl (0x32), shcr (0x34)0-1UV coordinates to clip the view region to.
FalloffTop, Bottom, Left, Rightshft (0x2E), shfb (0x30), shfl (0x32), shfr (0x34)0-1Controls the fade out up to the clipping region

Wave effect

NameID (hex)Description
Speedshxs (0x11), shys (0x14)The speed of the wave effect.
Periodshxp (0x12), shyp (0x15)The period of the wave effect.
Amplitudeshxa (0x13), shya (0x16)The amplitude of the wave effect.

Unknown function

ID (hex)Notes
unknown (0x00)Presumably a fallback value.
spinradius (0x1A)This is only implemented in “00”, “ram” and “dual”, despite being a global modifier.
spinx (0x1C)This seems to be unused.
spiny (0x1B)This is only implemented in the gimmick object for “00”, despite being a global modifier.