arena_documentation

1. Arena assets

1.1 Objects
The list of assets/objects in Arena environment is listed in the table below.
Object Name
Readable Name
Object Properties
1ActionFigure
Action Figure
PICKUPABLE
2Apple
Apple
PICKUPABLE,EATABLE
3AppleSlice_01
Apple Slice
PICKUPABLE
4AP_Bld_Ceiling_Aircon_01
Vent
DECOR
5AP_Bld_Wall_Glass_Large_Door_01
Glass Doors
DECOR
6AP_Item_Tape_01
Tape
DECOR
7AP_Item_Tool_Board
Tool Board
DECOR
8AP_Prop_Barrel_Open_01
Water Barrel
DECOR
9AP_Prop_Barrel_Water_01
Water Barrel
DECOR
10AP_Prop_Bin_Rubbish_01
Trash
DECOR
11AP_Prop_Bucket_02
Trash Can
DECOR
12AP_Prop_Cabinets_01
Cabinet
DECOR
13AP_Prop_CardboardBox_Open_05
Cardboard Box
DECOR
14AP_Prop_CardboardBox_Stack_02
Cardboard Boxes
DECOR
15AP_Prop_Cellotape_01
Tape
DECOR
16AP_Prop_CorkBoard_02
Cork Board
DECOR
17AP_Prop_Couch_02
Couch
DECOR
18AP_Prop_Couch_06
Chair
DECOR
19AP_Prop_Desk_Blue
Desk
RECEPTACLE
20AP_Prop_Desk_Green
Desk
RECEPTACLE
21AP_Prop_Desk_Green_model
Desk
DECOR
22AP_Prop_Desk_Red
Desk
RECEPTACLE
23AP_Prop_Desk_Red_model
Desk
DECOR
24AP_Prop_Desk_Yellow
Desk
RECEPTACLE
25AP_Prop_Fire_Extinguisher_01
Fire Extinguisher
DECOR
26AP_Prop_Folder_PVC_02
Folders
DECOR
27AP_Prop_Generator_Large_02
Generator
DECOR
28AP_Prop_Lab_Clamp_02_Arm_01
Clamp
DECOR
29AP_Prop_Lab_MachinePanel_01
Machine Panel
DECOR
30AP_Prop_Lab_MachinePanel_02
Machine Panel
DECOR
31AP_Prop_Lab_Tank_01
Tank
DECOR
32AP_Prop_Lab_Tank_02
Tank
DECOR
33AP_Prop_Minigolf_Ball_01
Golf Ball
DECOR
34AP_Prop_Minigolf_Club_01
Golf Club
DECOR
35AP_Prop_Note_05
Sticky Notes
DECOR
36AP_Prop_PaperTray_01_Full_01
Paper Tray
DECOR
37AP_Prop_Pen_01
Pen
DECOR
38AP_Prop_Pen_03
Pen
DECOR
39AP_Prop_Pen_06
Pen
DECOR
40AP_Prop_Photocopier_01
Photocopier
DECOR
41AP_Prop_Plant_01
Plant
DECOR
42AP_Prop_Plant_09
Plant
DECOR
43AP_Prop_Print_Tube_01
Print Tube
DECOR
44AP_Prop_Safety_Barrier_02
Wet Floor Sign
DECOR
45AP_Prop_Shelf_06
Shelf
DECOR
46AP_Prop_Shelf_Wall_04
Shelf
RECEPTACLE
47AP_Prop_Shelf_Wall_FreezeRay
Blue wall shelf
RECEPTACLE
48AP_Prop_Shelf_Wall_Laser
Red wall shelf
RECEPTACLE
49AP_Prop_Sign_OutofOrder_01
Sign
DECOR
50AP_Prop_Target_Circle_01
Target
DECOR
51AP_Prop_Whiteboard_Devices_03
Whiteboard

52AP_Prop_Whiteboard_Devices_04
Whiteboard

53AP_Prop_Whiteboard_Devices_05
Whiteboard

54AP_Prop_Whiteboard_Devices_06
Whiteboard

55AP_Prop_Whiteboard_Devices_07
Whiteboard

56AP_Prop_Whiteboard_Devices_08
Whiteboard

57AP_Prop_Whiteboard_Devices_09
Whiteboard

58AP_Prop_Whiteboard_Devices_10
Whiteboard

59AP_Prop_Whiteboard_Devices_11
Whiteboard

60AP_Prop_Whiteboard_Devices_12
Whiteboard

61AP_Prop_Whiteboard_Devices_13
Whiteboard

62AP_Prop_Whiteboard_Devices_14
Whiteboard

63AP_Prop_Whiteboard_Devices_15
Whiteboard

64AP_Tool_Buffer_01_Battery
Battery
DECOR
65BananaBunch_01
Banana Bunch
PICKUPABLE
66Banana_01
Banana
PICKUPABLE,EATABLE
67Bookshelf_Wooden_01
Bookshelf
RECEPTACLE
68Bowl_01
Bowl
PICKUPABLE,BREAKABLE,HEATABLE,CHILLABLE,FILLABLE,USABLE
69BreadLoaf
Loaf of Bread
PICKUPABLE,CUTTABLE
70BreadSlice_01
Bread Slice
PICKUPABLE,EATABLE,COOKABLE
71Broken_Cord_01
Cord
POWERABLE,TOGGLEABLE
72Burger_04
Burger
PICKUPABLE,EATABLE
73CableFrayed_01
Cord
TOGGLEABLE
74CakeSlice_02
Cake Slice
PICKUPABLE
75Cake_02
Cake
PICKUPABLE,CUTTABLE,HEATABLE,CHILLABLE
76CandyBar_01
Candy Bar
PICKUPABLE,OPENABLE,EATABLE
77CandyJar_01
Jar
RECEPTACLE
78CanSodaNew_01
Can
PICKUPABLE,CHILLABLE,HEATABLE
79CanSodaNew_Crushed_01
Can
PICKUPABLE
80CanSodaNew_Open_01
Can
PICKUPABLE,CHILLABLE,HEATABLE
81CanSoda_01
null
PICKUPABLE
82Carrot_01
Carrot
PICKUPABLE,EATABLE
83Cereal_Box_01
Cereal Box
PICKUPABLE
84CoffeeBeans_01
Coffee Beans
PICKUPABLE,FILLABLE
85CoffeeCup_Lid_01
Lid
PICKUPABLE
86CoffeeCup_Open_Empty_01
Cup
PICKUPABLE,RECEPTACLE
87CoffeeCup_Open_Empty_02
Cup
PICKUPABLE,RECEPTACLE
88CoffeeMaker_01
Coffee Maker
TOGGLEABLE,RECEPTACLE,POWERABLE,FILLABLE
89CoffeeMug_Boss
Mug
PICKUPABLE,BREAKABLE,FILLABLE,HEATABLE,CHILLABLE,USABLE
90CoffeeMug_Yellow
Mug
PICKUPABLE,BREAKABLE,FILLABLE,HEATABLE,CHILLABLE
91CoffeePot_01
Coffee Pot
PICKUPABLE,HEATABLE,FILLABLE,CHILLABLE
92CoffeeUnMaker_01
Coffee Unmaker
TOGGLEABLE,RECEPTACLE,POWERABLE,FILLABLE
93ColorChangerStation
Color Changer
RECEPTACLE,USABLE,POWERABLE
94ColorChanger_Button_Blue
Blue Button
TOGGLEABLE
95ColorChanger_Button_Green
Green Button
TOGGLEABLE
96ColorChanger_Button_Red
Red Button
TOGGLEABLE
97Computer_Monitor_01
Computer
RECEPTACLE,POWERABLE,INFECTABLE
98Computer_Monitor_Broken
Computer
PICKUPABLE
99Computer_Monitor_New
Computer
PICKUPABLE,POWERABLE
100CounterBase_03
Counter
RECEPTACLE
101Cutting_Board
Cutting Board
USABLE,RECEPTACLE
102Dart
Dart
PICKUPABLE
103DartBoard
Dart Board
RECEPTACLE
104Deembiggenator_Crates
Boxes

