miniworld-maze 1.2.0__tar.gz → 1.3.1__tar.gz

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.

Files changed (285) hide show
  1. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/PKG-INFO +1 -1
  2. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/examples/live_control_opencv.py +2 -2
  3. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/examples/save_topdown_views.py +15 -15
  4. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/pyproject.toml +1 -1
  5. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/base_env.py +3 -0
  6. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/unified_env.py +16 -14
  7. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/environments/base_grid_rooms.py +3 -0
  8. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/LICENSE +0 -0
  9. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/README.md +0 -0
  10. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/examples/README.md +0 -0
  11. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/examples/basic_usage.py +0 -0
  12. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/examples/benchmark_rendering.py +0 -0
  13. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/examples/generate_observations.py +0 -0
  14. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/examples/observation_level_demo.py +0 -0
  15. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/__init__.py +0 -0
  16. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/__init__.py +0 -0
  17. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/constants.py +0 -0
  18. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/README.md +0 -0
  19. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/__init__.py +0 -0
  20. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/entities/__init__.py +0 -0
  21. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/entities/agent.py +0 -0
  22. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/entities/base_entity.py +0 -0
  23. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/entities/objects.py +0 -0
  24. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/entity_manager.py +0 -0
  25. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/envs/__init__.py +0 -0
  26. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/math.py +0 -0
  27. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/objmesh.py +0 -0
  28. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/occlusion_queries.py +0 -0
  29. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/opengl.py +0 -0
  30. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/params.py +0 -0
  31. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/random.py +0 -0
  32. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/rendering/__init__.py +0 -0
  33. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/rendering/drawing.py +0 -0
  34. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/rendering/framebuffer.py +0 -0
  35. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/rendering/texture.py +0 -0
  36. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/rendering_engine.py +0 -0
  37. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/room.py +0 -0
  38. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/texture_utils.py +0 -0
  39. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/airduct_grate_1.png +0 -0
  40. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/asphalt_1.png +0 -0
  41. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/beanpaste_1.png +0 -0
  42. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/beige_1.png +0 -0
  43. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/black_1.png +0 -0
  44. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/blueberry_1.png +0 -0
  45. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/brick_wall_1.png +0 -0
  46. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/cardboard_1.png +0 -0
  47. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/cardboard_2.png +0 -0
  48. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/cardboard_3.png +0 -0
  49. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/cardboard_4.png +0 -0
  50. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/ceiling_tile_noborder_1.png +0 -0
  51. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/ceiling_tiles_1.png +0 -0
  52. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/cinder_blocks_1.png +0 -0
  53. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/cobaltgreen_1.png +0 -0
  54. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/concrete_1.png +0 -0
  55. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/concrete_2.png +0 -0
  56. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/concrete_3.png +0 -0
  57. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/concrete_4.png +0 -0
  58. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/concrete_tiles_1.png +0 -0
  59. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/copperred_1.png +0 -0
  60. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/crimson_1.png +0 -0
  61. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/door_doom_1.png +0 -0
  62. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/door_doom_2.png +0 -0
  63. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/door_garage_red.png +0 -0
  64. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/door_garage_white.png +0 -0
  65. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/door_steel_brown.png +0 -0
  66. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/door_steel_grey.png +0 -0
  67. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/door_steel_red.png +0 -0
  68. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/drywall_1.png +0 -0
  69. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/floor_tiles_bw_1.png +0 -0
  70. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/floor_tiles_white.png +0 -0
  71. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/grass_1.png +0 -0
  72. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/grass_2.png +0 -0
  73. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/lava_1.png +0 -0
  74. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/lava_2.png +0 -0
  75. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/lemongrass_1.png +0 -0
  76. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/lightbeige_1.png +0 -0
  77. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/lightcobaltgreen_1.png +0 -0
  78. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/lightgray_1.png +0 -0
  79. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/lightnavyblue_1.png +0 -0
  80. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/lightskyblue_1.png +0 -0
  81. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/lime_1.png +0 -0
  82. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/logo_mila_1.png +0 -0
  83. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/magenta_1.png +0 -0
  84. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/marble_1.png +0 -0
  85. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/marble_2.png +0 -0
  86. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/metal_grill_1.png +0 -0
  87. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/metal_grill_2.png +0 -0
  88. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/morningglory_1.png +0 -0
  89. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/navyblue_1.png +0 -0
  90. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/oakbrown_1.png +0 -0
  91. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/orange_1.png +0 -0
  92. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/orchid_1.png +0 -0
  93. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/picket_fence_1.png +0 -0
  94. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/adelaide_hanscom1.license +0 -0
  95. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/adelaide_hanscom1.png +0 -0
  96. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/alessandro_allori1.license +0 -0
  97. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/alessandro_allori1.png +0 -0
  98. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/alessandro_allori2.license +0 -0
  99. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/alessandro_allori2.png +0 -0
  100. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/alexandre_cabanel1.license +0 -0
  101. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/alexandre_cabanel1.png +0 -0
  102. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/alexei_harlamov1.license +0 -0
  103. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/alexei_harlamov1.png +0 -0
  104. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/alexey_petrovich_antropov1.license +0 -0
  105. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/alexey_petrovich_antropov1.png +0 -0
  106. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/alice_pike_barney1.license +0 -0
  107. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/alice_pike_barney1.png +0 -0
  108. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/aman_theodor1.license +0 -0
  109. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/aman_theodor1.png +0 -0
  110. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/antonello_messina1.license +0 -0
  111. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/antonello_messina1.png +0 -0
  112. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/antonio_herrera_toro1.license +0 -0
  113. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/antonio_herrera_toro1.png +0 -0
  114. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/benjamin-constant1.license +0 -0
  115. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/benjamin-constant1.png +0 -0
  116. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/benoist_marie-guillemine1.license +0 -0
  117. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/benoist_marie-guillemine1.png +0 -0
  118. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/bouguereau_william-adolphe1.license +0 -0
  119. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/bouguereau_william-adolphe1.png +0 -0
  120. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/byron1.license +0 -0
  121. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/byron1.png +0 -0
  122. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/carl_fredric_breda1.license +0 -0
  123. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/carl_fredric_breda1.png +0 -0
  124. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/carl_fredric_breda2.license +0 -0
  125. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/carl_fredric_breda2.png +0 -0
  126. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/cramacj_lucas1.license +0 -0
  127. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/cramacj_lucas1.png +0 -0
  128. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/cranach_lucas2.license +0 -0
  129. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/cranach_lucas2.png +0 -0
  130. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/cristobal_rojas1.license +0 -0
  131. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/cristobal_rojas1.png +0 -0
  132. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/delacroix_eugene_ferdinand_victor1.license +0 -0
  133. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/delacroix_eugene_ferdinand_victor1.png +0 -0
  134. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/domenikos_theotokopoulos1.license +0 -0
  135. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/domenikos_theotokopoulos1.png +0 -0
  136. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/edmund_blair_leighton1.license +0 -0
  137. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/edmund_blair_leighton1.png +0 -0
  138. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/edmund_blair_leighton2.license +0 -0
  139. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/edmund_blair_leighton2.png +0 -0
  140. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/edwin_longsden_long1.license +0 -0
  141. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/edwin_longsden_long1.png +0 -0
  142. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/falero_luis_ricardo1.license +0 -0
  143. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/falero_luis_ricardo1.png +0 -0
  144. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/felix_bonfils1.license +0 -0
  145. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/felix_bonfils1.png +0 -0
  146. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/francesco_hayez1.license +0 -0
  147. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/francesco_hayez1.png +0 -0
  148. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/francisco_goya_lucientes1.license +0 -0
  149. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/francisco_goya_lucientes1.png +0 -0
  150. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/francisco_goya_lucientes2.license +0 -0
  151. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/francisco_goya_lucientes2.png +0 -0
  152. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/francisco_zurbaran1.license +0 -0
  153. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/francisco_zurbaran1.png +0 -0
  154. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/franz_von_defregger1.license +0 -0
  155. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/franz_von_defregger1.png +0 -0
  156. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/franz_von_defregger2.license +0 -0
  157. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/franz_von_defregger2.png +0 -0
  158. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/franz_von_defregger3.license +0 -0
  159. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/franz_von_defregger3.png +0 -0
  160. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/frederic_westin1.license +0 -0
  161. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/frederic_westin1.png +0 -0
  162. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/frederic_yates1.license +0 -0
  163. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/frederic_yates1.png +0 -0
  164. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/frederick_leighton1.license +0 -0
  165. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/frederick_leighton1.png +0 -0
  166. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/gaston_bussiere1.license +0 -0
  167. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/gaston_bussiere1.png +0 -0
  168. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/george_henry_hall1.license +0 -0
  169. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/george_henry_hall1.png +0 -0
  170. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/giovanni_battista_tiepolo1.license +0 -0
  171. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/giovanni_battista_tiepolo1.png +0 -0
  172. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/giovanni_bellini1.license +0 -0
  173. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/giovanni_bellini1.png +0 -0
  174. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/hans_holbein1.license +0 -0
  175. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/hans_holbein1.png +0 -0
  176. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/hayez_francesco1.license +0 -0
  177. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/hayez_francesco1.png +0 -0
  178. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/henryk_siemiradzki1.license +0 -0
  179. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/henryk_siemiradzki1.png +0 -0
  180. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/ilja_jefimowitsch_repin1.license +0 -0
  181. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/ilja_jefimowitsch_repin1.png +0 -0
  182. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/james_carrol_beckwith1.license +0 -0
  183. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/james_carrol_beckwith1.png +0 -0
  184. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/jean-baptiste-camille_corot1.license +0 -0
  185. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/jean-baptiste-camille_corot1.png +0 -0
  186. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/jean-baptiste-camille_corot2.license +0 -0
  187. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/jean-baptiste-camille_corot2.png +0 -0
  188. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/jean-leon_gerome1.license +0 -0
  189. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/jean-leon_gerome1.png +0 -0
  190. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/jean-leon_gerome2.license +0 -0
  191. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/jean-leon_gerome2.png +0 -0
  192. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/jean-leon_gerome3.license +0 -0
  193. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/jean-leon_gerome3.png +0 -0
  194. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/jean-leon_gerome4.license +0 -0
  195. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/jean-leon_gerome4.png +0 -0
  196. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/john_william_godward1.license +0 -0
  197. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/john_william_godward1.png +0 -0
  198. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/john_william_godward2.license +0 -0
  199. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/john_william_godward2.png +0 -0
  200. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/john_william_godward3.license +0 -0
  201. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/john_william_godward3.png +0 -0
  202. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/julije_klovic1.license +0 -0
  203. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/julije_klovic1.png +0 -0
  204. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/juriaen_streek1.license +0 -0
  205. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/juriaen_streek1.png +0 -0
  206. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/kiprenskij_orest_adamovic1.license +0 -0
  207. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/kiprenskij_orest_adamovic1.png +0 -0
  208. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/konstantin_makovsky1.license +0 -0
  209. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/konstantin_makovsky1.png +0 -0
  210. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/lefebvre_jules_joseph1.license +0 -0
  211. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/lefebvre_jules_joseph1.png +0 -0
  212. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/leon-francois_comerre1.license +0 -0
  213. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/leon-francois_comerre1.png +0 -0
  214. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/leopold_loffler1.license +0 -0
  215. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/leopold_loffler1.png +0 -0
  216. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/lewis_john_frederick1.license +0 -0
  217. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/lewis_john_frederick1.png +0 -0
  218. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/madrazo_garreta_raimundo1.license +0 -0
  219. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/madrazo_garreta_raimundo1.png +0 -0
  220. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/marie_bashkirtseff1.license +0 -0
  221. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/marie_bashkirtseff1.png +0 -0
  222. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/moritz_kellerhoven1.license +0 -0
  223. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/moritz_kellerhoven1.png +0 -0
  224. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/nathaniel_jocelyn1.license +0 -0
  225. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/nathaniel_jocelyn1.png +0 -0
  226. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/nikolai_alexandrowitsch_jaroschenko1.license +0 -0
  227. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/nikolai_alexandrowitsch_jaroschenko1.png +0 -0
  228. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/nils_johan_olsson_blommer1.license +0 -0
  229. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/nils_johan_olsson_blommer1.png +0 -0
  230. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/paolo_veronese1.license +0 -0
  231. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/paolo_veronese1.png +0 -0
  232. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/parmigianino1.license +0 -0
  233. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/parmigianino1.png +0 -0
  234. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/paul_cesar_helleu1.license +0 -0
  235. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/paul_cesar_helleu1.png +0 -0
  236. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/regnault_henri1.license +0 -0
  237. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/regnault_henri1.png +0 -0
  238. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/richard_bergh1.license +0 -0
  239. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/richard_bergh1.png +0 -0
  240. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/richard_bergh2.license +0 -0
  241. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/richard_bergh2.png +0 -0
  242. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/robert_dampier1.license +0 -0
  243. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/robert_dampier1.png +0 -0
  244. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/robert_lefevre1.license +0 -0
  245. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/robert_lefevre1.png +0 -0
  246. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/robert_leopold1.license +0 -0
  247. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/robert_leopold1.png +0 -0
  248. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/sichel_nathanael1.license +0 -0
  249. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/sichel_nathanael1.png +0 -0
  250. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/svetoslav_roerich1.license +0 -0
  251. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/svetoslav_roerich1.png +0 -0
  252. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/velazquez_diego1.license +0 -0
  253. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/velazquez_diego1.png +0 -0
  254. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/viktor_vasnetsov1.license +0 -0
  255. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/viktor_vasnetsov1.png +0 -0
  256. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/william-adolphe_bouguereau1.license +0 -0
  257. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/portraits/william-adolphe_bouguereau1.png +0 -0
  258. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/realblueberry_1.png +0 -0
  259. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/redbean_1.png +0 -0
  260. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/rock_1.png +0 -0
  261. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/seablue_1.png +0 -0
  262. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/silver_1.png +0 -0
  263. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/skyblue_1.png +0 -0
  264. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/slime_1.png +0 -0
  265. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/stucco_1.png +0 -0
  266. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/sunnyyellow_1.png +0 -0
  267. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/turquoise_1.png +0 -0
  268. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/violet_1.png +0 -0
  269. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/water_1.png +0 -0
  270. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/water_2.png +0 -0
  271. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/water_3.png +0 -0
  272. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/white_1.png +0 -0
  273. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/wood_1.png +0 -0
  274. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/wood_2.png +0 -0
  275. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/textures/wood_planks_1.png +0 -0
  276. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/utils.py +0 -0
  277. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/miniworld_gymnasium/wrappers.py +0 -0
  278. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/core/observation_types.py +0 -0
  279. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/environments/__init__.py +0 -0
  280. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/environments/factory.py +0 -0
  281. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/environments/nine_rooms.py +0 -0
  282. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/environments/spiral_nine_rooms.py +0 -0
  283. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/environments/twenty_five_rooms.py +0 -0
  284. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/tools/__init__.py +0 -0
  285. {miniworld_maze-1.2.0 → miniworld_maze-1.3.1}/src/miniworld_maze/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: miniworld-maze
