diff --git a/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.actions.txt b/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.actions.txt new file mode 100644 index 00000000..84185f66 --- /dev/null +++ b/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.actions.txt @@ -0,0 +1,6 @@ +RotateObject,clockwise=False,objectId=tool +RotateObject,clockwise=False,objectId=tool +RotateObject,clockwise=False,objectId=tool +RotateObject,clockwise=True,objectId=tool +RotateObject,clockwise=False,objectId=tool +RotateObject,clockwise=False,objectId=tool diff --git a/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.level1.outputs.json b/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.level1.outputs.json new file mode 100644 index 00000000..75f0a070 --- /dev/null +++ b/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.level1.outputs.json @@ -0,0 +1,72 @@ +[ + { + "head_tilt": 10, + "objects_count": 0, + "position_x": null, + "position_z": null, + "return_status": "SUCCESSFUL", + "rotation_y": null, + "step_number": 0, + "structural_objects_count": 0 + }, + { + "head_tilt": 10, + "objects_count": 0, + "position_x": null, + "position_z": null, + "return_status": "SUCCESSFUL", + "rotation_y": null, + "step_number": 1, + "structural_objects_count": 0 + }, + { + "head_tilt": 10, + "objects_count": 0, + "position_x": null, + "position_z": null, + "return_status": "OBSTRUCTED", + "rotation_y": null, + "step_number": 2, + "structural_objects_count": 0 + }, + { + "head_tilt": 10, + "objects_count": 0, + "position_x": null, + "position_z": null, + "return_status": "OBSTRUCTED", + "rotation_y": null, + "step_number": 3, + "structural_objects_count": 0 + }, + { + "head_tilt": 10, + "objects_count": 0, + "position_x": null, + "position_z": null, + "return_status": "SUCCESSFUL", + "rotation_y": null, + "step_number": 4, + "structural_objects_count": 0 + }, + { + "head_tilt": 10, + "objects_count": 0, + "position_x": null, + "position_z": null, + "return_status": "SUCCESSFUL", + "rotation_y": null, + "step_number": 5, + "structural_objects_count": 0 + }, + { + "head_tilt": 10, + "objects_count": 0, + "position_x": null, + "position_z": null, + "return_status": "OBSTRUCTED", + "rotation_y": null, + "step_number": 6, + "structural_objects_count": 0 + } +] diff --git a/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.level2.outputs.json b/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.level2.outputs.json new file mode 100644 index 00000000..75f0a070 --- /dev/null +++ b/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.level2.outputs.json @@ -0,0 +1,72 @@ +[ + { + "head_tilt": 10, + "objects_count": 0, + "position_x": null, + "position_z": null, + "return_status": "SUCCESSFUL", + "rotation_y": null, + "step_number": 0, + "structural_objects_count": 0 + }, + { + "head_tilt": 10, + "objects_count": 0, + "position_x": null, + "position_z": null, + "return_status": "SUCCESSFUL", + "rotation_y": null, + "step_number": 1, + "structural_objects_count": 0 + }, + { + "head_tilt": 10, + "objects_count": 0, + "position_x": null, + "position_z": null, + "return_status": "OBSTRUCTED", + "rotation_y": null, + "step_number": 2, + "structural_objects_count": 0 + }, + { + "head_tilt": 10, + "objects_count": 0, + "position_x": null, + "position_z": null, + "return_status": "OBSTRUCTED", + "rotation_y": null, + "step_number": 3, + "structural_objects_count": 0 + }, + { + "head_tilt": 10, + "objects_count": 0, + "position_x": null, + "position_z": null, + "return_status": "SUCCESSFUL", + "rotation_y": null, + "step_number": 4, + "structural_objects_count": 0 + }, + { + "head_tilt": 10, + "objects_count": 0, + "position_x": null, + "position_z": null, + "return_status": "SUCCESSFUL", + "rotation_y": null, + "step_number": 5, + "structural_objects_count": 0 + }, + { + "head_tilt": 10, + "objects_count": 0, + "position_x": null, + "position_z": null, + "return_status": "OBSTRUCTED", + "rotation_y": null, + "step_number": 6, + "structural_objects_count": 0 + } +] diff --git a/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.oracle.outputs.json b/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.oracle.outputs.json new file mode 100644 index 00000000..7e8d0a24 --- /dev/null +++ b/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.oracle.outputs.json @@ -0,0 +1,198 @@ +[ + { + "head_tilt": 10, + "objects": [ + { + "id": "target_soccer_ball", + "mass": 2.0, + "position_x": 0.0, + "position_z": 10.0, + "rotation_y": 0.0, + "shape": "ball" + }, + { + "id": "tool", + "mass": 6.0, + "position_x": 0.0, + "position_z": 7.4, + "rotation_y": 0.0, + "shape": "tool" + } + ], + "objects_count": 2, + "position_x": 0.0, + "position_z": 7.0, + "return_status": "SUCCESSFUL", + "rotation_y": 0.0, + "step_number": 0, + "structural_objects_count": 5 + }, + { + "head_tilt": 10, + "objects": [ + { + "id": "target_soccer_ball", + "mass": 2.0, + "position_x": 0.0, + "position_z": 10.0, + "rotation_y": 0.0, + "shape": "ball" + }, + { + "id": "tool", + "mass": 6.0, + "position_x": 0.0, + "position_z": 7.4, + "rotation_y": 355, + "shape": "tool" + } + ], + "objects_count": 2, + "position_x": 0.0, + "position_z": 7.0, + "return_status": "SUCCESSFUL", + "rotation_y": 0.0, + "step_number": 1, + "structural_objects_count": 5 + }, + { + "head_tilt": 10, + "objects": [ + { + "id": "target_soccer_ball", + "mass": 2.0, + "position_x": 0.0, + "position_z": 10.0, + "rotation_y": 0.0, + "shape": "ball" + }, + { + "id": "tool", + "mass": 6.0, + "position_x": 0.0, + "position_z": 7.4, + "rotation_y": 355, + "shape": "tool" + } + ], + "objects_count": 2, + "position_x": 0.0, + "position_z": 7.0, + "return_status": "OBSTRUCTED", + "rotation_y": 0.0, + "step_number": 2, + "structural_objects_count": 5 + }, + { + "head_tilt": 10, + "objects": [ + { + "id": "target_soccer_ball", + "mass": 2.0, + "position_x": 0.0, + "position_z": 10.0, + "rotation_y": 0.0, + "shape": "ball" + }, + { + "id": "tool", + "mass": 6.0, + "position_x": 0.0, + "position_z": 7.4, + "rotation_y": 355, + "shape": "tool" + } + ], + "objects_count": 2, + "position_x": 0.0, + "position_z": 7.0, + "return_status": "OBSTRUCTED", + "rotation_y": 0.0, + "step_number": 3, + "structural_objects_count": 5 + }, + { + "head_tilt": 10, + "objects": [ + { + "id": "target_soccer_ball", + "mass": 2.0, + "position_x": 0.0, + "position_z": 10.0, + "rotation_y": 0.0, + "shape": "ball" + }, + { + "id": "tool", + "mass": 6.0, + "position_x": 0.0, + "position_z": 7.4, + "rotation_y": 0.0, + "shape": "tool" + } + ], + "objects_count": 2, + "position_x": 0.0, + "position_z": 7.0, + "return_status": "SUCCESSFUL", + "rotation_y": 0.0, + "step_number": 4, + "structural_objects_count": 5 + }, + { + "head_tilt": 10, + "objects": [ + { + "id": "target_soccer_ball", + "mass": 2.0, + "position_x": 0.0, + "position_z": 10.0, + "rotation_y": 0.0, + "shape": "ball" + }, + { + "id": "tool", + "mass": 6.0, + "position_x": 0.0, + "position_z": 7.4, + "rotation_y": 355, + "shape": "tool" + } + ], + "objects_count": 2, + "position_x": 0.0, + "position_z": 7.0, + "return_status": "SUCCESSFUL", + "rotation_y": 0.0, + "step_number": 5, + "structural_objects_count": 5 + }, + { + "head_tilt": 10, + "objects": [ + { + "id": "target_soccer_ball", + "mass": 2.0, + "position_x": 0.0, + "position_z": 10.0, + "rotation_y": 0.0, + "shape": "ball" + }, + { + "id": "tool", + "mass": 6.0, + "position_x": 0.0, + "position_z": 7.4, + "rotation_y": 355, + "shape": "tool" + } + ], + "objects_count": 2, + "position_x": 0.0, + "position_z": 7.0, + "return_status": "OBSTRUCTED", + "rotation_y": 0.0, + "step_number": 6, + "structural_objects_count": 5 + } +] diff --git a/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.scene.json b/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.scene.json new file mode 100644 index 00000000..88bf262c --- /dev/null +++ b/integration_tests/data/218.soccer_ball_obstruct_rotate_object_tool.scene.json @@ -0,0 +1,555 @@ +{ + "goal": { + "action_list": [], + "category": "retrieval", + "description": "Find and pick up the small light black white rubber ball.", + "last_step": 5300, + "metadata": { + "target": { + "id": "target_soccer_ball" + } + } + }, + "holes": [], + "isometric": false, + "lava": [ + { + "x": -11, + "z": 8 + }, + { + "x": -11, + "z": 9 + }, + { + "x": -11, + "z": 10 + }, + { + "x": -11, + "z": 11 + }, + { + "x": -11, + "z": 12 + }, + { + "x": -10, + "z": 8 + }, + { + "x": -10, + "z": 9 + }, + { + "x": -10, + "z": 10 + }, + { + "x": -10, + "z": 11 + }, + { + "x": -10, + "z": 12 + }, + { + "x": -9, + "z": 8 + }, + { + "x": -9, + "z": 9 + }, + { + "x": -9, + "z": 10 + }, + { + "x": -9, + "z": 11 + }, + { + "x": -9, + "z": 12 + }, + { + "x": -8, + "z": 8 + }, + { + "x": -8, + "z": 9 + }, + { + "x": -8, + "z": 10 + }, + { + "x": -8, + "z": 11 + }, + { + "x": -8, + "z": 12 + }, + { + "x": -7, + "z": 8 + }, + { + "x": -7, + "z": 9 + }, + { + "x": -7, + "z": 10 + }, + { + "x": -7, + "z": 11 + }, + { + "x": -7, + "z": 12 + }, + { + "x": -6, + "z": 8 + }, + { + "x": -6, + "z": 9 + }, + { + "x": -6, + "z": 10 + }, + { + "x": -6, + "z": 11 + }, + { + "x": -6, + "z": 12 + }, + { + "x": -5, + "z": 8 + }, + { + "x": -5, + "z": 9 + }, + { + "x": -5, + "z": 10 + }, + { + "x": -5, + "z": 11 + }, + { + "x": -5, + "z": 12 + }, + { + "x": -4, + "z": 8 + }, + { + "x": -4, + "z": 9 + }, + { + "x": -4, + "z": 10 + }, + { + "x": -4, + "z": 11 + }, + { + "x": -4, + "z": 12 + }, + { + "x": -3, + "z": 8 + }, + { + "x": -3, + "z": 9 + }, + { + "x": -3, + "z": 10 + }, + { + "x": -3, + "z": 11 + }, + { + "x": -3, + "z": 12 + }, + { + "x": -2, + "z": 8 + }, + { + "x": -2, + "z": 9 + }, + { + "x": -2, + "z": 10 + }, + { + "x": -2, + "z": 11 + }, + { + "x": -2, + "z": 12 + }, + { + "x": -1, + "z": 8 + }, + { + "x": -1, + "z": 9 + }, + { + "x": -1, + "z": 10 + }, + { + "x": -1, + "z": 11 + }, + { + "x": -1, + "z": 12 + }, + { + "x": 0, + "z": 8 + }, + { + "x": 0, + "z": 9 + }, + { + "x": 0, + "z": 11 + }, + { + "x": 0, + "z": 12 + }, + { + "x": 1, + "z": 8 + }, + { + "x": 1, + "z": 9 + }, + { + "x": 1, + "z": 10 + }, + { + "x": 1, + "z": 11 + }, + { + "x": 1, + "z": 12 + }, + { + "x": 2, + "z": 8 + }, + { + "x": 2, + "z": 9 + }, + { + "x": 2, + "z": 10 + }, + { + "x": 2, + "z": 11 + }, + { + "x": 2, + "z": 12 + }, + { + "x": 3, + "z": 8 + }, + { + "x": 3, + "z": 9 + }, + { + "x": 3, + "z": 10 + }, + { + "x": 3, + "z": 11 + }, + { + "x": 3, + "z": 12 + }, + { + "x": 4, + "z": 8 + }, + { + "x": 4, + "z": 9 + }, + { + "x": 4, + "z": 10 + }, + { + "x": 4, + "z": 11 + }, + { + "x": 4, + "z": 12 + }, + { + "x": 5, + "z": 8 + }, + { + "x": 5, + "z": 9 + }, + { + "x": 5, + "z": 10 + }, + { + "x": 5, + "z": 11 + }, + { + "x": 5, + "z": 12 + }, + { + "x": 6, + "z": 8 + }, + { + "x": 6, + "z": 9 + }, + { + "x": 6, + "z": 10 + }, + { + "x": 6, + "z": 11 + }, + { + "x": 6, + "z": 12 + }, + { + "x": 7, + "z": 8 + }, + { + "x": 7, + "z": 9 + }, + { + "x": 7, + "z": 10 + }, + { + "x": 7, + "z": 11 + }, + { + "x": 7, + "z": 12 + }, + { + "x": 8, + "z": 8 + }, + { + "x": 8, + "z": 9 + }, + { + "x": 8, + "z": 10 + }, + { + "x": 8, + "z": 11 + }, + { + "x": 8, + "z": 12 + }, + { + "x": 9, + "z": 8 + }, + { + "x": 9, + "z": 9 + }, + { + "x": 9, + "z": 10 + }, + { + "x": 9, + "z": 11 + }, + { + "x": 9, + "z": 12 + }, + { + "x": 10, + "z": 8 + }, + { + "x": 10, + "z": 9 + }, + { + "x": 10, + "z": 10 + }, + { + "x": 10, + "z": 11 + }, + { + "x": 10, + "z": 12 + }, + { + "x": 11, + "z": 8 + }, + { + "x": 11, + "z": 9 + }, + { + "x": 11, + "z": 10 + }, + { + "x": 11, + "z": 11 + }, + { + "x": 11, + "z": 12 + } + ], + "name": "soccer ball should obstruct RotateObject on tool", + "objects": [ + { + "id": "target_soccer_ball", + "type": "soccer_ball", + "mass": 2.0, + "salientMaterials": ["rubber"], + "moveable": true, + "pickupable": true, + "shows": [ + { + "position": { + "x": 0.0, + "y": 0.22, + "z": 10.0 + }, + "rotation": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "stepBegin": 0, + "scale": { + "x": 2.0, + "y": 2.0, + "z": 2.0 + } + } + ], + "materials": [] + }, + { + "id": "tool", + "type": "tool_hooked_1_00_x_8_00", + "materials": ["UnityAssetStore/YughuesFreeMetalMaterials/Materials/M_YFMM_15"], + "shows": [ + { + "stepBegin": 0, + "position": { + "x": 0.0, + "y": 0.15, + "z": 7.4 + }, + "rotation": { + "x": 0, + "y": 0, + "z": 0 + }, + "scale": { + "x": 1, + "y": 1, + "z": 1 + } + } + ] + } + ], + "screenshot": false, + "version": 2, + "ceilingMaterial": "AI2-THOR/Materials/Walls/Drywall4Tiled", + "floorMaterial": "AI2-THOR/Materials/Wood/DarkWood2", + "floorTextures": [], + "intuitivePhysics": false, + "isometricFrontRight": false, + "performerStart": { + "position": { + "x": 0, + "y": 0, + "z": 7 + }, + "rotation": { + "x": 10, + "y": 0, + "z": 0 + } + }, + "roomDimensions": { + "x": 23.0, + "y": 3.0, + "z": 25.0 + }, + "wallMaterial": "Custom/Materials/RedDrywallMCS" +}