cutscenes do not work like the rest of the game - this is because the cutscenes were written in a plug n play manner to function with all game modules with minimal effort
all cutscenes are defined in order (guaranteed to be 0, 1, 2, 3, 4, etc) and you must manually instantiate them
you instantiate the cutscene with

r_new_cutscene actions[e] post[e]

actions define how the cutscene plays out, and post is executed after the cutscene has been played or has been skipped.
Therefor it's a good idea to update the world to match what happens inside the cutscene

cutscenes also allow the player to follow AI commands/directives
for more detailed information on each directive, see the wiki
note that the accel variants are identical to the non-accel variants but are done over a sine gradiant rather than a linear gradiant

=cutscenes actions=
r_cutscene_delay delay[i] actions[e]
r_cutscene_cond test[e] actions[e]
r_cutscene_loop test[e] iterations[i] step[i] actions[e]
r_cutscene_signal signal[s] actions[e]
r_cutscene_subtitle text[s] red[f] green[f] blue[f] duration[i] actions[e]
r_cutscene_movecamera tag[i] duration[i] actions[e]
r_cutscene_movespecific X[f] Y[f] Z[f] duration[i] actions[e]
r_cutscene_moveaccelcamera tag[i] duration[i] actions[e]
r_cutscene_moveaccelspecific X[f] Y[f] Z[f] duration[i] actions[e]
r_cutscene_viewcamera tag[i] duration[i] actions[e]
r_cutscene_viewspecific yaw[f] pitch[f] roll[f] duration[i] actions[e]
r_cutscene_viewaccelcamera tag[i] duration[i] actions[e]
r_cutscene_viewaccelspecific yaw[f] pitch[f] roll[f] duration[i] actions[e]
r_cutscene_viewspin yaw[f] pitch[f] roll[f] duration[i] actions[e]
r_cutscene_sound index[i] duration[i] actions[e]
r_cutscene_soundfile path[s] duration[i] actions[e]
r_cutscene_overlay path[s] red[f] green[f] blue[f] alpha[f] fade[i] duration[i] actions[e]
r_cutscene_solid modulate[i] red[f] green[f] blue[f] alpha[f] fade[i] duration[i] actions[e]
r_cutscene_viewport ent[r] height[f] tail[f] duration[i] actions[e]
r_cutscene_focus ent[r] interpolation[f] lead[f] duration[i] actions[e]

=AI directives=
r_action_clear ent[r]
r_action_attack ent[r] victim[r] priority[i]
r_action_move ent[r] location[i] priority[i]
r_action_wander ent[s] location[i] radius]i] priority[i]