Internal commands list - VVVVVV-CE internal commands Welcome, Guest. Please login or register.
You are looking at an archived version of this page that still has commands for VVVVVV: Community Edition.

VVVVVV-CE is no longer being worked on, supported, or maintained. For more information, see this page.

The vanilla VVVVVV commands on this page may also be out of date. You are probably looking for the current version of this page.
Color coding:
  • Normal - Should be safe, worst case scenario is VVVVVV crashing because you made a mistake.
  • Blue - Designed for the main game, might be not or less suitable for custom levels.
  • Orange - These work and nothing will go wrong normally, but when run in VVVVVV 2.2 or below with certain specific arguments, it's possible to cause loss of main game save data with this command.
  • Red - When run in VVVVVV 2.2 or below, will either unlock certain parts of the main game (which you shouldn't want a custom level to do, even if you say everyone has already completed the game), or corrupt the save data altogether. Do not use.
  • Pink - This command (or this variant of a command) only exists in VVVVVV: Community Edition, not in VVVVVV.

Show commands for: VVVVVV [VVVVVV-CE]

activateteleporter()
If there's a teleporter in the room, it will start flashing random colors and touching it won't destroy save data. Only targets the first-spawned teleporter.
activeteleporter()
Makes the teleporter in the room white, but touching it will still annihilate your save data. Only targets the first-spawned teleporter.
addvar(varname, value)
If the variable is a number, it will add the given value to the number. Otherwise, it will concatenate the given value to the string.
value - if not given, takes whatever is on the next line
alarmoff
Turns the alarm off
alarmon
Turns the alarm on
altstates(state)
Changes the layout of some rooms, like the trinket room in the ship before and after the explosion, and the secret lab entrance (custom levels don't support altstates at all)
VVVVVV-CE: Custom levels do support altstates, you should use this command to switch to an alt state.
analogue(on/off)
Toggles the Analogue Mode screen filter. analogue(off) will not apply if the user has Analogue Mode on in settings, and analogue(on) will not apply if the user has Screen Effects disabled in settings.
automapimage()
Revert the map back to the original state after using mapimage()
backgroundtext
If you put this command on the line above speak or speak_active, the game will not wait until you press action after creating the text box. This can be used to create multiple text boxes at the same time.
befadein()
Instantly fade in from fadeout()
befadeout()
Instantly make the screen black
blackon()
Back to normal from blackout()
blackout()
Make the screen black/freezes the screen
bluecontrol
Start a conversation with Victoria just like when you meet her in the main game and press ENTER. Also creates an activity zone afterwards.
changeai(crewmate, ai1, ai2)
Can change the face direction of a crewmate or the walking behaviour
crewmate - cyan/player/blue/red/yellow/green/purple
ai1 - followplayer/followpurple/followyellow/followred/followgreen/followblue/faceplayer/panic/faceleft/faceright/followposition,ai2
ai2 - required if followposition is used for ai1
VVVVVV-CE: followposition works on the player
changecolour(a, b)
Changes the color of a crewmate (note: this only works with crewmates who have been created using the createcrewman command)
a - Color of crewmate to change cyan/player/blue/red/yellow/green/purple
b - Color to change to
changecustommood(color, mood)
Changes the mood of a crewmate (works for rescuable crewmates)
color - cyan/player/blue/red/yellow/green/purple
mood - 0 for happy, 1 for sad
changedir(color, direction)
Just like changeai(color,faceleft/faceright), this changes face direction.
color - cyan/player/blue/red/yellow/green/purple
direction - 0 is left, 1 is right
changegravity(crewmate)
Increase the sprite number of the given crewmate by 12.
crewmate - Color of crewmate to change cyan/player/blue/red/yellow/green/purple
changemood(color, mood)
Changes the mood of the player or a crewmate created with createcrewman()
color - cyan/player/blue/red/yellow/green/purple
mood - 0 for happy, 1 for sad
changeplayercolour(color)
Changes the player's color
color - cyan/player/blue/red/yellow/green/purple/teleporter
changetile(color, tile)
Changes the tile of a crewmate (you can change it to any sprite in sprites.png, and it only works for crewmates created with createcrewman)
color - cyan/player/blue/red/yellow/green/purple/gray
tile - Tile number
clearteleportscript()
Clears the teleporter script set with teleportscript(x)
coincounter(show/hide)
Toggles showing the coin counter in the bottom-right. By default, the coin counter is shown if there are any coins present in the level
companion(x)
Makes the specified crewmate a companion (as far as I remember, this also depends on on the location on the map)
createactivityzone(color)
Creates an activity zone at the specified crewmate (or the player, if the crewmate doesn't exist) which says "Press ACTION to talk to (crewmate)"
createcrewman(x, y, color, mood, ai1, ai2)
createcrewman(x, y, color, mood, ai1, ai2, name/flip, name)
Creates a crewmate (not rescuable)
mood - 0 for happy, 1 for sad
ai1 - followplayer/followpurple/followyellow/followred/followgreen/followblue/faceplayer/panic/faceleft/faceright/followposition,ai2
ai2 - required if followposition is used for ai1
name/flip - Names the crewmate, but if you set this to 'flip' the crewmate will spawn flipped
name - Name the crewmate here if the previous argument is 'flip'
createdamage(x, y, w, h)
Creates a rectangle that will kill the player, equivalent to a spike hurtbox.
x - The x-position, in pixels
y - The y-position, in pixels
w - The width, in pixels
h - The height, in pixels
createentity(x, y, n, meta1, meta2)
createentity(x, y, n, meta1, meta2, enemytype)
Creates an entity, check the lists reference for entity numbers
n - The entity number
VVVVVV-CE: %return% will be set to the ID of the entity.
createlastrescued()
Creates the last rescued crewmate at hardcoded position 200,153. The last rescued crewmate is based on the Level Complete gamestate.
createrescuedcrew()
Creates all rescued crewmates
createroomtext(x, y)
Creates room text. The text will be taken from the next line.
x - The x-position, in pixels
y - The y-position, in pixels
createscriptbox(x, y, w, h, script)
Creates a script box.
x - The x-position, in pixels
y - The y-position, in pixels
w - The width, in pixels
h - The height, in pixels
csay(lines, crewmate)
Same as say(), but targets non-rescuable crewmates instead
csayquiet(lines, crewmate)
csay() and sayquiet() combined
customactivityzone(x, y, w, h, color, script)
Creates a custom activity zone. The prompt goes on the next line.
x - The x-position, in pixels
y - The y-position, in pixels
w - The width, in pixels
h - The height, in pixels
color - red/orange/yellow/green/cyan/blue/pink/purple (actually pink)/white/gray, can also be r,g,b which goes from 0-255
customifflag(n, script)
Same as ifflag(n,script) in simplified scripting
customiftrinkets(n, script)
Same as iftrinkets(n,script) in simplified scripting
customiftrinketsless(n, script)
Same as iftrinketsless(n,script) in simplified scripting
custommap(on/off)
The internal variant of the map command
customposition(type, above/below)
Overrides the x,y of the text command and thus sets the position of the text box, but for crewmates, rescuable crewmates are used to position against, instead of createcrewman crewmates.
type - center/centerx/centery, or a color name cyan/player/blue/red/yellow/green/purple (rescuable)
above/below - Only used if type is a color name
customquicksave()
Quicksaves the level.
cutscene()
Makes cutscene bars appear
cutscenefast()
Makes cutscene bars instantly appear
delay(n)
Same behavior as simplified command
delchar(var, n)
Remove n chars from the end of a given variable
destroy(object)
Removes an entity. This is the same as the simplified scripting command.
object - gravitylines/warptokens/platforms
VVVVVV-CE: You can also say...
- crewmates
- customcrewmates
- platformsreal (a fixed version of destroy(platforms))
- enemies
- trinkets
- warplines
- checkpoints
- all (destroys everything except the player)
- conveyors
- terminals
- scriptboxes
- disappearingplatforms (or 'quicksand')
- 1x1quicksand (or '1x1disappearingplatforms')
- coins
- gravitytokens (or 'fliptokens')
- roomtext
- teleporter
- activityzones
do(n)
Starts a loop block which will repeat n times. End the block with the loop command.
drawimage(x, y, filename, centered, alpha, background, blend)
Displays an image on the screen for one frame!
filename - The path to the image you want to display on screen, relative to your VVVVVV folder or your level folder
centered - If the image is centered on the screen or not
alpha - The alpha of the image
background - Whether the image is drawn behind tiles or in front of the player
blend - The blend mode of the image (none, blend, add or mod)
drawimagemasked(x, y, filename, mask_filename, mask_x, mask_y)
A version of drawimage() that can use the alpha from another image
filename - The path to the image you want to display on screen, relative to your VVVVVV folder or your level folder
mask_filename - The path to the mask, relative to your VVVVVV folder or your level folder
mask_x - optional
mask_y - optional
drawimagepersist(x, y, filename, centered, alpha, background, blend)
This is the same as drawimage, except the image stays on screen, and you have to remove it using removeimage(id). The id is saved to the variable %return% when you use this command
filename - The path to the image you want to display on screen, relative to your VVVVVV folder or your level folder
centered - If the image is centered on the screen or not
alpha - The alpha of the image
background - Whether the image is drawn behind tiles or in front of the player
blend - The blend mode of the image (none, blend, add or mod)
drawpixel(x, y, r, g, b)
Display a pixel on screen
drawrect(x, y, w, h, r, g, b, a)
Draws a rectangle for one frame. r,g,b,a are 0-255
x - The x-position, in pixels
y - The y-position, in pixels
w - The width, in pixels
h - The height, in pixels
a - optional
drawtext(x, y, r, g, b, center, type, size)
Displays text on the screen for one frame, the text you want to display should be on the next line
center - Whether the text is horizontally centered on the screen or not
type - 0 for normal text, 1 for bordered text and 2 for sized text
size - The size of the text, this is 2 by default
endcutscene()
Makes cutscene bars disappear
endcutscenefast()
Makes cutscene bars instantly disappear
endtext
Makes a text box disappear (fade out)
endtextfast
Makes a text box disappear immediately (without fading out)
endtrial()
Ends a time trial. This is the same thing as gamestate(82).
entersecretlab
Turns on Secret Lab mode.

2.2 AND BELOW: Actually unlocks the Secret Lab, which is probably an unwanted effect for a custom level to have.
everybodysad()
Makes everybody sad (only for crewmates created with createcrewman and the player)
face(a, b)
Makes the face of crewmate a point to crewmate b (only works with crewmates created with createcrewman)
a - cyan/player/blue/red/yellow/green/purple/gray
b - same
fadein()
Fades back
fadeout()
Fades the screen to black
fatal_bottom()
Makes the bottom of the screen deadly
fatal_left()
Makes the left side of the screen deadly
fatal_right()
Makes the right side of the screen deadly
fatal_top()
Makes the top of the screen deadly
finalmode(x, y)
Teleports you to Outside Dimension VVVVVV, (46,54) is the initial room of the Final Level
finalstretch(on/off)
Toggles the palette swap animation that happens in the Final Level
flag(n, on/off)
Same behavior as simplified command
flash(n)
Makes the screen white, you can change the time how long the screen should stay white (just flash won't work, you have to use flash(5) in combination with playef(9) and shake(20) if you want a normal flash)
n - The amount of frames. 30 frames is almost one second.
VVVVVV-CE: Since you can use internal commands in simplified, simply doing flash() will work.
flip
Make the player flip
flipgravity(color)
Flips the gravity of a certain crewmate. It won't work on the player, and it cannot unflip crewmates.
color - cyan/player/blue/red/yellow/green/purple
VVVVVV-CE: This works on the player, and also works to unflip crewmates.
flipme
Correct vertical positioning of multiple text boxes in flip mode
fog(enable/disable)
Toggles whether or not unexplored rooms on the minimap will be covered up.
foundlab
Plays sound effect 3, shows text box with "Congratulations! You have found the secret lab!" Does not endtext, also has no further unwanted effects.
foundlab2
Displays the second text box you see after discovering the secret lab. Also does not endtext, and also does not have any further unwanted effects.
foundtrinket(x)
Makes a trinket found
x - Number of the trinket
gamemode(x)
teleporter to show the map, game to hide it (shows teleporters of the main game)
x - teleporter/game
gamestate(x)
Change the gamestate to the specified state number
gamestatedelay(n)
Delay running a gamestate for n frames
getentitydata(id, attribute, varname)
Set the contents of varname to the given attribute of an entity with the given ID.
getvar(var1, var2)
Set var1 to the contents of var2.
var2 - optional. If not given, uses the next line as variable name
gotocheckpoint()
Teleports the player to their checkpoint
gotodimension(n)
Changes the current dimension to the dimension with the given ID.
gotoposition(x, y, f)
Change Viridian's position to x,y in this room, and f is whether you're flipped or not. (1 for flipped, 0 for not flipped)
f - 1 for flipped, 0 for not flipped. WARNING: Do not leave this unspecified, or else you could softlock the game!
gotoroom(x, y)
Change the current room to x,y, where x and y start at 0.
x - Room x coordinate, starting at 0
y - Room y coordinate, starting at 0
greencontrol
Start a conversation with Verdigris just like when you meet him in the main game and press ENTER. Also creates an activity zone afterwards.
hascontrol()
Makes the player have control, however you can't use this to regain control while in the middle of a delay()
hidecoordinates(x, y)
Hide coordinates x,y on the map (This works for the map for custom levels)
hideplayer()
Makes the player invisible
hidesecretlab
Hide the secret lab on the map
hideship
Hide the ship on the map
hidetargets()
Hide the targets on the map
hideteleporters()
Hide the teleporters on the map
hidetrinkets()
Hide the trinkets on the map
ifcoins(n, script)
Go to script if the player has collected at least n coins.
ifcoinsless(n, script)
Go to script if the player has collected less than n coins.
ifcrewlost(crewmate, script)
If crewmate is lost, go to script
ifcrewmates(n, script)
Go to script if the player has rescued at least n crewmates.
ifcrewmatesless(n, script)
Go to script if the player has rescued less than n crewmates.
ifexplored(x, y, script)
If x+1,y+1 is explored, go to (internal) script
ifflag(n, script)
Same as customifflag, but loads an internal (main game) script
ifflipmode(script)
Go to script if the game is in flip mode
ifkey(key, script)
If a key is pressed, go to script. Use this in a pinf loop.

Note that the key names 'left', 'right', 'up', and 'down' count controllers and WASD, so to get ONLY the arrow keys, use 'rleft', 'rright', 'rup', and 'rdown'.
key - Refer to the list of key NAMES (not keycodes or scancodes) from https://wiki.libsdl.org/SDL_Keycode
iflast(crewmate, script)
If crewmate x was rescued last, go to script
crewmate - Numbers are used here: 0: Viridian, 1: Violet, 2: Vitellary, 3: Vermilion, 4: Verdigris, 5 Victoria
ifmod(mod, script)
Go to script based on the status of certain features
mod - 'mmmmmm' checks if MMMMMM is installed, 'mmmmmm_on'/'mmmmmm_enabled'/'mmmmmm_off'/'mmmmmm_disabled' checks if MMMMMM is installed AND is being used or not being used, 'unifont' checks if Unifont is installed
ifnotflag(n, script)
Go to script if a flag is off.
ifrand(n, script)
Has a 1/n chance to execute the script
ifskip(x)
If you skip the cutscenes in No Death Mode, go to script x
iftrial(id, script)
Go to script if you're in any time trial, or in a specific time trial. If id is given, will check that the ID of the current time trial is that ID.
id - optional, if left unspecified will check if you're in any time trial at all
iftrinkets(n, script)
Same as simplified scripting, but loads an internal (main game) script
iftrinketsless(n, script)
Checks if the number given is less than an amount that's related to trinkets. However, it checks against the greatest number of trinkets that you have ever gotten during a single playthrough of the main game, NOT the amount of trinkets you actually have. Loads an internal (main game) script
ifvar(expression, script)
Go to script based on a conditional expression. An example of an expression is 'ifvar(x * 12 / b > 35,script2)', or something more simple, 'ifvar(a == 1,script2)'
expression - A valid mathematical expression.
ifvce(script)
Detects if the level is being ran under VVVVVV: Community Edition or not. If so, loads the script.
ifwarp(x, y, dir, script)
If the warpdir for room x,y, 1-indexed, is set to dir, go to (simplified) script
x - Room x coordinate, starting at 1
y - Room y coordinate, starting at 1
dir - The warp direction. Normally 0-3, but out-of-bounds values are accepted
inf
Does an infinite loop if you have a matching 'loop' command
infiniflip(enable/disable)
Toggles whether or not the player can flip in mid-air
jukebox(n)
Makes a jukebox terminal white and turns off the color of all the other terminals. If n is given, a jukebox activity zone will be spawned at a hardcoded position and if a terminal is at the same hardcoded position it will be lit up.
The possible values of n and the hardcoded positions are these:
1: (88, 80), 2: (128, 80), 3: (176, 80), 4: (216, 80), 5: (88, 128), 6: (176, 128), 7: (40, 40), 8: (216, 128), 9: (128, 128), 10: (264, 40)
killplayer()
Kills the player.
leavesecretlab()
Turn off "secret lab mode"
load(script)
Loads script without having to type iftrinkets(0,script).
loadimage(filename)
This loads an image file to memory, so you can load groups of images before displaying them later. Do note that drawimage() also loads the image if it wasn't already, so you don't have to put this command before every drawimage() command.
filename - The path to the image you want to display on screen, relative to your VVVVVV folder or your level folder
loadscript(script)
Load an internal (main game) script. Commonly used in custom levels as loadscript(stop)
loop
Put this at the end of a loop block started with the do command.
mapimage(filename)
Change the map into a custom image, like the main game
filename - The path to the image you want to display on screen, relative to your VVVVVV folder or your level folder
markers(displayed)
Disable/enable the displaying of tiles on the map added using markmap()
displayed - hide/show
markmap(x, y, tile)
Display a tile on the map! This can be any tile, so you can add trinket indicators, or teleporter indicators or even just a spike
tile - The tile you want to display on the map
missing(color)
Makes someone missing
moveplayer(x, y)
Moves the player x pixels to the right and y pixels down. Of course you can also use negative numbers to make them move up or to the left
VVVVVV-CE: If ran in a VCE level, will not induce a delay of 1 frame.
moveplayersafe(x, y)
Same as moveplayer(), but will make sure the player won't end up in a wall
musicfadein()
An unfinished command. This does nothing in 2.2, but works exactly as you'd think it'd work in 2.3.
musicfadeout()
Fades out the music.
niceplay(n)
Same as play(), but will fade out the music first before fading in the given track.
noautobars()
If put anywhere in a script, it will disable the automatic placement of cutscene bars at the start and end of the script.
nocontrol()
Sets game.hascontrol to false, which removes control from the player. game.hascontrol is automatically set during "- Press ACTION to advance text -" and closing text boxes, so this gets undone after those prompts
pdelay(n)
Same as delay(), but does not take away control of the player.
pinf
Same as 'inf', except it will automatically do a pdelay(1) if no delay occurred in the loop otherwise
play(n)
Start playing a song with internal song number.
n - Internal song number
playef(x, n)
Play a sound effect.
n - Actually unused, and can be left out. In VVVVVV 1.x, this used to control the offset in milliseconds at which the sound effect started.
playfile(filename, id, loops)
Play an audio file as either music or a sound effect. If you supply the id argument, the file will be played as music (which means it will loop), and you can stop it using stopfile(id).
filename - The path to the image you want to display on screen, relative to your VVVVVV folder or your level folder
id - The id of the file
loops - Number of times to loop, 0 is forever (defaults to 1 if id is empty, 0 otherwise)
position(type1, type2)
Overrides the x,y of the text command and thus sets the position of the text box.
type1 - center/centerx/centery, or a color name cyan/player/blue/red/yellow/green/purple
type2 - above/below, only used if type1 is a color name
VVVVVV-CE: If type1 is centerx/centery, then type2 will be the x/y coordinate to center the text box around, instead of taking the line of the center of the screen.
puntilbars()
Same as untilbars(), but uses pdelay() instead
puntilfade()
Same as untilfade(), but uses pdelay() instead
puntilmusic()
Same as untilmusic(), but uses pdelay() instead
purplecontrol
Start a conversation with Violet just like when you meet her in the main game and press ENTER. Also creates an activity zone afterwards.
randchoose(varname, options...)
Randomly set varname to any of the given arguments afterwards, with equal probability for each
randrange(varname, start, end)
Set varname to a value picked randomly from the range [start, end)
start - optional. If not given, defaults to 0
realign_tower
Realigns the camera when inside a scrolling tower
redcontrol
Start a conversation with Vermilion just like when you meet him in the main game and press ENTER. Also creates an activity zone afterwards.
reloadactivityzones()
Reload all activity zones, regardless of whether or not they are a terminal activity zone
reloadcustomactivityzones()
Reload all non-terminal activity zones
reloadonetime(script)
Allow the re-triggering of one-time script boxes that have the given script name
reloadroom()
Calls gotoroom() on the current room.
reloadscriptboxes()
Reload script boxes without affecting other entities in the room.
reloadterminalactivityzones()
Reload all terminal activity zones
removeimage(id)
Remove an image on screen that was drawn with drawimagepersist()
id - The ID of the image
replacetiles(a, b)
Temporarily replace all instances of tile a with tile b
replyquiet(lines)
Same as reply(), but without the squeak
rescued(color)
Makes someone rescued
resetgame
Resets all trinkets, collected crewmates and flags, and teleports the player to the last checkpoint.
restoreplayercolour()
Changes the player's color back to cyan
resumemusic()
An unfinished command. On 2.2 and below, it reads from uninitialized memory, which results in a crash on some machines and just results in playing Path Complete on others. On 2.3, it no longer reads from uninitialized memory and will correctly resume music after musicfadeout().
return()
Return to the line number and script of the line that called the current script or label, if it was not prefixed with an '@'
rollcredits()
Makes the credits roll.

2.2 AND BELOW: It destroys your save after the credits are completed!
sayquiet(lines, crewmate)
Same as say(), but without the squeak
setblendmode(mode)
Set the blend mode used for drawing script images. By default, the blend mode is 'blend'.
mode - blend/none/add/mod
setcallback(callback, script)
Sets a script to be triggered when a certain callback is triggered. TODO: There should be a list of callbacks somewhere...
setcheckpoint()
setcheckpoint(rx, ry, x, y, f)
Sets the checkpoint to the current location
rx - room x
ry - room y
x - position x
y - position y
f - whether the player is flipped or not, 1 is flipped and 0 is unflipped
VVVVVV-CE: If arguments are given, set the checkpoint to that particular position instead of the player's current position. You cannot leave any commas out (but you can leave an argument blank to use the player's position for that particular argument), and it supports relative tilde syntax, relative to the current checkpoint and NOT the current position.
setentitydata(id, attribute, value)
Set the attribute of an entity with the given ID to a given value.

A list of attributes is at https://vsix.dev/lists/entity_attributes/
setinterrupt(on/off)
Toggles whether or not the player can interrupt the current script by being in a script box
setroomname()
Temporarily sets the room name to whatever's on the next line.
setspeed(speed)
Set the players speed
speed - 3 by default
settile(x, y, tile)
Places a tile temporarily in the room.
x - The x-position, in tiles
y - The y-position, in tiles
tile - The number of the tile to change it to
setvar(varname, contents)
Set a variable to a given value.
contents - if not given, takes whatever is on the next line
setvelocity(velocity)
Push the player, this is affected by inertia
shake(n)
Shake the screen for n ticks. This will not create a delay.
showcoordinates(x, y)
Show coordinates x,y on the map (This works for the map for custom levels)
showplayer()
Makes the player visible
showsecretlab
Show the secret lab on the map
showship
Show the ship on the map
showtargets()
Show the targets on the map (unknown teleporters which show up as ?s)
showteleporters()
Show the teleporters on the map (I guess it only shows the teleporter in Space Station 1)
showtrinkets()
Show the trinkets on the map
speak
Shows a text box, without removing old text boxes. Also pauses the script until you press action (unless there's a backgroundtext command above it)
speak_active
Shows a text box, and removes any old text box. Also pauses the script until you press action (unless there's a backgroundtext command above it)
speak_active_fast
Like speak_active, but the text box instantly appears
speak_fast
Like speak, but the text box instantly appears
specialline(x)
Special dialogs that show up in the main game
squeak(color)
Makes a squeak sound from a crewmate, or a terminal sound
color - cyan/player/blue/red/yellow/green/purple/terminal
startintermission2
Alternate finalmode(46,54), takes you to the final level without accepting arguments. Crashes in timeslip.
stop()
Stops execution of the current script, and removes cutscene bars
stopfile(id)
Stop playing music played using playfile()
stopmusic()
Stops the music immediately. Equivalent to music(0) in simplified scripting.
suicide(enable/disable)
Toggles whether or not the player can press the R button
supercrewmate(on/off)
Toggles whether or not the Intermission 1 crewmate will collide with hazards.
supercrewmateroom()
Set the progress of the super crewmate to the current room
teleportscript(script)
Used to set a script which is run when you use a teleporter
VVVVVV-CE: Useful in VCE, as you can place teleporters.
telesave()
Does nothing in custom levels.

2.2 AND BELOW: Saves your game in the regular teleporter save, so don't use it!
text(color, x, y, lines)
Store a text box in memory with color, position and number of lines. Usually, the position command is used after the text command (and its lines of text), which will overwrite the coordinates given here, so these are usually left as 0.
color - cyan/player/blue/red/yellow/green/purple/gray
x - The x position of the text box
y - The y position of the text box
lines - The number of lines
VVVVVV-CE: color can also be r,g,b, which are 0-255
textboxactive
Makes all text boxes on the screen disappear except for the last created one
textboxtimer(n)
Sets a timer on the text box that makes it fade out after n frames. Place this after a speak, speak_active, speak_fast, or speak_active_fast.
toceil()
Makes the player flip to the ceiling if they weren't already there.
tofloor
Makes the player flip to the floor if they aren't already on the floor.
toggleflip(enable/disable)
Toggles whether or not the player can flip on their own
togglepause(on/off)
Toggle pausing the game using enter or leaving playtesting mode
trinketbluecontrol()
Dialog of Victoria when she gives you a trinket in the real game
trinketscriptmusic
Plays Passion for Exploring. Does nothing else.
trinketyellowcontrol()
Dialog of Vitellary when he gives you a trinket in the real game
undovvvvvvman()
Back to normal
unloadscriptimages
Unload script images that were loaded because of drawimage
unmarkmap(x, y)
Remove a tile from the map added with markmap()
untilbars()
Wait until cutscene()/endcutscene() is completed
untilfade()
Wait until fadeout()/fadein() is completed
untilmusic()
Delay until the current track has finished fading in or out
vvvvvvman()
Makes the player huge
walk(direction, x)
Makes the player walk for the specified number of ticks
direction - left/right
warpdir(x, y, dir)
Changes the warp direction for room x,y, 1-indexed, to the given direction. This could be checked with ifwarp, resulting in a relatively powerful extra flags/variable system.
x - Room x coordinate, starting at 1
y - Room y coordinate, starting at 1
dir - The warp direction. Normally 0-3, but out-of-bounds values are accepted
yellowcontrol
Start a conversation with Vitellary just like when you meet him in the main game and press ENTER. Also creates an activity zone afterwards.