105DeskFan_Broken_01
Fan
PICKUPABLE
106DeskFan_New_01
Fan
PICKUPABLE
107Desk_01
Table
RECEPTACLE
108Donut_01
Donut
PICKUPABLE,EATABLE
109Door_01
Door
OPENABLE
110EAC_Machine
Everything's A Carrot Machine
TOGGLEABLE,RECEPTACLE,POWERABLE
111Embiggenator
Embiggenator
POWERABLE,USABLE,TOGGLEABLE,RECEPTACLE
112EmptyPaperTray
Tray
RECEPTACLE
113FireAlarm_01
Fire Alarm
TOGGLEABLE
114FireExtinguisher_01
Fire Extinguisher

115Floppy_AntiVirus
Floppy Disk
PICKUPABLE
116Floppy_AntiVirus_Broken
Broken AntiVirus Floppy Disk
PICKUPABLE
117Floppy_Virus
Floppy Disk
PICKUPABLE,HEATABLE,BREAKABLE
118Floppy_Virus_Broken
Broken Virus Floppy Disk
PICKUPABLE
119FoodPlate_01
Plate
PICKUPABLE,BREAKABLE,RECEPTACLE,DIRTYABLE
120ForkLift
Forklift
TOGGLEABLE
121Fork_01
Fork
PICKUPABLE
122FreezeRay
Freeze Ray
TOGGLEABLE,POWERABLE,USABLE
123FridgeLower_02
Fridge
OPENABLE,RECEPTACLE,POWERABLE
124FridgeUpper_02
Freezer
OPENABLE,RECEPTACLE,POWERABLE
125FulllPaperTray_01
Tray
RECEPTACLE
126FuseBox_01
Fuse Box
OPENABLE,TOGGLEABLE,RECEPTACLE,POWERABLE
127FuseBox_01_Lever
Lever
TOGGLEABLE,PICKUPABLE
128FuseBox_02
Fuse Box
TOGGLEABLE,OPENABLE,RECEPTACLE
129GravityPad
Gravity Pad
TOGGLEABLE,RECEPTACLE,POWERABLE
130Hammer
Hammer
PICKUPABLE
131Handsaw
Saw
PICKUPABLE
132Jar_Jam_01
Jelly
PICKUPABLE,EATABLE
133Jar_PeanutButter_01
Peanut Butter
PICKUPABLE
134Keyboard
Keyboard
DECOR
135KitchenCabinet_01
Cabinet
OPENABLE,RECEPTACLE
136KitchenCabinet_01_Trapped
null
OPENABLE
137KitchenCabinet_02
Cabinet
OPENABLE,RECEPTACLE
138KitchenCounter01
Counter
RECEPTACLE
139KitchenCounterBase_02
Counter
OPENABLE,RECEPTACLE
140KitchenCounterBase_03
Counter
OPENABLE,RECEPTACLE
141KitchenCounterDrawer_02
Drawer
OPENABLE,RECEPTACLE
142KitchenCounterDrawer_03
Drawer
OPENABLE,RECEPTACLE
143KitchenCounterSink_01
Sink
TOGGLEABLE,RECEPTACLE,FILLABLE,OPENABLE
144KitchenCounterTop_02
Counter Top
RECEPTACLE
145KitchenStool_01
Stool

146Knife_01
Knife
PICKUPABLE
147Lab_Terminal
Computer
POWERABLE
148Laser
Laser
RECEPTACLE,POWERABLE,USABLE,TOGGLEABLE
149LaserBase_toy
Laser Toy
DECOR
150Laser_CircuitBoard
Circuit Board
PICKUPABLE
151Laser_ControlPanel
Control Panel
PICKUPABLE,USABLE
152Laser_Tip
Laser Tip
PICKUPABLE
153Laser_Tip_Broken
Broken Laser Tip
PICKUPABLE
154LightSwitch_01
Light Switch
TOGGLEABLE,POWERABLE,USABLE
155ManagerDesk
Desk
RECEPTACLE
156Manager_Chair
Chair
DECOR
157Microwave_01
Microwave
OPENABLE,RECEPTACLE,POWERABLE,TOGGLEABLE
158MilkCarton_01
Milk
PICKUPABLE,OPENABLE,FILLABLE
159MissionItemHolder
null
RECEPTACLE
160Office_Chair
Chair
DECOR
161PackingBox
Box
RECEPTACLE
162PaperCup_01
Cup
PICKUPABLE
163PaperCup_Crushed_01
Cup
PICKUPABLE
164PBJ_Sandwich
Peanut Butter and Jelly Sandwich
PICKUPABLE
165Pear_01
Pear
PICKUPABLE,EATABLE
166PieFruitSlice_01
Pie Slice
PICKUPABLE,EATABLE
167PieFruit_01
Pie
PICKUPABLE,CUTTABLE
168PinBoard_01
Board

169PinBoard_02
Board

170PortalGenerator
Generator
POWERABLE
171PowerOutlet_01
Outlet

