miniworld-maze 1.2.0__py3-none-any.whl → 1.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of miniworld-maze might be problematic. Click here for more details.

@@ -21,6 +21,7 @@ class MiniWorldEnv(UnifiedMiniWorldEnv):
21
21
  window_height=600,
22
22
  params=DEFAULT_PARAMS,
23
23
  domain_rand=False,
24
+ render_mode=None,
24
25
  ):
25
26
  """
26
27
  Initialize base MiniWorld environment.
@@ -33,6 +34,7 @@ class MiniWorldEnv(UnifiedMiniWorldEnv):
33
34
  window_height: Window height for human rendering
34
35
  params: Environment parameters for domain randomization
35
36
  domain_rand: Whether to enable domain randomization
37
+ render_mode: Render mode ("human", "rgb_array", or None)
36
38
  """
37
39
  # Mark this as a base environment (not custom) for background color handling
38
40
  self._is_custom_env = False
@@ -49,4 +51,5 @@ class MiniWorldEnv(UnifiedMiniWorldEnv):
49
51
  window_height=window_height,
50
52
  params=params,
51
53
  domain_rand=domain_rand,
54
+ render_mode=render_mode,
52
55
  )
@@ -63,7 +63,7 @@ class UnifiedMiniWorldEnv(gym.Env):
63
63
  both the enhanced features of CustomMiniWorldEnv and the legacy BaseEnv functionality.
64
64
  """
65
65
 
66
- metadata = {"render.modes": ["human", "rgb_array"], "video.frames_per_second": 30}
66
+ metadata = {"render_modes": ["human", "rgb_array"], "video.frames_per_second": 30}
67
67
 
68
68
  # Enumeration of possible actions
69
69
  class Actions(IntEnum):
@@ -98,6 +98,7 @@ class UnifiedMiniWorldEnv(gym.Env):
98
98
  params=DEFAULT_PARAMS,
99
99
  domain_rand=False,
100
100
  info_obs: Optional[List[ObservationLevel]] = None,
101
+ render_mode=None,
101
102
  ):
102
103
  """
103
104
  Initialize unified MiniWorld environment.
@@ -114,6 +115,7 @@ class UnifiedMiniWorldEnv(gym.Env):
114
115
  params: Environment parameters for domain randomization
115
116
  domain_rand: Whether to enable domain randomization
116
117
  info_obs: List of observation levels to include in info dictionary
118
+ render_mode: Render mode ("human", "rgb_array", or None)
117
119
  """
118
120
  # Store configuration
119
121
  self.obs_level = obs_level
@@ -123,6 +125,13 @@ class UnifiedMiniWorldEnv(gym.Env):
123
125
  self.params = params
124
126
  self.domain_rand = domain_rand
125
127
  self.info_obs = info_obs
128
+ self.render_mode = render_mode
129
+
130
+ # Validate render_mode
131
+ if render_mode is not None and render_mode not in self.metadata["render_modes"]:
132
+ raise ValueError(
133
+ f"render_mode must be one of {self.metadata['render_modes']}, got {render_mode}"
134
+ )
126
135
 
127
136
  # Setup action space
128
137
  self._setup_action_space()
@@ -46,6 +46,7 @@ class GridRoomsEnvironment(UnifiedMiniWorldEnv):
46
46
  agent_mode: Optional[str] = None,
47
47
  obs_width: int = DEFAULT_OBS_WIDTH,
48
48
  obs_height: int = DEFAULT_OBS_HEIGHT,
49
+ render_mode=None,
49
50
  **kwargs,
50
51
  ):
51
52
  """
@@ -64,6 +65,7 @@ class GridRoomsEnvironment(UnifiedMiniWorldEnv):
64
65
  agent_mode: Agent rendering mode ('triangle', 'circle', 'empty')
65
66
  obs_width: Observation width in pixels (defaults to DEFAULT_OBS_WIDTH)
66
67
  obs_height: Observation height in pixels (defaults to DEFAULT_OBS_HEIGHT)
68
+ render_mode: Render mode ("human", "rgb_array", or None)
67
69
  **kwargs: Additional arguments passed to parent class
