I have $v := (sin(($v/10)-8)+1)/2
in the script below. But the sin(x)
function isn't working despite sin(x)
being in the KSP manual. In fact, none of the trigonometric functions appear to be working, at least in a note on
without some special activating code or something NOT described in the KSP manual.
on init
set_script_title("Humanize Timing & Velocity")
declare ui_knob $Timing (0,100,1)
set_knob_unit ($Timing, $KNOB_UNIT_PERCENT)
set_text ($Timing,"Note On")
$Timing := 0
make_persistent ($Timing)
move_control ($Timing,3,2)
declare $new_event
declare ui_knob $v (0,100,1)
set_knob_unit ($v, $KNOB_UNIT_PERCENT)
set_text ($v,"Velocity")
$v := 0
make_persistent ($v)
move_control ($v,4,2)
end on
on note
ignore_event($EVENT_ID)
wait(random(0, $Timing * 1000))
$new_event := play_note($EVENT_NOTE, $EVENT_VELOCITY, 0, -1)
if($EVENT_VELOCITY > 1)
$v := $EVENT_VELOCITY + (random(-$v,$v))
if ($v >= 96)
$v := (sin(($v/10)-8)+1)/2
end if
change_velo($new_event, $v)
end if
end on