172Printer_3D
Printer
RECEPTACLE,POWERABLE,TOGGLEABLE
173Printer_Cartridge
Printer Cartridge
PICKUPABLE
174Printer_Cartridge_Figure
Figure Print Cartridge
PICKUPABLE
175Printer_Cartridge_Hammer
Hammer Print Cartridge
PICKUPABLE
176Printer_Cartridge_Lever
Lever Print Cartridge
PICKUPABLE
177Printer_Cartridge_Mug
Mug Printer Cartridge
PICKUPABLE
178Radio_01
Radio
PICKUPABLE,TOGGLEABLE
179Radio_01_Broken
Broken Radio
PICKUPABLE
180ReceptionDesk
Desk
RECEPTACLE
181Record_01
Record
PICKUPABLE,BREAKABLE
182RoboticArm_01
Robot Arm
TOGGLEABLE,POWERABLE
183SafetyBarrier_02
Wet Floor Sign

184SandwichHalf_01
Sandwich
PICKUPABLE
185Screwdriver
Screw Driver
PICKUPABLE
186Security_Button
Button
POWERABLE,TOGGLEABLE
187Shelf_01
Shelf
RECEPTACLE
188Shelves_Tall_01
Shelf
RECEPTACLE
189sign_diamond_carrot
Sign
DECOR
190sign_diamond_fire
Sign
DECOR
191sign_diamond_freeze
Sign
DECOR
192sign_diamond_gravity
Sign
DECOR
193sign_diamond_laser
Sign
DECOR
194sign_diamond_quantum
Sign
DECOR
195sign_diamond_shrink
Sign
DECOR
196sign_office_layout_1
Map
DECOR
197sign_short_breakroom_1
Sign
DECOR
198sign_short_breakroom_2
Sign
DECOR
199sign_short_caution_carrot
Sign
DECOR
200sign_short_caution_electrical
Sign
DECOR
201sign_short_caution_gravity_1
Sign
DECOR
202sign_short_caution_gravity_2
Sign
DECOR
203sign_short_caution_quantum_1
Sign
DECOR
204sign_short_caution_quantum_2
Sign
DECOR
205sign_short_caution_restricted_1
Sign
DECOR
206sign_short_caution_shrink
Sign
DECOR
207sign_short_office_1
Sign
DECOR
208sign_short_poster_delwan_1
Poster
DECOR
209sign_short_poster_delwan_2
Poster
DECOR
210sign_short_poster_delwan_3
Poster
DECOR
211sign_short_poster_delwan_4
Poster
DECOR
212sign_short_poster_tam
Poster
DECOR
213sign_short_quantum_1
Sign
DECOR
214sign_short_quantum_2
Sign
DECOR
215sign_short_robotics_1
Sign
DECOR
216sign_short_robotics_2
Sign
DECOR
217sign_short_warehouse_1
Sign
DECOR
218sign_square_breakroom
Sign
DECOR
219sign_tall_caution_carrot
Sign
DECOR
220sign_tall_caution_electrical
Sign
DECOR
221sign_tall_caution_freeze
Sign
DECOR
222sign_tall_caution_laser
Sign
DECOR
223sign_tall_caution_robotics
Sign
DECOR
224sign_tall_caution_shrink
Sign
DECOR
225sign_tall_poster_tam_1
Poster
DECOR
226sign_tall_poster_tam_2
Poster
DECOR
227SK_Veh_Pickup_01_ToolBox
Tool Box
DECOR
228SM_Bld_Door_02
Door
DECOR
229SM_Bld_Wall_Metal_Slide_02
Garage Door
DECOR
230SM_Bld_Wall_Window_Blinds_Open_04
Blinds
DECOR
231SM_Item_Clipboard_01
Clipboard
DECOR
232SM_Prop_AirVent_01
Vent
DECOR
233SM_Prop_AirVent_Wall_01
Vent
DECOR
234SM_Prop_Book_Group_01
Books
DECOR
235SM_Prop_Book_Group_02
Books
DECOR
236SM_Prop_Book_Group_03
Books
DECOR
237SM_Prop_Book_Group_04
Books
DECOR
238SM_Prop_Book_Group_05
Books
DECOR
239SM_Prop_Book_Group_06
Books
DECOR
240SM_Prop_Book_Group_07
Books
DECOR
241SM_Prop_Book_Group_08
Books
DECOR
242SM_Prop_Book_Magazine_01
Magazine
DECOR
243SM_Prop_Book_Phone_Open_01
Book
DECOR
244SM_Prop_Buttons_02
Key Pad
DECOR
245SM_Prop_Buttons_05
Buttons
DECOR
246SM_Prop_Calender_01
Calendar
DECOR
247SM_Prop_Cart_01
Cart
DECOR
248SM_Prop_Certificate_01
Certificate
DECOR
249SM_Prop_Crate_Stack_01
Crates
DECOR
250SM_Prop_Drink_Dispenser_01
Cooler
DECOR
251SM_Prop_FlatPackCardboardBoxes_03
Cardboard Boxes
DECOR
252SM_Prop_FlatPackCardboardBoxes_04
Cardboard Boxes
DECOR
253SM_Prop_FolderTray_01
Tray
DECOR
254SM_Prop_FolderTray_02
Paper Tray
DECOR
255SM_Prop_FolderTray_03
Tray
DECOR
256SM_Prop_FolderTray_04
Paper Tray
DECOR
257SM_Prop_Folder_Holder_01
Folder Holder
DECOR
258SM_Prop_Folder_Holder_02
Folder Holder
DECOR
259SM_Prop_Folder_Holder_03
Folder Holder
DECOR
260SM_Prop_Folder_Holder_04
Folder Holder
DECOR
261SM_Prop_Folder_Manila_01
Folder
DECOR
262SM_Prop_Folder_Manila_02
Folder
DECOR
263SM_Prop_Folder_Manila_03
Folder
DECOR
264SM_Prop_Folder_Manila_04
Folder
DECOR
265SM_Prop_Folder_PVC_01
Folder
DECOR
266SM_Prop_Folder_PVC_02
Folders
DECOR
267SM_Prop_Lighting_Cable_Bulb_01
Light Bulb
DECOR
268SM_Prop_NetCable_03
Cable Spool
DECOR
269SM_Prop_NotePad_01
Notepad
DECOR
270SM_Prop_Oxygen_Tank
Water Tank
DECOR
271SM_Prop_Oxygen_Tank_Large
Water Tank
DECOR
272SM_Prop_PalletStack_02
Pallets
DECOR
273SM_Prop_Papers_01
Papers
DECOR
274SM_Prop_PaperTray_01_Full_01
Paper Tray
DECOR
275SM_Prop_Paper_04
Paper
DECOR
276SM_Prop_Paper_05
Paper
DECOR
277SM_Prop_Paper_06
Paper
DECOR
278SM_Prop_Paper_Pile_01
Stack of Papers
DECOR
279SM_Prop_Paper_Pile_03
Stack of Papers
DECOR
280SM_Prop_Plastic_Pipe_Spool_01
Wire Coil
DECOR
281SM_Prop_PowerBoxes_01
Power Boxes
DECOR
282SM_Prop_Powercable_01
Cable
DECOR
283SM_Prop_Powercable_02
Cable Spool
DECOR
284SM_Prop_Powercable_03
Cable
DECOR
285SM_Prop_Scales_01
Scale
DECOR
286SM_Prop_Server_Cabinet_01
Server Cabinet
DECOR
287SM_Prop_Server_Node_01
Server
DECOR
288SM_Prop_Table_02
Table
RECEPTACLE
289SM_Prop_ToolBox_01
Tool Box
DECOR
290SM_Prop_Warehouse_Boxes_Stacked_03
Cardboard Boxes
DECOR
291SM_Prop_Warehouse_Boxes_Stacked_04
Pallet
DECOR
292SM_Prop_Warehouse_Light_04
Light
DECOR
293SM_Prop_Warehouse_Platform_Trolley_01
Dolly
DECOR
294SM_Prop_Wirespool_01
Cable Spool
DECOR
295SM_Prop_Wirespool_Small_01
Cable Spool
DECOR
296SM_Sign_Exit_02
Sign
DECOR
297SM_Tool_Buffer_01_Battery
Battery
DECOR
298SM_Tool_Drill_Chuck_01
Drill Chuck
DECOR
299SM_Tool_Handsaw_01
Handsaw
DECOR
300Spoon_01
Spoon
PICKUPABLE
301StickyNote
Sticky Note