3
- Version: 1.2.0
3
+ Version: 1.3.1
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
@@ -215,9 +215,9 @@ class OpenCVLiveController:
215
215
  Returns:
216
216
  BGR image array for OpenCV or None if failed
217
217
  """
218
- if self.current_info is not None and "FIRST_PERSON" in self.current_info:
218
+ if self.current_info is not None and ObservationLevel.FIRST_PERSON in self.current_info:
219
219
  # Get first person observation from info
220
- obs_hwc = self.current_info["FIRST_PERSON"]
220
+ obs_hwc = self.current_info[ObservationLevel.FIRST_PERSON]
221
221
 
222
222
  # Convert RGB to BGR for OpenCV
223
223
  obs_bgr = cv2.cvtColor(obs_hwc, cv2.COLOR_RGB2BGR)
@@ -8,12 +8,11 @@ This script demonstrates:
8
8
  3. Executing 1000 random steps and visualizing agent trajectory on top-down view
9
9
  """
10
10
 
11
- from typing import List, Tuple
11
+ from typing import List
12
12
  import numpy as np
13
13
  from PIL import Image
14
14
  import gymnasium as gym
15
15
  import matplotlib.pyplot as plt
16
- import matplotlib.patches as patches
17
16
 
18
17
  from miniworld_maze import ObservationLevel
