right = normalize(cross(forward, up))

up x,y,z = 0,1,0

forward x,y,z = view:x,y,z

cross product:

right.x = up.y * forward.z - up.z * forward.y;

right.y = up.z * forward.x - up.x * forward.z;

right.z = up.x * forward.y - up.y * forward.x;

normalize:

magnitude = sqrt(right.x * right.x + right.y * right.y + right.z * right.z);

right.x /= magnitude;

right.y /= magnitude;

right.z /= magnitude;

right is now your vector

Script: CrossProduct

var [x1] [y1] [z1] [x2] [y2] [z2]

var [x] = [y2] * [z1]

var [x] = [x] - [z2] * [y1]

var [y] = [z2] * [x1]

var [y] = [y] - [x2] * [z1]

var [z] = [x2] * [y1]

var [z] = [z] - [y2] * [x1]

Script: Normalize

var [x] [y] [z]

//var [mag] = [x] * [x]

//var [mag] = [mag] + [y] * [y]

//var [mag] = [mag] + [z] * [z]

//var [mag] = [sqrt:mag] // 2.5 only

var [mag] = [distance:[0,0,0][x,y,z]]

var [x] = [x] / [mag]

var [y] = [y] / [mag]

var [z] = [z] / [mag]

Script: GetRightVector

var [x1] [y1] [z1] // forward vector

var [x2] = [0] // up vector

var [y2] = [1] // up vector

var [z2] = [0] // up vector

var [x] [y] [z] // right vector (result)

script [CrossProduct] [vars:x1,y1,z1,x2,y2,z2] [out:x,y,z]

script [Normalize] [out:x,y,z]

Script: Dryym

var [x1] = [view:x] // forward

var [y1] = [view:y] // forward

var [z1] = [view:z] // forward

var [x] [y] [z] // right

script [GetRightVector] [vars:x1,y1,z1] [out:x,y,z]

// x,y,z are now your right vector

I just typed it in, it isn't tested, so it probably has errors, I'll check it tmrw morning, it's too late now.