302TableRoundSmall_02
Table Round Small
RECEPTACLE
303TableRound_02
Table
RECEPTACLE
304Table_Metal_01
Table
RECEPTACLE
305TAMPrototypeHead_01
TAM Prototype
POWERABLE,TOGGLEABLE
306TeslaCoil
Tesla Coil
TOGGLEABLE,POWERABLE
307TeslaCoil_Small
Tesla Coil
DECOR
308Toaster_02
Toaster
TOGGLEABLE,RECEPTACLE,POWERABLE
309Toast_01
Toast
PICKUPABLE
310Toast_02
Toast
PICKUPABLE
311Toast_03
Toast
PICKUPABLE
312Toast_04
Toast
PICKUPABLE
313Toast_04_Jam
Toast
PICKUPABLE
314Toast_04_PBJ
Toast
PICKUPABLE
315ToyBed
Toy Bed
DECOR
316TrashCan_01
Trash Can
RECEPTACLE
317Trophy01
Trophy
PICKUPABLE,BREAKABLE
318VendingMachine_01
Vending Machine
RECEPTACLE,OPENABLE,POWERABLE,USABLE
319VendingMachine_01_B4_Button
B4 Button
TOGGLEABLE
320VendingMachine_01_E5_Button
E5 Button
TOGGLEABLE
321VendingMachine_01_E7_Button
E7 Button
TOGGLEABLE
322VendingMachine_01_M8_Button
M8 Button
TOGGLEABLE
323V_Monitor_Embiggenator
Computer
POWERABLE,TOGGLEABLE,RECEPTACLE,INFECTABLE
324V_Monitor_FreezeRay
Computer
TOGGLEABLE,POWERABLE,RECEPTACLE,INFECTABLE
325V_Monitor_Gravity
Computer
TOGGLEABLE,POWERABLE,RECEPTACLE,INFECTABLE
326V_Monitor_Laser
Computer
TOGGLEABLE,POWERABLE,RECEPTACLE,INFECTABLE
327V_Monitor_Portal
Computer
TOGGLEABLE,POWERABLE,RECEPTACLE,INFECTABLE
328WallClock_01
Clock
DECOR
329Warehouse_Boxes
Boxes

330WarningSign_01
Warning Sign

331WaterCooler_01
Water Cooler

332WaterPuddle_01
Puddle
POWERABLE
333WhiteBoard_01
White Board

334Whiteboard_CoffeeUnmaker
White Board

335Whiteboard_YesterdayMachine
White Board

336YesterdayMachine_01
Time Machine
OPENABLE,TOGGLEABLE,RECEPTACLE,POWERABLE
Note: The objects, properties and states listed above are specific to Arena build version v1_14_1.

1.2 States
The characteristics/attributes of an object rendered in a simulation environment at a certain time are called the object states. For example, at time T, the refrigerator is closed, or the milk is cold. After performing various actions, the state of these items may have changed at time T + x. For instance, the milk may have been heated or the refrigerator may have been opened.

Please find the list of object states below. 
1.3 Object properties and state transitions
Object properties specifies if a certain type of robot interaction action can be performed on an object. For example, KitchenCabinet_01 has an object property as OPENABLE, that means AI agent can open the cabinet. At the same time, the robot cannot PICKUP or BREAK the KitchenCabinet_01 as it does not have PICKUPABLE/BREAKABLE properties. 

In addition, an object can be a Receptacle - which indicated it can be used to contain/store another object, which contains an Anchor point - which is a location on the receptacle where another object can be placed.

The table below shows a list of object properties, related object states transitions, and contextual interactions.
#
Property
Corresponding State(s)
Actions
Contextual Interactions
1
PICKUPABLE
PICKED_UP
PICKUP
● AI agent uses PICKUP on PICKUPABLE interactable with empty hand to change PICKED_UP to true

● AI agent uses PICKUP on PICKUPABLE interactable with full hand, resulting in action failure and no state change 

● AI agent uses PLACE on RECEPTACLE with empty anchor points, resulting in interactable of targeted hand having PICKED_UP changed to false 

● AI agent uses PLACE on RECEPTACLE with no empty anchor points, resulting in action failure and no state change 

● AI agent uses PLACE on RECEPTACLE with keyed anchor points, and interactable is not of type anchor points are keyed for, resulting in action failure and no state change
 
● AI agent uses PLACE on RECEPTACLE with keyed anchor points, and interactable is of type anchor points are keyed for, resulting in PICKED_UP being set to false

2
OPENABLE
OPENED
OPEN, CLOSE
● AI agent uses OPEN on OPENABLE interactable to change OPENED to true

● AI agent uses CLOSE on OPENABLE interactable to change OPENED to false
 
● AI agent uses OPEN on OPENABLE interactable that has isLocked set to true, resulting in
action failure and no state change 