19
18
  import miniworld_maze # noqa: F401
@@ -24,10 +23,10 @@ def save_single_topdown_view(env: gym.Env) -> str:
24
23
  print("🎯 Generating single top-down full view...")
25
24
 
26
25
  # Reset environment to ensure consistent state
27
- env.reset(seed=42)
26
+ _, info = env.reset(seed=42)
28
27
 
29
- # Use render_top_view directly for full view
30
- obs_image = env.unwrapped.render_top_view(POMDP=False)
28
+ # Get top-down full view from info dict
29
+ obs_image = info[ObservationLevel.TOP_DOWN_FULL]
31
30
 
32
31
  # Save the observation as PNG
33
32
  filename = "single_topdown_view.png"
@@ -89,7 +88,7 @@ def collect_trajectory_and_visualize(env: gym.Env) -> str:
89
88
  print("🔍 Collecting agent trajectory over 1000 random steps...")
90
89
 
91
90
  # Reset environment
92
- obs, _ = env.reset(seed=42)
91
+ obs, info = env.reset(seed=42)
93
92
 
94
93
  # Get scene extent from environment using the new public method
95
94
  env_unwrapped = env.unwrapped
@@ -103,17 +102,17 @@ def collect_trajectory_and_visualize(env: gym.Env) -> str:
103
102
 
