Open rbankosegger opened 7 months ago
Could you provide an example image for a given seed with and without the fix
Here is an example. I believe this bug cannot occur "in the wild" because width=height for all gym-registered environments. But it might become an issue if someone decides to publish a non-square environment of this type.
from minigrid.envs.doorkey import DoorKeyEnv
env = DoorKeyEnv(render_mode='human', size=6)
env.reset(seed=1)
env._gen_grid(6,4)
env.render()
import time
time.sleep(100)
Ahh, that makes sense. Could you make a PR with this fix?
Consider the lines
From:
https://github.com/Farama-Foundation/Minigrid/blame/617e4908e20fd08e4e135421cd47d52018a3148c/minigrid/envs/doorkey.py#L94
The variable
doorIdx
determines the y-coordinate of the door, the sampling of which should depend on the grid height, not its width. In situations where width > height, the door might be placed outside of the grid dimension.Suggested fix: Replace by