● AI agent uses CLOSE on OPENABLE interactable that has isLocked set to true, resulting in
action failure and no state change 

● AI agent uses TOGGLE on POWERED, TOGGLEABLE security button interactable to toggle
OPENED on the two reception doors
3
BREAKABLE
BROKEN
BREAK
● Hammer used to BREAK BREAKABLE interactable results in BROKEN set to true
 
● Floppy_Virus having HOT set to true results in BROKEN being set to true
4
RECEPTACLE
N/A
PLACE
● See Property: PICKUPABLE
5
TOGGLEABLE*
TOGGLED
TOGGLE
● AI agent uses TOGGLE on TOGGLEABLE interactable that has POWERABLE set to false, resulting in TOGGLED being set to opposite state

● AI agent uses TOGGLE on TOGGLEABLE interactable that has POWERABLE set to true and POWERED set to false, resulting in action failure and no state change 

● AI agent uses TOGGLE on TOGGLEABLE interactable that has POWERABLE set to true and POWERED set to true, resulting in multiple possibilities, including Action Failure, Opposite State of what it was at action start, and Temporary State that will be reset before action return
6
POWERABLE
POWERED, OVERLOADED, SPARKING
N/A
● If an object is POWERABLE, it can be OVERLOADED or SPARKING

● OVERLOADED is a state that computers/terminals can receive that indicates they are in an error state and locks out the user. The only thing that can revert this state is turning off the device and back on, by toggling the power of the room that they are in. This will reset the terminal to allow it to be used again by the player.

● SPARKING is a state that any electrical device can receive that indicates they are completely fried, and now an active hazard for the player. As long as they are powered, they will spark forever, and if the player attempts to interact with the option, it will electrocute AI agent. 

● AI agent uses TOGGLE on FuseBox_01_Lever that is a child of FuseBox_01 or FuseBox_02 that is set to power circuit that interactable is set to, resulting in POWERED being set to opposite state - If OVERLOADED and/or SPARKING is true and opposite state is false, OVERLOADED and/or SPARKING is set to false
7
DIRTYABLE
DIRTY
CLEAN
● DIRTY interactable uses CLEAN on KitchenCounterSink_01 that is TOGGLED, resulting in DIRTY being set to false
8
HEATABLE
HOT
N/A
● AI agent using TOGGLE on Microwave_01 with HEATABLE interactable in it results in HEATABLE interactable having HOT set to true 

● AI agent using TOGGLE on Toaster_02 with HEATABLE interactable in it results in HEATABLE interactable having HOT set to true

● AI agent using TOGGLE on V_Monitor_Laser with HEATABLE interactable in AP_Prop_Shelf_Wall_Laser and Laser fully assembled results in HEATABLE interactable having HOT set to true 

Additional Notes: If HOT is set to true, COLD will also be set to false.
9
EATABLE
EATEN
N/A
● EATABLE property is applicable to edible items only such as Donut_01, Carrot_01 etc. 

● If this feature is set to "True," then any food item will visually resemble a portion of itself after being consumed. This property can be set to ”False“ by processing the item in time machine(YesterdayMachine_01). 

● There isn't any primitive action supported by AI agent that will set this property True.
10
CHILLABLE
COLD
N/A
● AI agent using TOGGLE on V_Monitor_FreezeRay with CHILLABLE interactable in AP_Prop_Shelf_Wall_04 results in CHILLABLE interactable having COLD set to true 

● AI agent placing CHILLABLE interactable in FridgeUpper_02 and using CLOSE on FridgeUpper_02 results in CHILLABLE interactable having COLD set to true

Additional Notes: If COLD is set to true, HOT will also be set to false.
11
FILLABLE
FILLED
FILL, POUR
● Fillable interactable with FILLED set to true uses POUR on other fillable interactable with FILLED set to false, resulting in interactor having FILLED set to false and target having FILLED set to true 

● Fillable interactable with FILLED set to false uses POUR resulting in action failed and no state change

● Fillable interactable with FILLED set to true uses POUR on other fillable interactable with FILLED set to true, resulting in action failure and no state change

● Fillable interactable with FILLED set to false uses FILL on KitchenCounterSink_01 that has TOGGLED set to true, resulting in fillable interactable having FILLED set to true
12
COOKABLE
COOKED
N/A
● BreadSlice_01 is placed in Toaster_02 and Toaster_02 is toggled on, resulting in Toast being cooked
13
DECOR
N/A
N/A
● Anything set as decor will not be focusable in TAMCAM unless explicitly EXAMINED, or is the recipient of a GoTo command. DECOR items do not have any other properties.
14
INFECTABLE
INFECTED
N/A
● AI agent places Floppy_Antivirus in terminal that has INFECTED set to true, resulting in INFECTED being set to false 

● AI agent places Floppy_Virus in terminal that has INFECTED set to false, resulting in INFECTED being set to true
* Here are some examples to explain the behavior of objects with TOGGLEABLE property 
Objects
Behavior (Temporary state/Opposite state/Action failure)
1VendingMachine_01_B4_Button
VendingMachine_01_E5_Button
VendingMachine_01_E7_Button
VendingMachine_01_M8_Button
Temporary State if item awaiting dispense

Action Failure if not
2ColorChanger_Button_Green
ColorChanger_Button_Blue
ColorChanger_Button_Red
Temporary State if item in EAC_Machine anchor point

Action Failure if not
3GravityPad
Laser
FreezeRay
ColorChangerStation
PortalGenerator
FuseBox_01
FuseBox_02
Embiggenator
Action Failure
4ForkLift
KitchenCounterSink_01
FuseBox_01_Lever
LightSwitch_01
V_Monitor_Portal
V_Monitor_Gravity
RoboticArm_01
Opposite State
5FireAlarm_01
Microwave_01
Toaster_02
CoffeeUnMaker_01
Temporary State
6YesterdayMachine_01
Temporary State if item in anchor point

Action Failure if not
7CoffeeMaker_01
Temporary State if FILLABLE item in anchor point and coffee maker is FILLED


Action Failure if not
8EAC_Machine
Temporary State if item in anchor point

Action Failure if not
9V_Monitor_Embiggenator
Opposite State if item in linked Embiggenator anchor point

Action Failure if not
10TAMPrototypeHead_01
Temporary State if emotion is not being overridden by room light status/radio

Action Failure if it is
11V_Monitor_Laser
Opposite State if laser is running

Temporary State if laser is assembled

Action Failure otherwise
12V_Monitor_FreezeRay
Opposite State if freeze ray is running

Temporary State otherwise
13Printer_3D
Temporary State if anchor point is empty and cartridge is inserted