104
103
  # Execute 1000 random steps
105
104
  for step in range(1000):
106
- # Get current agent position
107
- agent_pos = env_unwrapped.agent.pos
108
- trajectory_positions.append((agent_pos[0], agent_pos[2])) # x, z coordinates
109
-
110
- # Take random action
105
+ # Take random action first to get info dict with position
111
106
  action = env.action_space.sample()
112
- obs, reward, terminated, truncated, _ = env.step(action)
107
+ _, _, terminated, truncated, info = env.step(action)
108
+
109
+ # Get current agent position from info dict
110
+ agent_pos = info["pos"]
111
+ trajectory_positions.append((agent_pos[0], agent_pos[1])) # x, z coordinates
113
112
 
114
113
  # Reset if episode ended
115
114
  if terminated or truncated:
116
- obs, _ = env.reset()
115
+ obs, info = env.reset()
117
116
 
118
117
  if (step + 1) % 200 == 0:
119
118
  print(f" Completed {step + 1}/1000 steps")
@@ -122,7 +121,7 @@ def collect_trajectory_and_visualize(env: gym.Env) -> str:
122
121
 
123
122
  # Get top-down view for background
124
123
  env.reset(seed=42)
125
- background_image = env_unwrapped.render_top_view(POMDP=False)
124
+ background_image = env.unwrapped.render_top_view(POMDP=False)
126
125
 
