Creating an RBC file
From ROBOTC API Guide
Creating an RBC file
What is an RBC file?
An RBC file is a special type of XML file that can be used with ROBOTC v3.52 or later. Once an RBC file is created properly, you will be able to configure ROBOTC's Platform Type, Compiler Target, Menu Level, and other important settings all with the click of a button. You can even configure the RBC program to load a user program and automatically download it to a robot or Virtual World of your choosing. |
How to create an RBC file
XML parameters
XML Version
The XML Version parameter will identify the document as valid XML. This must always be at the top of the RBC document.
|
RBC Version
Identifies the current RBC specification being used. As of today, this value should be specified as 1.0.0.
|
Platform Type
Sets the platform type in ROBOTC. Requires the ROBOTC installation to have an appropriate license activated and valid in order to work properly.
|
To set the Platform Type to... | Use this parameter |
VEX PIC | VEX |
VEX Cortex | VEX2 |
LEGO NXT | NXT |
LEGO NXT + TETRIX | TETRIX |
Arduino | ARDUINO |
Cortex Download Method (VEX Cortex only)
Sets the Cortex Download Method – used to modify the cortex download method to allow the Cortex to either require a VEXnet/USB cable in order to run, or to allow “standalone” mode to run a user’s program without searching for a COMM link. If the Cortex is using the VEXNet system or will be physically tethered to a Joystick Controller using the USB A-to-A cable, the VEXNet option should be used. Otherwise, use the USB-Only mode
|
To set the Download Method to... | Use this parameter |
USB Only | USBOnly |
USB or VEXNet | USBorWifi |
Competition (VEXNet) | Competition |
Circuit Board
This specifies the circuit board to be used. Has only real application with Arduino to differentiate between different board models (Uno,1280,2560,etc). Default value of blank (no value) for all other platforms.
|
Menu Level
Sets the ROBOTC GUI Menu Level. Used to show/hide functionality by adjusting the menu level types (Basic, Advanced, and Super User)
|
To set the Menu Level to... | Use this parameter |
Basic | Basic |
Expert | Expert |
Super User | SuperUser |
Compiler Mode
Sets ROBOTC’s compiler mode (Compiler Target) – used to switch between real robots, the PC-based emulator, and Virtual Worlds compiling targets.
|
To set the Compiler Target to... | Use this parameter |
Physical Robot | Real |
PC-based Emulator | Emulator |
Virtual Worlds | VirtualWorlds |
Compile and Download
Flag to specify if the source code should be “compiled” or “compiled and downloaded”. If set to “YES”, the code will automatically be downloaded to the robot or Virtual World. Otherwise ("NO"), it will only be compiled.
|
To set the Compile and Download option to... | Use this parameter |
Compile and download program automatically | YES |
Do not compile and download program automatically | NO |
Virtual World Index
Sets the numerical type of the RVW Level Pack Index that should be launched. – This is only a numerical number that references the RVW Level Pack “ID” number.
|
To set this Virtual World | Use this index parameter |
Learning ROBOTC Tables Preview | 2 |
Curriculum Companion | 3 |
FTC Block Party! | 8 |
VEX Toss Up | 9 |
FTC Ring It Up! | 10 |
VEX Sack Attack | 11 |
Robots to the Rescue: Operation Reset | 12 |
Palm Island: Luau Edition | 14 |
Ruins of Atlantis | 15 |
RVW Level Builder | 18 |
Source File Name
Name of the file that will be saved/displayed on the ROBOTC tab-bar at compile time – Note this file only is used if SourceCode is provided.
|
![]() |
RVW Parameters
Command Line Parameters that will be passed the next time Robot Virtual Worlds is launched. If the “CompileAndDownload” flag is set to “NO”, these parameters will be stored for the next execution. After the Virtual Worlds has been executed once, these parameters are discarded.
|
Source Code
Source Code of program to be open/compiled/downloaded. This is not a reference to an existing file but rather the actual contents of the file.
|
Because the RBC file uses XML formatting, the file cannot contain any XML escape markups in the Source Code section. Instead, the escape markups must be replaced with the characters below. The easiest way to perform this action on a large program is to use your text file editor's 'Find and Replace' feature, as shown in this video. |
![]() |
Completed RBC File (Sample)
// No sample code yet. Feel free to add it! |