Action Failure otherwise

2. Arena actions

At a high-level, Arena supports two kinds of actions: 
image.png

This section explains all of the supported actions and their respective JSON formats.

2.1 Dialog action

#JSON format for dialog action
{
    "id": "<uid>",
    "type": "Dialog",
    "dialog": {
        "value": "<utterance>"
    }
}
Note: dialog.value → is a string value that would be played on the user's device, eg. “where is the cartridge?

2.2 Robot actions

These actions are used for manipulating the Robot agent or the objects in the simulation environment. There are two types of robot actions:
When an action is executed in the simulation environment, the state of one/more objects might be changed.

2.2.1 Navigation Actions

The list of primitive navigation actions supported by Arena is described below, with the respective JSON formats.
#
Action
JSON format of action
Magnitude value ranges
(min, max)
1
GoTo
# Go to an object
{
    "id": "<uid>",
    "type": "Goto",
    "goto": {
      "object": {
         "colorImageIndex": 0,
         "mask": "<compressedString>",
         "name": "object_name",
      }
    }
  }

# Go to the room
  {
    "id": "<uid>",
    "type": "Goto",
    "goto": {
      "object": {
         "officeRoom" : <office room name>,
      }
    }
  }

# Go to a viewpoint
  {
    "id": "<uid>",
    "type": "Goto",
    "goto": {
      "object": {
         "goToPoint" : <viewpoint name>,
      }
    }
  }

# Go to co-ordinates
  {
    "id": "<uid>",
    "type": "Goto",
    "goto": {
      "object": {
        "position": {
           "x": -20.38525,
           "y": 0.3881618,
           "z": 7.425945
         },
         "rotation": {
            "x": 0,
            "y": 1,
            "z": 0,
            "w": -4.371139e-08
         }
      }
    }
  }
N/A
2
MoveForward
{
    "id": "<uid>",
    "type": "Move",
    "move": {
        "direction": "Forward",
        "magnitude": <float val>             # move magnitude
    }
  }
(0, min(positive float number, distance between AI agent and any obstacle such as wall, table in front of it))
3
MoveBackward
{
    "id": "<uid>",
    "type": "Move",
    "move": {
        "direction": "Backward",
        "magnitude": <float val>             # move magnitude
    }
  }
(0, min(positive float number, distance between AI agent and any obstacle such as wall, table in front of it))
4
Rotate Right
{
     "id": "<uid>",
     "type": "Rotate",
     "rotation": {
        "direction": "Right",
        "magnitude": <float val>             # positive rotation degrees.
     }
  }
(0, 359.0)
5
Rotate Left
{
     "id": "<uid>",
     "type": "Rotate",
     "rotation": {
        "direction": "Left",
        "magnitude": <float val>             # positive rotation degrees.
     }
  }
(0, 359.0)
6
LookDown
{
    "id": "<uid>",
    "type": "Look",
    "look": {
       "direction": "Down",
       "magnitude": <float val>              # rotation degrees
    }
  }
(0, 60.0)
7
LookUp
{
    "id": "<uid>",
    "type": "Look",
    "look": {
       "direction": "Up",
       "magnitude": <float val>              # rotation degrees
    }
  }
(0, 60.0)
8
LookAround
{
    "id": "<uid>",
    "type": "Look",
    "look": {
       "direction": "Around",
       "magnitude": <int or float val>              # field of view
    }
  }
For a 360-degree view, this should always be set to 100. It returns four color images with slight edge overlap.
The actions mentioned above are self-explanatory. After observing the table, the commonly used fields in action JSON format are:
IMPORTANT: The first letter of each action type and direction must be in uppercase.

Note: 
1. “GoTo” command has multiple action JSON formats based on the usage. Please refer to the section below for knowing more about “colorImageIndex”.
2. “LookAround” is a special action specifically designed for ML models to perform panoramic object detection. The execution of LookAround action does not result in any animation changes visible to the user/game-player. 
How does “LookAround” capture images?
The first party view at the time of issuing the look around command is used to capture the first image with a field of view of 100, followed by the robot rotating to perpendicular directions to capture a total of 4 look around images (each with a field of view of 100 degrees).

2.2.2 Object Interaction actions

Please find the list of object interaction actions below.
#
Action
JSON format of action
1
PickUp
{
    "id": "<uid>",
    "type": "Pickup",
    "pickup": {
       "object": {
         "colorImageIndex": 0,
          "mask": "<compressedString>",
         "name": "object_name"
       }
    }
  }
2
Open
{
    "id": "<uid>",
    "type": "Open",
    "open": {
      "object": {
         "colorImageIndex": 0,
         "mask": "<compressedString>",
         "name": "object_name"
      }
    }
  }
3
Close
{
    "id": "<uid>",
    "type": "Close",
    "close": {
      "object": {
         "colorImageIndex": 0,
         "mask": "<compressedString>",
         "name": "object_name"
      }
    }
  }
4
Break
{
    "id": "<uid>",
    "type": "Break",
    "break": {
      "object": {
         "colorImageIndex": 0,
         "mask": "<compressedString>",
         "name": "object_name"
      }
    }
  }
5
Scan
{
    "id": "<uid>",
    "type": "Scan",
    "scan": {
      "object": {
         "colorImageIndex": 0,
         "mask": "<compressedString>",
         "name": "<objectName>",
      }
    }
  }
6
Examine
{
      "id": "<uid>",
      "type": "Examine",
      "examine": {
        "object": {
           "colorImageIndex": 0,
           "mask": "<compressedString>",
           "name": "<objectName>",
        }
      }
    }
7
Place
{
    "id": "<uid>",
    "type": "Place",
    "place": {
      "object": {
         "colorImageIndex": 0,
         "mask": "<compressedString>",
         "name": "object_name"
      }
    }
  }
8
Pour
{
      "id": "<uid>",
      "type": "Pour",
      "pour": {
        "object": {
           "colorImageIndex": 0,
           "mask": "<compressedString>",
           "name": "object_name"
        }
      }
    }
9
Toggle
{
    "id": "<uid>",
    "type": "Toggle",
    "toggle": {
       "object": {
          "colorImageIndex": 0,
          "mask": "<compressedString>",
          "name": "object_name"
       }
    }
  }
10
Fill
{
      "id": "<uid>",
      "type": "Fill",
      "fill": {
        "object": {
           "colorImageIndex": 0,
           "mask": "<compressedString>",
           "name": "object_name"
        }
      }
    }