127
126
  # Create matplotlib figure
128
127
  fig, ax = plt.subplots(1, 1, figsize=(12, 12))
@@ -175,12 +174,13 @@ def main() -> None:
175
174
  print("🖼️ Top-Down View Generator")
176
175
  print("=" * 50)
177
176
 
178
- # Create a single environment instance
177
+ # Create a single environment instance with info_obs for top-down full view
179
178
  env = gym.make(
180
179
  "NineRooms-v0",
181
180
  obs_level=ObservationLevel.TOP_DOWN_PARTIAL,
182
181
  obs_width=256,
183
182
  obs_height=256,
183
+ info_obs=[ObservationLevel.TOP_DOWN_FULL],
184
184
  )
185
185
 
186
186
  try:
@@ -4,7 +4,7 @@ build-backend = "uv_build"
4
4
 
5
5
  [project]
6
6
  name = "miniworld-maze"
7
- version = "1.2.0"
7
+ version = "1.3.1"
8
8
  description = "Multi-room maze environments from the DrStrategy paper. Provides NineRooms-v0, SpiralNineRooms-v0, and TwentyFiveRooms-v0 gymnasium environments."
9
9
  readme = "README.md"
10
10
  license = {file = "LICENSE"}
@@ -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()
@@ -340,8 +349,8 @@ class UnifiedMiniWorldEnv(gym.Env):
340
349
  for obs_level in self.info_obs:
341
350
  # Generate observation with the specified level
342
351
  info_obs = self._generate_observation(observation_level=obs_level)
343
- # Use the observation level name as key
344
- info[str(obs_level)] = info_obs
352
+ # Use the observation level enum as key
353
+ info[obs_level] = info_obs
345
354
 
346
355
  # Return first observation with info dict for Gymnasium compatibility
347
356
  return obs, info
@@ -575,19 +584,14 @@ class UnifiedMiniWorldEnv(gym.Env):
575
584
 
576
585
  def _calculate_step_results(self, observation):
577
586
  """Calculate reward, termination, and info for step."""
578
- # Generate topdown view for info if needed
579
- topdown = None
580
- if self.obs_level != 2: # Not TOP_DOWN_FULL
581
- topdown = self.render_top_view(POMDP=False, frame_buffer=self.topdown_fb)
582
-
583
587
  # Generate additional observations for info dictionary if specified
584
588
  info = {}
585
589
  if self.info_obs is not None:
586
590
  for obs_level in self.info_obs:
587
591
  # Generate observation with the specified level
588
592
  info_obs = self._generate_observation(observation_level=obs_level)
589
- # Use the observation level name as key
590
- info[str(obs_level)] = info_obs
593
+ # Use the observation level enum as key
594
+ info[obs_level] = info_obs
591
595
 
592
596
  # Check termination
593
597
  if self.step_count >= self.max_episode_steps:
@@ -595,8 +599,7 @@ class UnifiedMiniWorldEnv(gym.Env):
595
599
  reward = 0
596
600
  info.update(
597
601
  {
598
- "pos": self.agent.pos,
599
- "mdp_view": topdown if topdown is not None else observation,
602
+ "pos": np.array([self.agent.pos[0], self.agent.pos[2]]),
600
603
  }
601
604
  )
602
605
  else:
@@ -604,8 +607,7 @@ class UnifiedMiniWorldEnv(gym.Env):
604
607
  terminated = False
605
608
  info.update(
606
609
  {
607
- "pos": self.agent.pos,
608
- "mdp_view": topdown if topdown is not None else observation,
610
+ "pos": np.array([self.agent.pos[0], self.agent.pos[2]]),
609
611
  }
610
612
  )
611
613
 
@@ -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
 
File without changes
File without changes