68
70
  """
69
71
 
@@ -120,6 +122,7 @@ class GridRoomsEnvironment(UnifiedMiniWorldEnv):
120
122
  agent_mode=self.agent_mode,
121
123
  obs_width=obs_width,
122
124
  obs_height=obs_height,
125
+ render_mode=render_mode,
123
126
  **kwargs,
124
127
  )
125
128
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: miniworld-maze
3
- Version: 1.2.0
3
+ Version: 1.3.0
4
4
  Summary: Multi-room maze environments from the DrStrategy paper. Provides NineRooms-v0, SpiralNineRooms-v0, and TwentyFiveRooms-v0 gymnasium environments.
5
5
  Keywords: reinforcement-learning,environment,gymnasium,multi-room-maze,drstrategy,maze-navigation,partial-observability,3d-environments
6
6
  Author: Tim Joseph
@@ -3,7 +3,7 @@ miniworld_maze/core/__init__.py,sha256=5BA4WKXQjrG55TNaEid2JGrnf1KQniJZ1HhRqovM1
3
3
  miniworld_maze/core/constants.py,sha256=UXqmuvsT9ww1GljW74lWPPP9XxVmvti-8JfM_RBSoWQ,4314
4
4
  miniworld_maze/core/miniworld_gymnasium/README.md,sha256=kkZgkRKBdgixpot3uHuiBFlRIKRFIVBVfXwu68XTEv0,74
5
5
  miniworld_maze/core/miniworld_gymnasium/__init__.py,sha256=ALOqr4SCVk9I9bmxyoU0Du8LUPE_57jIyZuV4QhOcBc,159
6
- miniworld_maze/core/miniworld_gymnasium/base_env.py,sha256=heoJxEw_GGEHSzU75MWgqRkWARY3lgTgwNE9Zp1P_YA,1795
6
+ miniworld_maze/core/miniworld_gymnasium/base_env.py,sha256=K2L5r4gG2k4fEknFqRJ7f-b2S0Uj5QhanS-MLi6ncVc,1927
7
7
  miniworld_maze/core/miniworld_gymnasium/entities/__init__.py,sha256=gbMJcFeasvlRSIuXWyOYO-MhW0JKKY5ZNxF5TMsWJ5c,262
8
8
  miniworld_maze/core/miniworld_gymnasium/entities/agent.py,sha256=U3Zt2Hk21rJSdzPCBj46-N930n7XAkA9qo_fKbezn2k,3153
9
9
  miniworld_maze/core/miniworld_gymnasium/entities/base_entity.py,sha256=ox2k3rf64Y2mp4S0mcpNpPUg0QeUuJ7LVoduvBuLXDg,3657
@@ -260,18 +260,18 @@ miniworld_maze/core/miniworld_gymnasium/textures/white_1.png,sha256=wRrgs92I_Ids
260
260
  miniworld_maze/core/miniworld_gymnasium/textures/wood_1.png,sha256=XRZyIN34HFo14olbxRcsHGrzCAFqUlowc6nLR22IFBE,184713
261
261
  miniworld_maze/core/miniworld_gymnasium/textures/wood_2.png,sha256=qSDHB-ZO11JJLQuiQse-0edpbuTg1YO-eIBhdTvNUhc,93121
262
262
  miniworld_maze/core/miniworld_gymnasium/textures/wood_planks_1.png,sha256=E4SNN1s4yOtkLfZFQy905eip6KvDWnnPUrpS82FxMAg,847259
263
- miniworld_maze/core/miniworld_gymnasium/unified_env.py,sha256=B7kfG6axiL05o3kLiBvE6O1Q7kB8PaLdlAt1-Sksv0I,46529
263
+ miniworld_maze/core/miniworld_gymnasium/unified_env.py,sha256=7A4sAmMpopLfKMXtZ4jzbMlFJbzeu9Abv7hGYVbvOIA,46925
264
264
  miniworld_maze/core/miniworld_gymnasium/utils.py,sha256=9cfpg4qYz-Esxvu8nTMPFJc-Tl0TRxTrX6cfg0YuK_o,1007
265
265
  miniworld_maze/core/miniworld_gymnasium/wrappers.py,sha256=cD0nGSJYNU96zoWv63aEiKd986POhtHfGGEpNpRL5ec,122
266
266
  miniworld_maze/core/observation_types.py,sha256=Co8mEIXzIgk0MLx6tqeBd1EE0PuZOL1gbZwobiEde08,1316
267
267
  miniworld_maze/environments/__init__.py,sha256=DKld5MQU7x9eNL6BlxIettA44bCiIn2zIpYECDCNxoQ,331
268
- miniworld_maze/environments/base_grid_rooms.py,sha256=j4LnyUv0YjHlCLfjqX3fyoXUOOyCr4e3_Pdj-sM3FHo,14753
268
+ miniworld_maze/environments/base_grid_rooms.py,sha256=--tm6t9cHn444xJX9N3Md-4YApK38a2dQi7mnggevbI,14885
269
269
  miniworld_maze/environments/factory.py,sha256=Zk26JawsMgSLMgvSnQxFhQCD8yMH76HgqFtogzWFfqY,1333
270
270
  miniworld_maze/environments/nine_rooms.py,sha256=Ct96cKtSt1_nLNI5RBUhwqdNUQq1rHfBJ3aB5Igbdow,1794
271
271
  miniworld_maze/environments/spiral_nine_rooms.py,sha256=a_pUuv-ghez8h76Z7YsHkQoLXsQ-w9azKLjEjO4uKmA,1749
272
272
  miniworld_maze/environments/twenty_five_rooms.py,sha256=MewKPDHDilscQGTT3aGRrSHvo4uFgHHAOrnJMrHaezQ,2598
273
273
  miniworld_maze/tools/__init__.py,sha256=XiReXrJIcBKvDVyPZrKPq1mckJs0_WC7q_RmdXXcKHs,55
274
274
  miniworld_maze/utils.py,sha256=HTOkfRq72oOC844gVXjWMH1ox7wdSxfCS6oTrWBw05Q,7523
275
- miniworld_maze-1.2.0.dist-info/WHEEL,sha256=NHRAbdxxzyL9K3IO2LjmlNqKSyPZnKv2BD16YYVKo18,79
276
- miniworld_maze-1.2.0.dist-info/METADATA,sha256=QHJBCKSCHQr2u-Utcck1qMOffK1Cc6T0sV2k6_H7OAE,9657
277
- miniworld_maze-1.2.0.dist-info/RECORD,,
275
+ miniworld_maze-1.3.0.dist-info/WHEEL,sha256=NHRAbdxxzyL9K3IO2LjmlNqKSyPZnKv2BD16YYVKo18,79
276
+ miniworld_maze-1.3.0.dist-info/METADATA,sha256=qKeYDRC9Evc7PtegEs0PVFYy7fMgKlqNZPiFf3GnZkk,9657
277
+ miniworld_maze-1.3.0.dist-info/RECORD,,