11
Clean
{
      "id": "<uid>",
      "type": "Clean",
      "clean": {
        "object": {
           "colorImageIndex": 0,
           "mask": "<compressedString>",
           "name": "object_name"
        }
      }
    }
12
Highlight
{    
    "id": "<uid>",    
    "type": "Highlight",    
    "highlight": {      
        "object": {        
            "colorImageIndex": 0,          
            "mask": "<compressedString>",        
            "name": "object_name"      
        }    
    }  
}
The fields in action JSON format are:
What’s the difference between SCAN and HIGHLIGHT?
In highlight action, the robot turns toward the object and rotates back to the original orientation. In scan action, robot does not turn back to its original position.

3. Arena agent metadata

The following shows sample metadata information.
{
   "colorImages": { // dictionary of color images
        "0": image_rgb1,
        "1": image_rgb2,
        "2": image_rgb3,
        "3": image_rgb4
   },
   "depthImages": { // dictionary of depth images
        "0": image_depth1,
        "1": image_depth2,
        "2": image_depth3,
        "3": image_depth4
   },
   "robotInfo": [{
        "currentRoom": "Lab1",
        "position": {"x": -4.96169662, "y": 0.388161778, "z": 20.42516},
        "rotation": {"x": 0.0, "y": 0.676049948, "z": 0.0, "w": -0.7368558}
   }],
   "viewPoints": {
        "Reception_3": {"x": -2.14525414, "y": 0.00479745865, "z": 7.505945},
        "MainOffice_4": {"x": -7.305254, "y": 0.00479745865, "z": 6.955945},
        "BreakRoom_2": {"x": -18.3852539, "y": 0.00479745865, "z": 12.6659451},
        "MainOffice_8": {"x": -16.2052536, "y": 0.00479745865, "z": 8.025945},
        "Reception_2": {"x": -3.60525513, "y": 0.00479745865, "z": 10.0359449},
        .
        .
        . (More viewpoints)
   },
   "previousActions": {
        "id": "<uid>",                # Id of action
        "type": "Rotate",             # Type of action. Refer section 8 for more info.
        "success": boolean,           # If action was executed successfully
        "errorType": "<errorType>"    # ErrorCode
   }
}
where:
"Reception_3"   :    {"x": -2.14525414, "y": 0.00479745865, "z": 7.505945}
"MainOffice_4"  :    {"x": -7.305254, "y": 0.00479745865, "z": 6.955945}
"BreakRoom_2"   :    {"x": -18.3852539, "y": 0.00479745865, "z": 12.6659451}
"MainOffice_8"  :    {"x": -16.2052536, "y": 0.00479745865, "z": 8.025945}
"Reception_2"   :    {"x": -3.60525513, "y": 0.00479745865, "z": 10.0359449}
"Lab1_4"        :    {"x": -4.315254, "y": 0.00479745865, "z": 22.3359432}
"Reception_4"   :    {"x": -1.75525475, "y": 0.00479745865, "z": 6.045945}
"BreakRoom_7"   :    {"x": -17.3052559, "y": 0.00479745865, "z": 17.4659443}
"BreakRoom_8"   :    {"x": -17.2252541, "y": 0.00479745865, "z": 21.5559444}
"Lab2_2"        :    {"x": -11.4052544, "y": 0.00479745865, "z": 13.9259453}
"Lab2_3"        :    {"x": -13.515255, "y": 0.00479745865, "z": 13.8859453}
"Reception_5"   :    {"x": -4.28525543, "y": 0.00479745865, "z": 6.045945}
"SmallOffice_3" :    {"x": -21.9652557, "y": 0.00479745865, "z": 7.155945}
"Lab1_2"        :    {"x": -3.03525543, "y": 0.00479745865, "z": 15.0859451}
"Reception_1"   :    {"x": -4.925255, "y": 0.00479745865, "z": 10.4159451}
"Lab1_5"        :    {"x": -6.555254, "y": 0.00479745865, "z": 22.9159431}
"MainOffice_3"  :    {"x": -7.845255, "y": 0.00479745865, "z": 10.0959454}
"Warehouse_3"   :    {"x": -10.7952538, "y": 0.00479745865, "z": -1.4640553}
"Reception_8"   :    {"x": -4.2052536, "y": 0.00479745865, "z": 9.525945}
"MainOffice_1"  :    {"x": -15.5252552, "y": 0.00479745865, "z": 10.0759449}
"Lab1_1"        :    {"x": -5.91525459, "y": 0.00479745865, "z": 12.8859453}
"Lab2_1"        :    {"x": -11.6652546, "y": 0.00479745865, "z": 15.6259451}
"Warehouse_2"   :    {"x": -8.415255, "y": 0.00479745865, "z": 1.87594485}
"Warehouse_6"   :    {"x": -2.21525383, "y": 0.00479745865, "z": -1.65405524}
"BreakRoom_5"   :    {"x": -21.1752548, "y": 0.00479745865, "z": 16.0459442}
"MainOffice_6"  :    {"x": -13.7252541, "y": 0.00479745865, "z": 5.71594524}
"Warehouse_1"   :    {"x": -5.685255, "y": 0.00479745865, "z": 2.085945}
"Lab2_4"        :    {"x": -14.0452538, "y": 0.00479745865, "z": 15.1159449}
"MainOffice_7"  :    {"x": -15.7452545, "y": 0.00479745865, "z": 6.01594448}
"Warehouse_4"   :    {"x": -10.1552544, "y": 0.00479745865, "z": -5.47405529}
"SmallOffice_2" :    {"x": -22.1852531, "y": 0.00479745865, "z": 5.01594448}
"Lab1_7"        :    {"x": -4.975254, "y": 0.00479745865, "z": 20.5759449}
"SmallOffice_1" :    {"x": -20.6752548, "y": 0.00479745865, "z": 4.92594433}
"BreakRoom_3"   :    {"x": -18.1052551, "y": 0.00479745865, "z": 14.7159452}
"SmallOffice_4" :    {"x": -20.5552559, "y": 0.00479745865, "z": 7.155945}
"Lab1_3"        :    {"x": -3.15525436, "y": 0.00479745865, "z": 21.7359447}
"BreakRoom_4"   :    {"x": -22.1052551, "y": 0.00479745865, "z": 13.4059448}
"Lab2_7"        :    {"x": -12.3352547, "y": 0.00479745865, "z": 21.4459438}
"BreakRoom_1"   :    {"x": -19.765255, "y": 0.00479745865, "z": 10.4659452}
"Lab1_6"        :    {"x": -6.19525528, "y": 0.00479745865, "z": 20.6759434}
"SmallOffice_5" :    {"x": -18.9752541, "y": 0.00479745865, "z": 7.155945}
"Lab1_8"        :    {"x": -6.765255, "y": 0.00479745865, "z": 13.3359451}
"BreakRoom_6"   :    {"x": -20.4452553, "y": 0.00479745865, "z": 17.3459435}
"Warehouse_5"   :    {"x": -5.99525452, "y": 0.00479745865, "z": -5.8540554}
"Lab2_6"        :    {"x": -14.0752544, "y": 0.00479745865, "z": 22.3559437}
"MainOffice_2"  :    {"x": -12.1452541, "y": 0.00479745865, "z": 10.1659451}
"Lab2_8"        :    {"x": -10.6752548, "y": 0.00479745865, "z": 18.2659435}
"SmallOffice_6" :    {"x": -18.0052547, "y": 0.00479745865, "z": 7.155945}
"Warehouse_8"   :    {"x": -7.12525368, "y": 0.00479745865, "z": -1.4640553}
"Reception_7"   :    {"x": -3.5252552, "y": 0.00479745865, "z": 7.3959446}
"Warehouse_7"   :    {"x": -4.725254, "y": 0.00479745865, "z": -1.4640553}
"SmallOffice_7" :    {"x": -17.9752541, "y": 0.00479745865, "z": 6.035945}
"Reception_6"   :    {"x": -5.315254, "y": 0.00479745865, "z": 7.3959446}
"Lab2_5"        :    {"x": -11.4252548, "y": 0.00479745865, "z": 19.0659447}
"MainOffice_5"  :    {"x": -10.4952545, "y": 0.00479745865, "z": 5.71594524}
"SmallOffice_8" :    {"x": -18.0252533, "y": 0.00479745865, "z": 4.8459444}
#
Error Code
Scenario
Example
1
ActionSuccessful
Robot was able to carry out the command without any issues.
Robot receives an instruction “open a cabinet”. The cabinet is not locked, and it is closed. Robot opens the cabinet successfully and the cabinet’s OPENED state is now true.
2
UnsupportedAction
Robot was given a command that does not work.
If user says "open a lightswitch". The lightswitch does not have the OPENABLE property, and thus does not support this interaction.
3
UnsupportedNavigation
Robot was given a command to go somewhere that it is unable to access.
Robot is in the warehouse, and the warehouse door is closed. If user tells robot to go to the red desk in the main office, robot can not get there, so UnsupportedNavigation is returned. 

