General Information

The minerl package includes several environments as follows. This page describes each of the included environments, provides usage samples, and describes the exact action and observation space provided by each environment!

Note

All environments offer a default no-op action via env.action_space.no_op() and a random action via env.action_space.sample().

Observation Space

Most environments use the same observation space (just an RGB image):

Dict(pov:Box(low=0, high=255, shape=(360, 640, 3)))

Action Space

Most environments use the same action space, which is a dictionary containing a multitude of different actions. Note that Discrete and Box are actions spaces defined by Gym.

Dict({
    "ESC": "Discrete(2)",
    "attack": "Discrete(2)",
    "back": "Discrete(2)",
    "camera": "Box(low=-180.0, high=180.0, shape=(2,))",
    "drop": "Discrete(2)",
    "forward": "Discrete(2)",
    "hotbar.1": "Discrete(2)",
    "hotbar.2": "Discrete(2)",
    "hotbar.3": "Discrete(2)",
    "hotbar.4": "Discrete(2)",
    "hotbar.5": "Discrete(2)",
    "hotbar.6": "Discrete(2)",
    "hotbar.7": "Discrete(2)",
    "hotbar.8": "Discrete(2)",
    "hotbar.9": "Discrete(2)",
    "inventory": "Discrete(2)",
    "jump": "Discrete(2)",
    "left": "Discrete(2)",
    "pickItem": "Discrete(2)",
    "right": "Discrete(2)",
    "sneak": "Discrete(2)",
    "sprint": "Discrete(2)",
    "swapHands": "Discrete(2)",
    "use": "Discrete(2)"
})

Here is an example action:

{"ESC":0, "camera":[10, 45], "swapHands":1}

ESC

The ESC action may be used in some environments to end the episode (e.g., BASALT environments). Otherwise it does nothing.

inventory

The inventory opens the inventory GUI. This will yield an observation image something like the following:

../_images/inventory.jpg

camera

This action changes the orientation of the agent’s heading by the corresponding number of degrees. The head changes its orientation pitch by the first component and its yaw by the second component. Both components are limited to [-180, 180] inclusive.

pickItem

When an agent looks at a block and executes this action, if that block type is in the agents inventory, it will be put it into the agent’s main hand.

swapHands

Swaps the items in agent main hand and secondary slot.