Note: If user attempts to go to an office room instead, and robot is unable to get to that office room, robot will instead navigate to the nearest door, which will return AlternateNavigationUsed instead.
4
AlreadyHoldingObject
Robot was given a command to pick up an object, but robot is already holding an object.
Robot is holding a hammer. Robot is then told to pick up a printer cartridge. AlreadyHoldingObject is returned.
5
ReceptacleIsFull
Robot was given a command to place an object on a receptacle, but that receptacle does not have available capacity for this object.
Robot is holding a hammer. It is told to place the hammer on a table that only has 3 slots, and all of the slots are occupied. ReceptacleIsFull is returned.
6
ReceptacleIsClosed
Robot was given a command to place an item in a receptacle that is OPENABLE, but its OPENED state is false.
Robot is holding an apple. It is told to place the apple in the fridge, but the fridge is closed. ReceptacleIsClosed is returned.
7
TargetInaccessible
Robot was given a command to interact with an object, but there is a wall between robot and the object.
Robot is on the outside of reception, in the main office area, but within range of the security button situated inside of reception. Robot is told to toggle the security button. Robot is technically in range, but there is a wall between robot and the object. TargetInaccessible is returned.
8
KilledByHazard
Robot is given a command that results in robot being killed by a hazard.
Robot is told to go to the warehouse door. The puddle trap is active and sparking in front of the warehouse door. Robot is killed by the hazard before reaching the warehouse door. KilledByHazard is returned.
9
TargetOutOfRange
Robot is given a command to interact with an object that exceeds the maximum allowable range for interaction.
If robot is in the main office and it is given a command to open the fridge in the break room. The distance between robot and the fridge is far greater than the allowable distance of 3 meters. TargetOutOfRange is returned.
10
AlternateNavigationUsed
Robot is given a movement command and it does successfully move, but not to the exact spot that was designated, only close to it.
Example 1: Robot is issued a command to go to a kitchen cabinet, but the drawer underneath it is open, blocking the usual spot where robot would arrive when issued such a command. AlternateNavigationUsed is returned.

Example 2: Robot is issued a command to go to the break room, but there is a door in the way. robot arrives at the door that is blocking robot’s entry to the break room instead. AlternateNavigationUsed is returned.
11
ObjectUnpowered
Robot was told to toggle an object that requires power to operate, but is currently unpowered.
Robot was issued a command to toggle the laser monitor. The lab fuse box is toggled off. The monitor is unpowered. ObjectUnpowered is returned.
12
ObjectOverloaded
Robot was told to toggle an object that has its OVERLOADED state set to true.
Robot was issued a command to toggle the laser monitor. The laser monitor is currently showing a status of OVERLOADED. ObjectOverloaded is returned.
13
InvalidCommand
Something is incorrect with the way the command has been constructed that makes it impossible to be executed.
If magnitude or command type is not defined appropriately, InvalidCommand is returned.
14
ObjectNotPickedUp
Robot was issued a command that would have required the object to have been picked up, but robot is not holding the object.
Robot is told to pour a mug of coffee into the sink. But, robot is not holding the mug. ObjectNotPickedUp is returned.
15
ArenaUnavailable
Robot was issued a command, but robot was in the process of teleporting in and booting up.
A CDF file was just loaded. Robot is still in the process of spawning in when robot is suddenly issued a command to GoTo the fridge. Robot is unable to process this command because the spawn in sequence is still occurring. ArenaUnavailable is returned.
16
IncorrectActionFormat
If action has invalid structure, IncorrectActionFormat is returned
"objectOutputType" is set to "OBJECT_MASK" and "mask" key in not available in actions, IncorrectActionFormat is returned
17
InvalidObjectClass
If action has invalid object classs name, InvalidObjectClass is returned. "ObjectOutputType" must be set to OBJECT MASK for all other objects except sticky notes. For sticky notes, it could be set to OBJECT_CLASS
If "objectOutputType" is set to "OBJECT CLASS" and classname is not set to "stickynote", InvalidObjectClass is returned.
18
ActionExecutionError
If there any exception is thrown while executing the action, ActionExecutionError is returned

19
PostProcessError
After an action is completed, if any exception is thrown during the post-processing sequence(for example, retrieving a ground truth image), PostProcessError is returned.