mettagrid 0.2.0.7__tar.gz → 0.2.0.36__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.
Files changed (1292) hide show
  1. mettagrid-0.2.0.36/.bazelrc +93 -0
  2. mettagrid-0.2.0.36/.clang-format +23 -0
  3. mettagrid-0.2.0.36/.clang-tidy +19 -0
  4. mettagrid-0.2.0.36/.gitignore +7 -0
  5. mettagrid-0.2.0.36/BUILD.bazel +46 -0
  6. mettagrid-0.2.0.36/CPPLINT.cfg +2 -0
  7. mettagrid-0.2.0.36/MANIFEST.in +15 -0
  8. mettagrid-0.2.0.36/MODULE.bazel +44 -0
  9. mettagrid-0.2.0.36/Makefile +58 -0
  10. mettagrid-0.2.0.36/PKG-INFO +366 -0
  11. mettagrid-0.2.0.36/README.md +345 -0
  12. mettagrid-0.2.0.36/bazel_build.py +247 -0
  13. mettagrid-0.2.0.36/benchmarks/test_mettagrid_env_benchmark.cpp +302 -0
  14. mettagrid-0.2.0.36/benchmarks/test_mettagrid_env_benchmark.py +151 -0
  15. mettagrid-0.2.0.36/configs/README.md +4 -0
  16. mettagrid-0.2.0.36/configs/maps/navigation_sequence/boxout.map +28 -0
  17. mettagrid-0.2.0.36/configs/maps/navigation_sequence/choose_wisely.map +39 -0
  18. mettagrid-0.2.0.36/configs/maps/navigation_sequence/corners.map +28 -0
  19. mettagrid-0.2.0.36/configs/maps/navigation_sequence/corridors.map +35 -0
  20. mettagrid-0.2.0.36/configs/maps/navigation_sequence/cylinder.map +45 -0
  21. mettagrid-0.2.0.36/configs/maps/navigation_sequence/cylinder_easy.map +30 -0
  22. mettagrid-0.2.0.36/configs/maps/navigation_sequence/easy_memory.map +43 -0
  23. mettagrid-0.2.0.36/configs/maps/navigation_sequence/emptyspace_outofsight.map +56 -0
  24. mettagrid-0.2.0.36/configs/maps/navigation_sequence/hall_of_mirrors.map +36 -0
  25. mettagrid-0.2.0.36/configs/maps/navigation_sequence/hard_memory.map +74 -0
  26. mettagrid-0.2.0.36/configs/maps/navigation_sequence/honeypot.map +34 -0
  27. mettagrid-0.2.0.36/configs/maps/navigation_sequence/journey_home.map +41 -0
  28. mettagrid-0.2.0.36/configs/maps/navigation_sequence/knotty.map +38 -0
  29. mettagrid-0.2.0.36/configs/maps/navigation_sequence/labyrinth.map +35 -0
  30. mettagrid-0.2.0.36/configs/maps/navigation_sequence/little_landmark_easy.map +24 -0
  31. mettagrid-0.2.0.36/configs/maps/navigation_sequence/little_landmark_hard.map +29 -0
  32. mettagrid-0.2.0.36/configs/maps/navigation_sequence/lobster_legs.map +52 -0
  33. mettagrid-0.2.0.36/configs/maps/navigation_sequence/lobster_legs_cues.map +56 -0
  34. mettagrid-0.2.0.36/configs/maps/navigation_sequence/medium_memory.map +52 -0
  35. mettagrid-0.2.0.36/configs/maps/navigation_sequence/memory3.map +25 -0
  36. mettagrid-0.2.0.36/configs/maps/navigation_sequence/memory_palace.map +32 -0
  37. mettagrid-0.2.0.36/configs/maps/navigation_sequence/memory_swirls.map +30 -0
  38. mettagrid-0.2.0.36/configs/maps/navigation_sequence/memory_swirls_hard.map +39 -0
  39. mettagrid-0.2.0.36/configs/maps/navigation_sequence/obstacles0.map +32 -0
  40. mettagrid-0.2.0.36/configs/maps/navigation_sequence/obstacles1.map +41 -0
  41. mettagrid-0.2.0.36/configs/maps/navigation_sequence/obstacles2.map +34 -0
  42. mettagrid-0.2.0.36/configs/maps/navigation_sequence/obstacles3.map +39 -0
  43. mettagrid-0.2.0.36/configs/maps/navigation_sequence/passing_things.map +41 -0
  44. mettagrid-0.2.0.36/configs/maps/navigation_sequence/radial_large.map +40 -0
  45. mettagrid-0.2.0.36/configs/maps/navigation_sequence/radial_maze.map +32 -0
  46. mettagrid-0.2.0.36/configs/maps/navigation_sequence/radial_mini.map +20 -0
  47. mettagrid-0.2.0.36/configs/maps/navigation_sequence/radial_small.map +28 -0
  48. mettagrid-0.2.0.36/configs/maps/navigation_sequence/rooms.map +56 -0
  49. mettagrid-0.2.0.36/configs/maps/navigation_sequence/spacey_memory.map +34 -0
  50. mettagrid-0.2.0.36/configs/maps/navigation_sequence/spiral_chamber.map +39 -0
  51. mettagrid-0.2.0.36/configs/maps/navigation_sequence/swirls.map +34 -0
  52. mettagrid-0.2.0.36/configs/maps/navigation_sequence/tease.map +53 -0
  53. mettagrid-0.2.0.36/configs/maps/navigation_sequence/tease_small.map +26 -0
  54. mettagrid-0.2.0.36/configs/maps/navigation_sequence/thecube.map +28 -0
  55. mettagrid-0.2.0.36/configs/maps/navigation_sequence/venture_out.map +35 -0
  56. mettagrid-0.2.0.36/configs/maps/navigation_sequence/walkaround.map +28 -0
  57. mettagrid-0.2.0.36/configs/maps/navigation_sequence/walls_outofsight.map +30 -0
  58. mettagrid-0.2.0.36/configs/maps/navigation_sequence/walls_withinsight.map +19 -0
  59. mettagrid-0.2.0.36/configs/maps/navigation_sequence/wanderout.map +38 -0
  60. mettagrid-0.2.0.36/configs/maps/navigation_sequence/which_way.map +19 -0
  61. mettagrid-0.2.0.36/configs/maps/navigation_sequence/you_shall_not_pass.map +44 -0
  62. mettagrid-0.2.0.36/configs/maps/object_use/shoot_out.map +20 -0
  63. mettagrid-0.2.0.36/configs/maps/object_use/swap_in.map +20 -0
  64. mettagrid-0.2.0.36/configs/maps/object_use/swap_out.map +20 -0
  65. mettagrid-0.2.0.36/cpp/BUILD.bazel +63 -0
  66. mettagrid-0.2.0.36/cpp/README.md +3 -0
  67. mettagrid-0.2.0.36/cpp/bindings/mettagrid_c.cpp +992 -0
  68. mettagrid-0.2.0.36/cpp/bindings/mettagrid_c.hpp +173 -0
  69. mettagrid-0.2.0.36/cpp/include/mettagrid/actions/action_handler.hpp +241 -0
  70. mettagrid-0.2.0.36/cpp/include/mettagrid/actions/attack.hpp +218 -0
  71. mettagrid-0.2.0.36/cpp/include/mettagrid/actions/change_vibe.hpp +66 -0
  72. mettagrid-0.2.0.36/cpp/include/mettagrid/actions/move.hpp +104 -0
  73. mettagrid-0.2.0.36/cpp/include/mettagrid/actions/move_config.hpp +36 -0
  74. mettagrid-0.2.0.36/cpp/include/mettagrid/actions/noop.hpp +26 -0
  75. mettagrid-0.2.0.36/cpp/include/mettagrid/actions/orientation.hpp +102 -0
  76. mettagrid-0.2.0.36/cpp/include/mettagrid/actions/resource_mod.hpp +154 -0
  77. mettagrid-0.2.0.36/cpp/include/mettagrid/config/mettagrid_config.hpp +153 -0
  78. mettagrid-0.2.0.36/cpp/include/mettagrid/config/observation_features.hpp +112 -0
  79. mettagrid-0.2.0.36/cpp/include/mettagrid/core/grid.hpp +102 -0
  80. mettagrid-0.2.0.36/cpp/include/mettagrid/core/grid_object.hpp +89 -0
  81. mettagrid-0.2.0.36/cpp/include/mettagrid/core/types.hpp +65 -0
  82. mettagrid-0.2.0.36/cpp/include/mettagrid/objects/agent.hpp +81 -0
  83. mettagrid-0.2.0.36/cpp/include/mettagrid/objects/agent_config.hpp +113 -0
  84. mettagrid-0.2.0.36/cpp/include/mettagrid/objects/assembler.hpp +520 -0
  85. mettagrid-0.2.0.36/cpp/include/mettagrid/objects/assembler_config.hpp +58 -0
  86. mettagrid-0.2.0.36/cpp/include/mettagrid/objects/chest.hpp +139 -0
  87. mettagrid-0.2.0.36/cpp/include/mettagrid/objects/chest_config.hpp +48 -0
  88. mettagrid-0.2.0.36/cpp/include/mettagrid/objects/constants.hpp +17 -0
  89. mettagrid-0.2.0.36/cpp/include/mettagrid/objects/has_inventory.hpp +42 -0
  90. mettagrid-0.2.0.36/cpp/include/mettagrid/objects/has_vibe.hpp +20 -0
  91. mettagrid-0.2.0.36/cpp/include/mettagrid/objects/inventory.hpp +43 -0
  92. mettagrid-0.2.0.36/cpp/include/mettagrid/objects/inventory_config.hpp +30 -0
  93. mettagrid-0.2.0.36/cpp/include/mettagrid/objects/protocol.hpp +38 -0
  94. mettagrid-0.2.0.36/cpp/include/mettagrid/objects/wall.hpp +55 -0
  95. mettagrid-0.2.0.36/cpp/include/mettagrid/renderer/hermes.hpp +57 -0
  96. mettagrid-0.2.0.36/cpp/include/mettagrid/systems/clipper.hpp +241 -0
  97. mettagrid-0.2.0.36/cpp/include/mettagrid/systems/clipper_config.hpp +38 -0
  98. mettagrid-0.2.0.36/cpp/include/mettagrid/systems/observation_encoder.hpp +115 -0
  99. mettagrid-0.2.0.36/cpp/include/mettagrid/systems/packed_coordinate.hpp +172 -0
  100. mettagrid-0.2.0.36/cpp/include/mettagrid/systems/stats_tracker.hpp +67 -0
  101. mettagrid-0.2.0.36/cpp/src/mettagrid/config/observation_features.cpp +36 -0
  102. mettagrid-0.2.0.36/cpp/src/mettagrid/objects/agent.cpp +204 -0
  103. mettagrid-0.2.0.36/cpp/src/mettagrid/objects/has_inventory.cpp +118 -0
  104. mettagrid-0.2.0.36/cpp/src/mettagrid/objects/inventory.cpp +94 -0
  105. mettagrid-0.2.0.36/demo.py +35 -0
  106. mettagrid-0.2.0.36/demos/README.md +218 -0
  107. mettagrid-0.2.0.36/demos/demo_train_pettingzoo.py +231 -0
  108. mettagrid-0.2.0.36/demos/demo_train_puffer.py +271 -0
  109. mettagrid-0.2.0.36/docs/actions.md +167 -0
  110. mettagrid-0.2.0.36/docs/observations.md +121 -0
  111. mettagrid-0.2.0.36/docs/simulator_api.md +477 -0
  112. mettagrid-0.2.0.36/lint/README.md +67 -0
  113. mettagrid-0.2.0.36/nim/mettascope/AGENTS.md +167 -0
  114. mettagrid-0.2.0.36/nim/mettascope/README.md +28 -0
  115. mettagrid-0.2.0.36/nim/mettascope/bindings/bindings.nim +95 -0
  116. mettagrid-0.2.0.36/nim/mettascope/bindings/bindings.nims +16 -0
  117. mettagrid-0.2.0.36/nim/mettascope/cors_http_server.py +57 -0
  118. mettagrid-0.2.0.36/nim/mettascope/data/actions/arrow.png +0 -0
  119. mettagrid-0.2.0.36/nim/mettascope/data/actions/attack1.png +0 -0
  120. mettagrid-0.2.0.36/nim/mettascope/data/actions/attack2.png +0 -0
  121. mettagrid-0.2.0.36/nim/mettascope/data/actions/attack3.png +0 -0
  122. mettagrid-0.2.0.36/nim/mettascope/data/actions/attack4.png +0 -0
  123. mettagrid-0.2.0.36/nim/mettascope/data/actions/attack5.png +0 -0
  124. mettagrid-0.2.0.36/nim/mettascope/data/actions/attack6.png +0 -0
  125. mettagrid-0.2.0.36/nim/mettascope/data/actions/attack7.png +0 -0
  126. mettagrid-0.2.0.36/nim/mettascope/data/actions/attack8.png +0 -0
  127. mettagrid-0.2.0.36/nim/mettascope/data/actions/attack9.png +0 -0
  128. mettagrid-0.2.0.36/nim/mettascope/data/actions/attack_nearest.png +0 -0
  129. mettagrid-0.2.0.36/nim/mettascope/data/actions/converting.png +0 -0
  130. mettagrid-0.2.0.36/nim/mettascope/data/actions/get_items.png +0 -0
  131. mettagrid-0.2.0.36/nim/mettascope/data/actions/icons/attack.png +0 -0
  132. mettagrid-0.2.0.36/nim/mettascope/data/actions/icons/attack_nearest.png +0 -0
  133. mettagrid-0.2.0.36/nim/mettascope/data/actions/icons/change_color.png +0 -0
  134. mettagrid-0.2.0.36/nim/mettascope/data/actions/icons/get_items.png +0 -0
  135. mettagrid-0.2.0.36/nim/mettascope/data/actions/icons/move.png +0 -0
  136. mettagrid-0.2.0.36/nim/mettascope/data/actions/icons/noop.png +0 -0
  137. mettagrid-0.2.0.36/nim/mettascope/data/actions/icons/put_items.png +0 -0
  138. mettagrid-0.2.0.36/nim/mettascope/data/actions/icons/rotate.png +0 -0
  139. mettagrid-0.2.0.36/nim/mettascope/data/actions/icons/swap.png +0 -0
  140. mettagrid-0.2.0.36/nim/mettascope/data/actions/icons/unknown.png +0 -0
  141. mettagrid-0.2.0.36/nim/mettascope/data/actions/put_items.png +0 -0
  142. mettagrid-0.2.0.36/nim/mettascope/data/actions/swap.png +0 -0
  143. mettagrid-0.2.0.36/nim/mettascope/data/actions/thoughts.png +0 -0
  144. mettagrid-0.2.0.36/nim/mettascope/data/actions/thoughts_lightning.png +0 -0
  145. mettagrid-0.2.0.36/nim/mettascope/data/actions/unknown.png +0 -0
  146. mettagrid-0.2.0.36/nim/mettascope/data/agents/agent.e.png +0 -0
  147. mettagrid-0.2.0.36/nim/mettascope/data/agents/agent.n.png +0 -0
  148. mettagrid-0.2.0.36/nim/mettascope/data/agents/agent.s.png +0 -0
  149. mettagrid-0.2.0.36/nim/mettascope/data/agents/agent.w.png +0 -0
  150. mettagrid-0.2.0.36/nim/mettascope/data/agents/footprints.png +0 -0
  151. mettagrid-0.2.0.36/nim/mettascope/data/agents/frozen.png +0 -0
  152. mettagrid-0.2.0.36/nim/mettascope/data/agents/future_arrow.png +0 -0
  153. mettagrid-0.2.0.36/nim/mettascope/data/agents/past_arrow.png +0 -0
  154. mettagrid-0.2.0.36/nim/mettascope/data/agents/path.png +0 -0
  155. mettagrid-0.2.0.36/nim/mettascope/data/atlas.json +425 -0
  156. mettagrid-0.2.0.36/nim/mettascope/data/atlas.png +0 -0
  157. mettagrid-0.2.0.36/nim/mettascope/data/blob7x8.png +0 -0
  158. mettagrid-0.2.0.36/nim/mettascope/data/crosshair.png +0 -0
  159. mettagrid-0.2.0.36/nim/mettascope/data/dash.png +0 -0
  160. mettagrid-0.2.0.36/nim/mettascope/data/effects/halo.png +0 -0
  161. mettagrid-0.2.0.36/nim/mettascope/data/emoji/alien.png +0 -0
  162. mettagrid-0.2.0.36/nim/mettascope/data/emoji/angry.png +0 -0
  163. mettagrid-0.2.0.36/nim/mettascope/data/emoji/down.png +0 -0
  164. mettagrid-0.2.0.36/nim/mettascope/data/emoji/happy.png +0 -0
  165. mettagrid-0.2.0.36/nim/mettascope/data/emoji/left.png +0 -0
  166. mettagrid-0.2.0.36/nim/mettascope/data/emoji/love.png +0 -0
  167. mettagrid-0.2.0.36/nim/mettascope/data/emoji/poo.png +0 -0
  168. mettagrid-0.2.0.36/nim/mettascope/data/emoji/right.png +0 -0
  169. mettagrid-0.2.0.36/nim/mettascope/data/emoji/sad.png +0 -0
  170. mettagrid-0.2.0.36/nim/mettascope/data/emoji/skull.png +0 -0
  171. mettagrid-0.2.0.36/nim/mettascope/data/emoji/sparkle.png +0 -0
  172. mettagrid-0.2.0.36/nim/mettascope/data/emoji/up.png +0 -0
  173. mettagrid-0.2.0.36/nim/mettascope/data/fidget/fonts/IBMPlexMono-Regular.ttf +0 -0
  174. mettagrid-0.2.0.36/nim/mettascope/data/fidget/fonts/IBMPlexSans-Bold.ttf +0 -0
  175. mettagrid-0.2.0.36/nim/mettascope/data/fidget/fonts/IBMPlexSans-Regular.ttf +0 -0
  176. mettagrid-0.2.0.36/nim/mettascope/data/fidget/fonts/NotoSansJP-Regular.ttf +0 -0
  177. mettagrid-0.2.0.36/nim/mettascope/data/fidget/fonts/jsMath-cmbx10.ttf +0 -0
  178. mettagrid-0.2.0.36/nim/mettascope/data/fidget/hHmLTy7slXTOej6opPqWpz.json +86175 -0
  179. mettagrid-0.2.0.36/nim/mettascope/data/fidget/hHmLTy7slXTOej6opPqWpz.lastModified +1 -0
  180. mettagrid-0.2.0.36/nim/mettascope/data/fidget/images/05bab347bacaede7606b8e59426dc42b155a8fd6.png +0 -0
  181. mettagrid-0.2.0.36/nim/mettascope/data/fidget/images/11f0598c7a572fe7461bc54b07423b7b5e3e7a60.png +0 -0
  182. mettagrid-0.2.0.36/nim/mettascope/data/fidget/images/2d993430f151c64eae41bc886ec16271d2feab6c.png +0 -0
  183. mettagrid-0.2.0.36/nim/mettascope/data/fidget/images/42480bc49710a5f0ebfafe1e1a7785068db37106.png +0 -0
  184. mettagrid-0.2.0.36/nim/mettascope/data/fidget/images/621976c3803ef1eea0c316c0e86e1bc31bd6dba4.png +0 -0
  185. mettagrid-0.2.0.36/nim/mettascope/data/fidget/images/79d04b14381789498b35cbd1ae05eb578ededb5f.png +0 -0
  186. mettagrid-0.2.0.36/nim/mettascope/data/fidget/images/7b2b3374ea1a80648e8c68a472dcbba188af3e8e.png +0 -0
  187. mettagrid-0.2.0.36/nim/mettascope/data/fidget/images/86e7f3e8b46af021592fa055ecb606c6b0825c12.png +0 -0
  188. mettagrid-0.2.0.36/nim/mettascope/data/fidget/images/ac4765273b78fb68ac1e913e54c54224b7f6f215.png +0 -0
  189. mettagrid-0.2.0.36/nim/mettascope/data/fidget/images/b765480fbb089bf76a68424612eeb48ddd95ccc7.png +0 -0
  190. mettagrid-0.2.0.36/nim/mettascope/data/fidget/images/eb9f0db464f0f04a52566cd211a561f76d1bcc2a.png +0 -0
  191. mettagrid-0.2.0.36/nim/mettascope/data/fidget/images/f10e39779ee551c9d46a527d2ea2a67f434f2867.png +0 -0
  192. mettagrid-0.2.0.36/nim/mettascope/data/fog7x8.png +0 -0
  193. mettagrid-0.2.0.36/nim/mettascope/data/fonts/Inter-Regular.ttf +0 -0
  194. mettagrid-0.2.0.36/nim/mettascope/data/info.png +0 -0
  195. mettagrid-0.2.0.36/nim/mettascope/data/meta_grid_icon.png +0 -0
  196. mettagrid-0.2.0.36/nim/mettascope/data/minimapPip.png +0 -0
  197. mettagrid-0.2.0.36/nim/mettascope/data/objects/agent.png +0 -0
  198. mettagrid-0.2.0.36/nim/mettascope/data/objects/altar.png +0 -0
  199. mettagrid-0.2.0.36/nim/mettascope/data/objects/armory.png +0 -0
  200. mettagrid-0.2.0.36/nim/mettascope/data/objects/assembler.png +0 -0
  201. mettagrid-0.2.0.36/nim/mettascope/data/objects/assembler.working.png +0 -0
  202. mettagrid-0.2.0.36/nim/mettascope/data/objects/block.png +0 -0
  203. mettagrid-0.2.0.36/nim/mettascope/data/objects/carbon_ex_dep.png +0 -0
  204. mettagrid-0.2.0.36/nim/mettascope/data/objects/carbon_extractor.clipped.png +0 -0
  205. mettagrid-0.2.0.36/nim/mettascope/data/objects/carbon_extractor.clipped2.png +0 -0
  206. mettagrid-0.2.0.36/nim/mettascope/data/objects/carbon_extractor.clipped3.png +0 -0
  207. mettagrid-0.2.0.36/nim/mettascope/data/objects/carbon_extractor.full.png +0 -0
  208. mettagrid-0.2.0.36/nim/mettascope/data/objects/carbon_extractor.png +0 -0
  209. mettagrid-0.2.0.36/nim/mettascope/data/objects/charger-1.png +0 -0
  210. mettagrid-0.2.0.36/nim/mettascope/data/objects/charger.clipped.png +0 -0
  211. mettagrid-0.2.0.36/nim/mettascope/data/objects/charger.png +0 -0
  212. mettagrid-0.2.0.36/nim/mettascope/data/objects/charger_ex_dep.png +0 -0
  213. mettagrid-0.2.0.36/nim/mettascope/data/objects/chest.png +0 -0
  214. mettagrid-0.2.0.36/nim/mettascope/data/objects/chest_carbon.png +0 -0
  215. mettagrid-0.2.0.36/nim/mettascope/data/objects/chest_germanium.png +0 -0
  216. mettagrid-0.2.0.36/nim/mettascope/data/objects/chest_oxygen.png +0 -0
  217. mettagrid-0.2.0.36/nim/mettascope/data/objects/chest_silicon.png +0 -0
  218. mettagrid-0.2.0.36/nim/mettascope/data/objects/clay_oven.png +0 -0
  219. mettagrid-0.2.0.36/nim/mettascope/data/objects/converter.png +0 -0
  220. mettagrid-0.2.0.36/nim/mettascope/data/objects/factory.png +0 -0
  221. mettagrid-0.2.0.36/nim/mettascope/data/objects/generator.png +0 -0
  222. mettagrid-0.2.0.36/nim/mettascope/data/objects/generator_blue.png +0 -0
  223. mettagrid-0.2.0.36/nim/mettascope/data/objects/generator_green.png +0 -0
  224. mettagrid-0.2.0.36/nim/mettascope/data/objects/generator_red.png +0 -0
  225. mettagrid-0.2.0.36/nim/mettascope/data/objects/germanium_ex_dep.png +0 -0
  226. mettagrid-0.2.0.36/nim/mettascope/data/objects/germanium_extractor.clipped.png +0 -0
  227. mettagrid-0.2.0.36/nim/mettascope/data/objects/germanium_extractor.clipped2.png +0 -0
  228. mettagrid-0.2.0.36/nim/mettascope/data/objects/germanium_extractor.clipped3.png +0 -0
  229. mettagrid-0.2.0.36/nim/mettascope/data/objects/germanium_extractor.png +0 -0
  230. mettagrid-0.2.0.36/nim/mettascope/data/objects/ice_tower.png +0 -0
  231. mettagrid-0.2.0.36/nim/mettascope/data/objects/ice_vase.png +0 -0
  232. mettagrid-0.2.0.36/nim/mettascope/data/objects/lab.png +0 -0
  233. mettagrid-0.2.0.36/nim/mettascope/data/objects/lasery.png +0 -0
  234. mettagrid-0.2.0.36/nim/mettascope/data/objects/mine.png +0 -0
  235. mettagrid-0.2.0.36/nim/mettascope/data/objects/mine_blue.png +0 -0
  236. mettagrid-0.2.0.36/nim/mettascope/data/objects/mine_green.png +0 -0
  237. mettagrid-0.2.0.36/nim/mettascope/data/objects/mine_red.png +0 -0
  238. mettagrid-0.2.0.36/nim/mettascope/data/objects/oxygen_ex_dep.png +0 -0
  239. mettagrid-0.2.0.36/nim/mettascope/data/objects/oxygen_extractor.clipped.png +0 -0
  240. mettagrid-0.2.0.36/nim/mettascope/data/objects/oxygen_extractor.clipped2.png +0 -0
  241. mettagrid-0.2.0.36/nim/mettascope/data/objects/oxygen_extractor.clipped3.png +0 -0
  242. mettagrid-0.2.0.36/nim/mettascope/data/objects/oxygen_extractor.full.png +0 -0
  243. mettagrid-0.2.0.36/nim/mettascope/data/objects/oxygen_extractor.png +0 -0
  244. mettagrid-0.2.0.36/nim/mettascope/data/objects/palm_tree.png +0 -0
  245. mettagrid-0.2.0.36/nim/mettascope/data/objects/silicon_ex_dep.png +0 -0
  246. mettagrid-0.2.0.36/nim/mettascope/data/objects/silicon_extractor.clipped.png +0 -0
  247. mettagrid-0.2.0.36/nim/mettascope/data/objects/silicon_extractor.clipped2.png +0 -0
  248. mettagrid-0.2.0.36/nim/mettascope/data/objects/silicon_extractor.clipped3.png +0 -0
  249. mettagrid-0.2.0.36/nim/mettascope/data/objects/silicon_extractor.full.png +0 -0
  250. mettagrid-0.2.0.36/nim/mettascope/data/objects/silicon_extractor.png +0 -0
  251. mettagrid-0.2.0.36/nim/mettascope/data/objects/temple.png +0 -0
  252. mettagrid-0.2.0.36/nim/mettascope/data/objects/trash.png +0 -0
  253. mettagrid-0.2.0.36/nim/mettascope/data/objects/unknown.png +0 -0
  254. mettagrid-0.2.0.36/nim/mettascope/data/objects/water_well.png +0 -0
  255. mettagrid-0.2.0.36/nim/mettascope/data/objects/weaving_loom.png +0 -0
  256. mettagrid-0.2.0.36/nim/mettascope/data/objects/wheat_field.png +0 -0
  257. mettagrid-0.2.0.36/nim/mettascope/data/replays/pens.json.z +0 -0
  258. mettagrid-0.2.0.36/nim/mettascope/data/resources/agent_id.png +0 -0
  259. mettagrid-0.2.0.36/nim/mettascope/data/resources/armor.png +0 -0
  260. mettagrid-0.2.0.36/nim/mettascope/data/resources/battery.blue.png +0 -0
  261. mettagrid-0.2.0.36/nim/mettascope/data/resources/battery.green.png +0 -0
  262. mettagrid-0.2.0.36/nim/mettascope/data/resources/battery.png +0 -0
  263. mettagrid-0.2.0.36/nim/mettascope/data/resources/battery.red.png +0 -0
  264. mettagrid-0.2.0.36/nim/mettascope/data/resources/battery_blue.png +0 -0
  265. mettagrid-0.2.0.36/nim/mettascope/data/resources/battery_green.png +0 -0
  266. mettagrid-0.2.0.36/nim/mettascope/data/resources/battery_red.png +0 -0
  267. mettagrid-0.2.0.36/nim/mettascope/data/resources/blue_gem.png +0 -0
  268. mettagrid-0.2.0.36/nim/mettascope/data/resources/blueprint.png +0 -0
  269. mettagrid-0.2.0.36/nim/mettascope/data/resources/bread.png +0 -0
  270. mettagrid-0.2.0.36/nim/mettascope/data/resources/carbon.png +0 -0
  271. mettagrid-0.2.0.36/nim/mettascope/data/resources/coal.png +0 -0
  272. mettagrid-0.2.0.36/nim/mettascope/data/resources/coconut.png +0 -0
  273. mettagrid-0.2.0.36/nim/mettascope/data/resources/copper_ore.png +0 -0
  274. mettagrid-0.2.0.36/nim/mettascope/data/resources/decoder.png +0 -0
  275. mettagrid-0.2.0.36/nim/mettascope/data/resources/diamond.png +0 -0
  276. mettagrid-0.2.0.36/nim/mettascope/data/resources/energy.png +0 -0
  277. mettagrid-0.2.0.36/nim/mettascope/data/resources/germanium.png +0 -0
  278. mettagrid-0.2.0.36/nim/mettascope/data/resources/gold_ore.png +0 -0
  279. mettagrid-0.2.0.36/nim/mettascope/data/resources/green_gem.png +0 -0
  280. mettagrid-0.2.0.36/nim/mettascope/data/resources/heart.png +0 -0
  281. mettagrid-0.2.0.36/nim/mettascope/data/resources/ice_granade.png +0 -0
  282. mettagrid-0.2.0.36/nim/mettascope/data/resources/iron_ore.png +0 -0
  283. mettagrid-0.2.0.36/nim/mettascope/data/resources/laser.png +0 -0
  284. mettagrid-0.2.0.36/nim/mettascope/data/resources/lizard_hide.png +0 -0
  285. mettagrid-0.2.0.36/nim/mettascope/data/resources/modulator.png +0 -0
  286. mettagrid-0.2.0.36/nim/mettascope/data/resources/oil.png +0 -0
  287. mettagrid-0.2.0.36/nim/mettascope/data/resources/ore.blue.png +0 -0
  288. mettagrid-0.2.0.36/nim/mettascope/data/resources/ore.green.png +0 -0
  289. mettagrid-0.2.0.36/nim/mettascope/data/resources/ore.png +0 -0
  290. mettagrid-0.2.0.36/nim/mettascope/data/resources/ore.red.png +0 -0
  291. mettagrid-0.2.0.36/nim/mettascope/data/resources/ore_blue.png +0 -0
  292. mettagrid-0.2.0.36/nim/mettascope/data/resources/ore_green.png +0 -0
  293. mettagrid-0.2.0.36/nim/mettascope/data/resources/ore_red.png +0 -0
  294. mettagrid-0.2.0.36/nim/mettascope/data/resources/oxygen.png +0 -0
  295. mettagrid-0.2.0.36/nim/mettascope/data/resources/palm_fiber.png +0 -0
  296. mettagrid-0.2.0.36/nim/mettascope/data/resources/red_gem.png +0 -0
  297. mettagrid-0.2.0.36/nim/mettascope/data/resources/resonator.png +0 -0
  298. mettagrid-0.2.0.36/nim/mettascope/data/resources/reward.png +0 -0
  299. mettagrid-0.2.0.36/nim/mettascope/data/resources/salt_water.png +0 -0
  300. mettagrid-0.2.0.36/nim/mettascope/data/resources/sand.png +0 -0
  301. mettagrid-0.2.0.36/nim/mettascope/data/resources/scrambler.png +0 -0
  302. mettagrid-0.2.0.36/nim/mettascope/data/resources/silicon.png +0 -0
  303. mettagrid-0.2.0.36/nim/mettascope/data/resources/sisal.png +0 -0
  304. mettagrid-0.2.0.36/nim/mettascope/data/resources/snake_skin.png +0 -0
  305. mettagrid-0.2.0.36/nim/mettascope/data/resources/snow_ball.png +0 -0
  306. mettagrid-0.2.0.36/nim/mettascope/data/resources/star.png +0 -0
  307. mettagrid-0.2.0.36/nim/mettascope/data/resources/stone.png +0 -0
  308. mettagrid-0.2.0.36/nim/mettascope/data/resources/straw_hat.png +0 -0
  309. mettagrid-0.2.0.36/nim/mettascope/data/resources/turtle_shell.png +0 -0
  310. mettagrid-0.2.0.36/nim/mettascope/data/resources/unknown.png +0 -0
  311. mettagrid-0.2.0.36/nim/mettascope/data/resources/water.png +0 -0
  312. mettagrid-0.2.0.36/nim/mettascope/data/resources/wheat.png +0 -0
  313. mettagrid-0.2.0.36/nim/mettascope/data/resources/yellow_gem.png +0 -0
  314. mettagrid-0.2.0.36/nim/mettascope/data/resources/yucca_fiber.png +0 -0
  315. mettagrid-0.2.0.36/nim/mettascope/data/selection.png +0 -0
  316. mettagrid-0.2.0.36/nim/mettascope/data/target.png +0 -0
  317. mettagrid-0.2.0.36/nim/mettascope/data/tile.png +0 -0
  318. mettagrid-0.2.0.36/nim/mettascope/data/trace/attack.png +0 -0
  319. mettagrid-0.2.0.36/nim/mettascope/data/trace/attack_nearest.png +0 -0
  320. mettagrid-0.2.0.36/nim/mettascope/data/trace/change_color.png +0 -0
  321. mettagrid-0.2.0.36/nim/mettascope/data/trace/frozen.png +0 -0
  322. mettagrid-0.2.0.36/nim/mettascope/data/trace/get_items.png +0 -0
  323. mettagrid-0.2.0.36/nim/mettascope/data/trace/invalid.png +0 -0
  324. mettagrid-0.2.0.36/nim/mettascope/data/trace/move.png +0 -0
  325. mettagrid-0.2.0.36/nim/mettascope/data/trace/move_8way.png +0 -0
  326. mettagrid-0.2.0.36/nim/mettascope/data/trace/move_cardinal.png +0 -0
  327. mettagrid-0.2.0.36/nim/mettascope/data/trace/noop.png +0 -0
  328. mettagrid-0.2.0.36/nim/mettascope/data/trace/put_items.png +0 -0
  329. mettagrid-0.2.0.36/nim/mettascope/data/trace/rotate.png +0 -0
  330. mettagrid-0.2.0.36/nim/mettascope/data/trace/swap.png +0 -0
  331. mettagrid-0.2.0.36/nim/mettascope/data/trace/unknown.png +0 -0
  332. mettagrid-0.2.0.36/nim/mettascope/data/vibe/LICENSE.md +58 -0
  333. mettagrid-0.2.0.36/nim/mettascope/data/vibe/alembic.png +0 -0
  334. mettagrid-0.2.0.36/nim/mettascope/data/vibe/angry.png +0 -0
  335. mettagrid-0.2.0.36/nim/mettascope/data/vibe/anxious.png +0 -0
  336. mettagrid-0.2.0.36/nim/mettascope/data/vibe/assembler.png +0 -0
  337. mettagrid-0.2.0.36/nim/mettascope/data/vibe/asterisk.png +0 -0
  338. mettagrid-0.2.0.36/nim/mettascope/data/vibe/backpack.png +0 -0
  339. mettagrid-0.2.0.36/nim/mettascope/data/vibe/beaming.png +0 -0
  340. mettagrid-0.2.0.36/nim/mettascope/data/vibe/black-circle.png +0 -0
  341. mettagrid-0.2.0.36/nim/mettascope/data/vibe/black-heart.png +0 -0
  342. mettagrid-0.2.0.36/nim/mettascope/data/vibe/blue-circle.png +0 -0
  343. mettagrid-0.2.0.36/nim/mettascope/data/vibe/blue-diamond.png +0 -0
  344. mettagrid-0.2.0.36/nim/mettascope/data/vibe/blue-heart.png +0 -0
  345. mettagrid-0.2.0.36/nim/mettascope/data/vibe/bow.png +0 -0
  346. mettagrid-0.2.0.36/nim/mettascope/data/vibe/broken-heart.png +0 -0
  347. mettagrid-0.2.0.36/nim/mettascope/data/vibe/brown-circle.png +0 -0
  348. mettagrid-0.2.0.36/nim/mettascope/data/vibe/brown-heart.png +0 -0
  349. mettagrid-0.2.0.36/nim/mettascope/data/vibe/brown-square.png +0 -0
  350. mettagrid-0.2.0.36/nim/mettascope/data/vibe/carbon.png +0 -0
  351. mettagrid-0.2.0.36/nim/mettascope/data/vibe/carbon_a.png +0 -0
  352. mettagrid-0.2.0.36/nim/mettascope/data/vibe/carbon_b.png +0 -0
  353. mettagrid-0.2.0.36/nim/mettascope/data/vibe/carrot.png +0 -0
  354. mettagrid-0.2.0.36/nim/mettascope/data/vibe/charger.png +0 -0
  355. mettagrid-0.2.0.36/nim/mettascope/data/vibe/chart-down.png +0 -0
  356. mettagrid-0.2.0.36/nim/mettascope/data/vibe/chart-up.png +0 -0
  357. mettagrid-0.2.0.36/nim/mettascope/data/vibe/chest.png +0 -0
  358. mettagrid-0.2.0.36/nim/mettascope/data/vibe/clown.png +0 -0
  359. mettagrid-0.2.0.36/nim/mettascope/data/vibe/coin.png +0 -0
  360. mettagrid-0.2.0.36/nim/mettascope/data/vibe/compass.png +0 -0
  361. mettagrid-0.2.0.36/nim/mettascope/data/vibe/confused.png +0 -0
  362. mettagrid-0.2.0.36/nim/mettascope/data/vibe/corn.png +0 -0
  363. mettagrid-0.2.0.36/nim/mettascope/data/vibe/crying-cat.png +0 -0
  364. mettagrid-0.2.0.36/nim/mettascope/data/vibe/crying.png +0 -0
  365. mettagrid-0.2.0.36/nim/mettascope/data/vibe/dagger.png +0 -0
  366. mettagrid-0.2.0.36/nim/mettascope/data/vibe/default.png +0 -0
  367. mettagrid-0.2.0.36/nim/mettascope/data/vibe/diamond.png +0 -0
  368. mettagrid-0.2.0.36/nim/mettascope/data/vibe/divide.png +0 -0
  369. mettagrid-0.2.0.36/nim/mettascope/data/vibe/down-left.png +0 -0
  370. mettagrid-0.2.0.36/nim/mettascope/data/vibe/down-right.png +0 -0
  371. mettagrid-0.2.0.36/nim/mettascope/data/vibe/down.png +0 -0
  372. mettagrid-0.2.0.36/nim/mettascope/data/vibe/drooling.png +0 -0
  373. mettagrid-0.2.0.36/nim/mettascope/data/vibe/eight.png +0 -0
  374. mettagrid-0.2.0.36/nim/mettascope/data/vibe/factory.png +0 -0
  375. mettagrid-0.2.0.36/nim/mettascope/data/vibe/fearful.png +0 -0
  376. mettagrid-0.2.0.36/nim/mettascope/data/vibe/fire.png +0 -0
  377. mettagrid-0.2.0.36/nim/mettascope/data/vibe/five.png +0 -0
  378. mettagrid-0.2.0.36/nim/mettascope/data/vibe/four.png +0 -0
  379. mettagrid-0.2.0.36/nim/mettascope/data/vibe/fuel.png +0 -0
  380. mettagrid-0.2.0.36/nim/mettascope/data/vibe/gear.png +0 -0
  381. mettagrid-0.2.0.36/nim/mettascope/data/vibe/germanium.png +0 -0
  382. mettagrid-0.2.0.36/nim/mettascope/data/vibe/germanium_a.png +0 -0
  383. mettagrid-0.2.0.36/nim/mettascope/data/vibe/germanium_b.png +0 -0
  384. mettagrid-0.2.0.36/nim/mettascope/data/vibe/ghost.png +0 -0
  385. mettagrid-0.2.0.36/nim/mettascope/data/vibe/green-circle.png +0 -0
  386. mettagrid-0.2.0.36/nim/mettascope/data/vibe/green-heart.png +0 -0
  387. mettagrid-0.2.0.36/nim/mettascope/data/vibe/grinning-big-eyes.png +0 -0
  388. mettagrid-0.2.0.36/nim/mettascope/data/vibe/grinning-smiling-eyes.png +0 -0
  389. mettagrid-0.2.0.36/nim/mettascope/data/vibe/grinning.png +0 -0
  390. mettagrid-0.2.0.36/nim/mettascope/data/vibe/growing-heart.png +0 -0
  391. mettagrid-0.2.0.36/nim/mettascope/data/vibe/halo.png +0 -0
  392. mettagrid-0.2.0.36/nim/mettascope/data/vibe/hammer.png +0 -0
  393. mettagrid-0.2.0.36/nim/mettascope/data/vibe/hash.png +0 -0
  394. mettagrid-0.2.0.36/nim/mettascope/data/vibe/heart-arrow.png +0 -0
  395. mettagrid-0.2.0.36/nim/mettascope/data/vibe/heart-decoration.png +0 -0
  396. mettagrid-0.2.0.36/nim/mettascope/data/vibe/heart-exclamation.png +0 -0
  397. mettagrid-0.2.0.36/nim/mettascope/data/vibe/heart-eyes.png +0 -0
  398. mettagrid-0.2.0.36/nim/mettascope/data/vibe/heart-ribbon.png +0 -0
  399. mettagrid-0.2.0.36/nim/mettascope/data/vibe/heart.png +0 -0
  400. mettagrid-0.2.0.36/nim/mettascope/data/vibe/heart_a.png +0 -0
  401. mettagrid-0.2.0.36/nim/mettascope/data/vibe/heart_b.png +0 -0
  402. mettagrid-0.2.0.36/nim/mettascope/data/vibe/hundred.png +0 -0
  403. mettagrid-0.2.0.36/nim/mettascope/data/vibe/kiss.png +0 -0
  404. mettagrid-0.2.0.36/nim/mettascope/data/vibe/left.png +0 -0
  405. mettagrid-0.2.0.36/nim/mettascope/data/vibe/light-shade.png +0 -0
  406. mettagrid-0.2.0.36/nim/mettascope/data/vibe/lightning.png +0 -0
  407. mettagrid-0.2.0.36/nim/mettascope/data/vibe/love-letter.png +0 -0
  408. mettagrid-0.2.0.36/nim/mettascope/data/vibe/medium-shade.png +0 -0
  409. mettagrid-0.2.0.36/nim/mettascope/data/vibe/minus.png +0 -0
  410. mettagrid-0.2.0.36/nim/mettascope/data/vibe/moai.png +0 -0
  411. mettagrid-0.2.0.36/nim/mettascope/data/vibe/money.png +0 -0
  412. mettagrid-0.2.0.36/nim/mettascope/data/vibe/monocle.png +0 -0
  413. mettagrid-0.2.0.36/nim/mettascope/data/vibe/mountain.png +0 -0
  414. mettagrid-0.2.0.36/nim/mettascope/data/vibe/multiply.png +0 -0
  415. mettagrid-0.2.0.36/nim/mettascope/data/vibe/nine.png +0 -0
  416. mettagrid-0.2.0.36/nim/mettascope/data/vibe/numbers.png +0 -0
  417. mettagrid-0.2.0.36/nim/mettascope/data/vibe/oil.png +0 -0
  418. mettagrid-0.2.0.36/nim/mettascope/data/vibe/one.png +0 -0
  419. mettagrid-0.2.0.36/nim/mettascope/data/vibe/orange-circle.png +0 -0
  420. mettagrid-0.2.0.36/nim/mettascope/data/vibe/orange-heart.png +0 -0
  421. mettagrid-0.2.0.36/nim/mettascope/data/vibe/orange-square.png +0 -0
  422. mettagrid-0.2.0.36/nim/mettascope/data/vibe/oxygen.png +0 -0
  423. mettagrid-0.2.0.36/nim/mettascope/data/vibe/oxygen_a.png +0 -0
  424. mettagrid-0.2.0.36/nim/mettascope/data/vibe/oxygen_b.png +0 -0
  425. mettagrid-0.2.0.36/nim/mettascope/data/vibe/package.png +0 -0
  426. mettagrid-0.2.0.36/nim/mettascope/data/vibe/paperclip.png +0 -0
  427. mettagrid-0.2.0.36/nim/mettascope/data/vibe/pin.png +0 -0
  428. mettagrid-0.2.0.36/nim/mettascope/data/vibe/plug.png +0 -0
  429. mettagrid-0.2.0.36/nim/mettascope/data/vibe/plus.png +0 -0
  430. mettagrid-0.2.0.36/nim/mettascope/data/vibe/pouting.png +0 -0
  431. mettagrid-0.2.0.36/nim/mettascope/data/vibe/purple-circle.png +0 -0
  432. mettagrid-0.2.0.36/nim/mettascope/data/vibe/purple-heart.png +0 -0
  433. mettagrid-0.2.0.36/nim/mettascope/data/vibe/purple-square.png +0 -0
  434. mettagrid-0.2.0.36/nim/mettascope/data/vibe/pushpin.png +0 -0
  435. mettagrid-0.2.0.36/nim/mettascope/data/vibe/red-circle.png +0 -0
  436. mettagrid-0.2.0.36/nim/mettascope/data/vibe/red-heart.png +0 -0
  437. mettagrid-0.2.0.36/nim/mettascope/data/vibe/red-triangle.png +0 -0
  438. mettagrid-0.2.0.36/nim/mettascope/data/vibe/revolving-hearts.png +0 -0
  439. mettagrid-0.2.0.36/nim/mettascope/data/vibe/right.png +0 -0
  440. mettagrid-0.2.0.36/nim/mettascope/data/vibe/rock.png +0 -0
  441. mettagrid-0.2.0.36/nim/mettascope/data/vibe/rocket.png +0 -0
  442. mettagrid-0.2.0.36/nim/mettascope/data/vibe/rofl.png +0 -0
  443. mettagrid-0.2.0.36/nim/mettascope/data/vibe/rolling-eyes.png +0 -0
  444. mettagrid-0.2.0.36/nim/mettascope/data/vibe/rotate-clockwise.png +0 -0
  445. mettagrid-0.2.0.36/nim/mettascope/data/vibe/rotate.png +0 -0
  446. mettagrid-0.2.0.36/nim/mettascope/data/vibe/savoring.png +0 -0
  447. mettagrid-0.2.0.36/nim/mettascope/data/vibe/seahorse.png +0 -0
  448. mettagrid-0.2.0.36/nim/mettascope/data/vibe/seven.png +0 -0
  449. mettagrid-0.2.0.36/nim/mettascope/data/vibe/shield.png +0 -0
  450. mettagrid-0.2.0.36/nim/mettascope/data/vibe/silicon.png +0 -0
  451. mettagrid-0.2.0.36/nim/mettascope/data/vibe/silicon_a.png +0 -0
  452. mettagrid-0.2.0.36/nim/mettascope/data/vibe/silicon_b.png +0 -0
  453. mettagrid-0.2.0.36/nim/mettascope/data/vibe/six.png +0 -0
  454. mettagrid-0.2.0.36/nim/mettascope/data/vibe/skull-crossbones.png +0 -0
  455. mettagrid-0.2.0.36/nim/mettascope/data/vibe/sleepy.png +0 -0
  456. mettagrid-0.2.0.36/nim/mettascope/data/vibe/small-blue-diamond.png +0 -0
  457. mettagrid-0.2.0.36/nim/mettascope/data/vibe/smiling.png +0 -0
  458. mettagrid-0.2.0.36/nim/mettascope/data/vibe/smirking.png +0 -0
  459. mettagrid-0.2.0.36/nim/mettascope/data/vibe/sobbing.png +0 -0
  460. mettagrid-0.2.0.36/nim/mettascope/data/vibe/sparkle.png +0 -0
  461. mettagrid-0.2.0.36/nim/mettascope/data/vibe/sparkling-heart.png +0 -0
  462. mettagrid-0.2.0.36/nim/mettascope/data/vibe/squinting.png +0 -0
  463. mettagrid-0.2.0.36/nim/mettascope/data/vibe/star-struck.png +0 -0
  464. mettagrid-0.2.0.36/nim/mettascope/data/vibe/swearing.png +0 -0
  465. mettagrid-0.2.0.36/nim/mettascope/data/vibe/swords.png +0 -0
  466. mettagrid-0.2.0.36/nim/mettascope/data/vibe/target.png +0 -0
  467. mettagrid-0.2.0.36/nim/mettascope/data/vibe/tears-of-joy.png +0 -0
  468. mettagrid-0.2.0.36/nim/mettascope/data/vibe/ten.png +0 -0
  469. mettagrid-0.2.0.36/nim/mettascope/data/vibe/test-tube.png +0 -0
  470. mettagrid-0.2.0.36/nim/mettascope/data/vibe/three.png +0 -0
  471. mettagrid-0.2.0.36/nim/mettascope/data/vibe/tree.png +0 -0
  472. mettagrid-0.2.0.36/nim/mettascope/data/vibe/two-hearts.png +0 -0
  473. mettagrid-0.2.0.36/nim/mettascope/data/vibe/two.png +0 -0
  474. mettagrid-0.2.0.36/nim/mettascope/data/vibe/up-left.png +0 -0
  475. mettagrid-0.2.0.36/nim/mettascope/data/vibe/up-right.png +0 -0
  476. mettagrid-0.2.0.36/nim/mettascope/data/vibe/up.png +0 -0
  477. mettagrid-0.2.0.36/nim/mettascope/data/vibe/wall.png +0 -0
  478. mettagrid-0.2.0.36/nim/mettascope/data/vibe/water.png +0 -0
  479. mettagrid-0.2.0.36/nim/mettascope/data/vibe/wave.png +0 -0
  480. mettagrid-0.2.0.36/nim/mettascope/data/vibe/wheat.png +0 -0
  481. mettagrid-0.2.0.36/nim/mettascope/data/vibe/white-circle.png +0 -0
  482. mettagrid-0.2.0.36/nim/mettascope/data/vibe/white-heart.png +0 -0
  483. mettagrid-0.2.0.36/nim/mettascope/data/vibe/white-square.png +0 -0
  484. mettagrid-0.2.0.36/nim/mettascope/data/vibe/wood.png +0 -0
  485. mettagrid-0.2.0.36/nim/mettascope/data/vibe/wrench.png +0 -0
  486. mettagrid-0.2.0.36/nim/mettascope/data/vibe/yawning.png +0 -0
  487. mettagrid-0.2.0.36/nim/mettascope/data/vibe/yellow-circle.png +0 -0
  488. mettagrid-0.2.0.36/nim/mettascope/data/vibe/yellow-heart.png +0 -0
  489. mettagrid-0.2.0.36/nim/mettascope/data/vibe/yellow-square.png +0 -0
  490. mettagrid-0.2.0.36/nim/mettascope/data/vibe/zero.png +0 -0
  491. mettagrid-0.2.0.36/nim/mettascope/data/view/fog.png +0 -0
  492. mettagrid-0.2.0.36/nim/mettascope/data/view/grid.png +0 -0
  493. mettagrid-0.2.0.36/nim/mettascope/data/view/grid10.png +0 -0
  494. mettagrid-0.2.0.36/nim/mettascope/data/white.png +0 -0
  495. mettagrid-0.2.0.36/nim/mettascope/docs/replay_spec.md +251 -0
  496. mettagrid-0.2.0.36/nim/mettascope/mettascope.nimble +28 -0
  497. mettagrid-0.2.0.36/nim/mettascope/nimby.lock +22 -0
  498. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/actions.nim +158 -0
  499. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/agenttable.nim +12 -0
  500. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/agenttraces.nim +114 -0
  501. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/allocator.nim +137 -0
  502. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/common.nim +201 -0
  503. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/envconfig.nim +24 -0
  504. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/footer.nim +69 -0
  505. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/minimap.nim +46 -0
  506. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/objectinfo.nim +129 -0
  507. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/panels.nim +514 -0
  508. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/pathfinding.nim +147 -0
  509. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/pixelator.nim +236 -0
  510. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/replays.nim +756 -0
  511. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/shaderquad.nim +124 -0
  512. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/shell.html +100 -0
  513. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/sim.nim +831 -0
  514. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/tilemap.nim +405 -0
  515. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/timeline.nim +270 -0
  516. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/utils.nim +136 -0
  517. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/validation.nim +716 -0
  518. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/vibes.nim +75 -0
  519. mettagrid-0.2.0.36/nim/mettascope/src/mettascope/worldmap.nim +822 -0
  520. mettagrid-0.2.0.36/nim/mettascope/src/mettascope.nim +208 -0
  521. mettagrid-0.2.0.36/nim/mettascope/src/mettascope.nims +52 -0
  522. mettagrid-0.2.0.36/nim/mettascope/tests/bench_pathfinding.nim +113 -0
  523. mettagrid-0.2.0.36/nim/mettascope/tests/config.nims +2 -0
  524. mettagrid-0.2.0.36/nim/mettascope/tests/manual_pixelator.nim +88 -0
  525. mettagrid-0.2.0.36/nim/mettascope/tests/manual_tilemap.nim +161 -0
  526. mettagrid-0.2.0.36/nim/mettascope/tests/manual_url_replay.nim +95 -0
  527. mettagrid-0.2.0.36/nim/mettascope/tests/perlin.nim +71 -0
  528. mettagrid-0.2.0.36/nim/mettascope/tests/test_pathfinding.nim +202 -0
  529. mettagrid-0.2.0.36/nim/mettascope/tests/test_replay.nim +61 -0
  530. mettagrid-0.2.0.36/nim/mettascope/tests/test_validation.nim +133 -0
  531. mettagrid-0.2.0.36/nim/mettascope/tools/blob7x7.png +0 -0
  532. mettagrid-0.2.0.36/nim/mettascope/tools/blob7x7plain.png +0 -0
  533. mettagrid-0.2.0.36/nim/mettascope/tools/blob7x8.png +0 -0
  534. mettagrid-0.2.0.36/nim/mettascope/tools/floor_tiles.png +0 -0
  535. mettagrid-0.2.0.36/nim/mettascope/tools/gen_atlas.nim +13 -0
  536. mettagrid-0.2.0.36/nim/mettascope/tools/genvibes.nim +30 -0
  537. mettagrid-0.2.0.36/nim/mettascope/tools/patterngen.nim +86 -0
  538. mettagrid-0.2.0.36/nim/mettascope/tools/tilepuzzle.nim +194 -0
  539. mettagrid-0.2.0.36/nim/mettascope/tools/tilepuzzle.png +0 -0
  540. mettagrid-0.2.0.36/pyproject.toml +90 -0
  541. mettagrid-0.2.0.36/python/README.md +3 -0
  542. mettagrid-0.2.0.36/python/src/mettagrid/__init__.py +97 -0
  543. mettagrid-0.2.0.36/python/src/mettagrid/base_config.py +148 -0
  544. mettagrid-0.2.0.36/python/src/mettagrid/builder/building.py +72 -0
  545. mettagrid-0.2.0.36/python/src/mettagrid/builder/empty_assemblers.py +84 -0
  546. mettagrid-0.2.0.36/python/src/mettagrid/builder/envs.py +176 -0
  547. mettagrid-0.2.0.36/python/src/mettagrid/config/__init__.py +33 -0
  548. mettagrid-0.2.0.36/python/src/mettagrid/config/id_map.py +137 -0
  549. mettagrid-0.2.0.36/python/src/mettagrid/config/mettagrid_c_config.py +460 -0
  550. mettagrid-0.2.0.36/python/src/mettagrid/config/mettagrid_config.py +487 -0
  551. mettagrid-0.2.0.36/python/src/mettagrid/config/obs_config.py +20 -0
  552. mettagrid-0.2.0.36/python/src/mettagrid/config/vibes.py +192 -0
  553. mettagrid-0.2.0.36/python/src/mettagrid/demo.py +116 -0
  554. mettagrid-0.2.0.36/python/src/mettagrid/envs/early_reset_handler.py +22 -0
  555. mettagrid-0.2.0.36/python/src/mettagrid/envs/mettagrid_puffer_env.py +251 -0
  556. mettagrid-0.2.0.36/python/src/mettagrid/envs/pettingzoo_env.py +216 -0
  557. mettagrid-0.2.0.36/python/src/mettagrid/envs/stats_tracker.py +165 -0
  558. mettagrid-0.2.0.36/python/src/mettagrid/map_builder/__init__.py +10 -0
  559. mettagrid-0.2.0.36/python/src/mettagrid/map_builder/ascii.py +72 -0
  560. mettagrid-0.2.0.36/python/src/mettagrid/map_builder/assembler_map_builder.py +268 -0
  561. mettagrid-0.2.0.36/python/src/mettagrid/map_builder/map_builder.py +254 -0
  562. mettagrid-0.2.0.36/python/src/mettagrid/map_builder/maze.py +112 -0
  563. mettagrid-0.2.0.36/python/src/mettagrid/map_builder/perimeter_incontext.py +313 -0
  564. mettagrid-0.2.0.36/python/src/mettagrid/map_builder/random.py +96 -0
  565. mettagrid-0.2.0.36/python/src/mettagrid/map_builder/utils.py +94 -0
  566. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/area.py +91 -0
  567. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/mapgen.py +462 -0
  568. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/mapgen_ascii.py +51 -0
  569. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scene.py +511 -0
  570. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/ascii.py +37 -0
  571. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/auto.py +155 -0
  572. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/base_hub.py +430 -0
  573. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/biome_caves.py +83 -0
  574. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/biome_city.py +117 -0
  575. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/biome_desert.py +76 -0
  576. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/biome_forest.py +82 -0
  577. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/bounded_layout.py +35 -0
  578. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/bsp.py +429 -0
  579. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/building_distributions.py +450 -0
  580. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/convchain.py +188 -0
  581. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/copy_grid.py +35 -0
  582. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/README.md +7 -0
  583. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/amcnicky_arrival_choice.yaml +13 -0
  584. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/amcnicky_arrival_double_pillar.yaml +33 -0
  585. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/amcnicky_arrival_feature_with_door.yaml +17 -0
  586. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/amcnicky_arrival_flooded_fountain.yaml +33 -0
  587. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/amcnicky_arrival_single_pillar.yaml +23 -0
  588. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/amcnicky_arrival_underground_garden.yaml +21 -0
  589. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/angelslayer_arrival_pentagon.yaml +31 -0
  590. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/co_arrival_square_in_a_square_in_a_square.yaml +41 -0
  591. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/co_arrival_two_rings.yaml +39 -0
  592. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/denvon_arrival_hothouse.yaml +41 -0
  593. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/denvon_arrival_planthouse.yaml +39 -0
  594. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/denvon_arrival_waterhouse.yaml +43 -0
  595. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/doesnt_arrival_eight_statues.yaml +21 -0
  596. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dolorous_arrival_somebody's_watching_me.yaml +23 -0
  597. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_boxes_within_box.yaml +35 -0
  598. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_boxorama.yaml +35 -0
  599. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_line_fractal.yaml +17 -0
  600. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_long_road.yaml +25 -0
  601. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_radiant.yaml +21 -0
  602. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_rooms_a.yaml +25 -0
  603. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_rooms_with_view.yaml +29 -0
  604. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_shelter.yaml +21 -0
  605. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_snail.yaml +41 -0
  606. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_ternary.yaml +23 -0
  607. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_three_bigger_balls.yaml +47 -0
  608. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_three_smaller_balls.yaml +39 -0
  609. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_a.yaml +5 -0
  610. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_b.yaml +9 -0
  611. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_c.yaml +11 -0
  612. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_d.yaml +13 -0
  613. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_e.yaml +13 -0
  614. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_f.yaml +15 -0
  615. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_g.yaml +15 -0
  616. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_h.yaml +15 -0
  617. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_i.yaml +9 -0
  618. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_j.yaml +13 -0
  619. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_k.yaml +9 -0
  620. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_triangle_fractal.yaml +29 -0
  621. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_windows_large_door.yaml +19 -0
  622. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_chamrin_arrival_tetris.yaml +43 -0
  623. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dysonsfear_arrival_angles.yaml +29 -0
  624. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dysonsfear_arrival_boulevard.yaml +35 -0
  625. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/dysonsfear_arrival_nine_rooms.yaml +29 -0
  626. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/ebering_hopf_link.yaml +27 -0
  627. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/ebering_trefoil_3fold.yaml +27 -0
  628. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/ebering_trefoil_twist.yaml +25 -0
  629. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/eino_arrival_druids_welcome.yaml +25 -0
  630. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/eino_arrival_tree_alley.yaml +13 -0
  631. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/eino_arrival_water_cross.yaml +17 -0
  632. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/eino_arrival_water_star.yaml +33 -0
  633. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/erik_arrival_blinker_ship.yaml +41 -0
  634. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/erik_arrival_triangle_huge.yaml +29 -0
  635. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/erik_arrival_triangle_large.yaml +25 -0
  636. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/erik_arrival_triangle_medium.yaml +21 -0
  637. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/erik_arrival_triangle_small.yaml +17 -0
  638. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/giann_bridges.yaml +25 -0
  639. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/giann_forest_graveyard.yaml +29 -0
  640. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/giann_horns.yaml +19 -0
  641. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/giann_wishing_wells.yaml +19 -0
  642. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/grunt_arrival_crossed_arrows.yaml +29 -0
  643. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/grunt_arrival_lava_bath.yaml +21 -0
  644. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/ldierk_walled_garden.yaml +29 -0
  645. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/ldierk_walled_garden_2.yaml +23 -0
  646. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/lemuel_arrival_cross.yaml +35 -0
  647. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/lemuel_arrival_funnel.yaml +35 -0
  648. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/lemuel_arrival_lava_pool.yaml +35 -0
  649. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/lightli_arrival_chessboard.yaml +19 -0
  650. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/lightli_arrival_flooded_house.yaml +21 -0
  651. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/lightli_arrival_lavapool.yaml +23 -0
  652. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/lightli_arrival_maybe_door_vault.yaml +19 -0
  653. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/lightli_arrival_statue_moat.yaml +23 -0
  654. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/lightli_iron_boxes.yaml +23 -0
  655. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/lightli_molten_gateway.yaml +35 -0
  656. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/matt_arrival_grand_opening.yaml +37 -0
  657. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/matt_arrival_los_fun.yaml +49 -0
  658. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/matt_arrival_refuge.yaml +37 -0
  659. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/matt_arrival_spirals.yaml +33 -0
  660. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_diagonal_passages.yaml +29 -0
  661. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_doors.yaml +29 -0
  662. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_four_houses.yaml +29 -0
  663. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_open_corners.yaml +33 -0
  664. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_plants_in_alcoves.yaml +17 -0
  665. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_pointy.yaml +31 -0
  666. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_radiant_lines.yaml +45 -0
  667. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_three_doors.yaml +11 -0
  668. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_up_and_down.yaml +21 -0
  669. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_wavy_path.yaml +27 -0
  670. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/mrwooster_arrival_arrow.yaml +29 -0
  671. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/mrwooster_arrival_statue.yaml +15 -0
  672. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/mrwooster_arrival_statue_2.yaml +19 -0
  673. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/mrwooster_arrival_statue_3.yaml +21 -0
  674. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/ms813_arrival_door_cone_large.yaml +21 -0
  675. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/ms813_arrival_door_cone_med.yaml +19 -0
  676. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/ms813_arrival_door_cone_small.yaml +17 -0
  677. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/ms813_arrival_square_statues.yaml +17 -0
  678. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/mushboom_english_gardens.yaml +25 -0
  679. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/ncdulo_halloftheorcs.yaml +25 -0
  680. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/ncdulo_lavacross.yaml +21 -0
  681. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/ncdulo_smallfort.yaml +19 -0
  682. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/ncdulo_watergridlock.yaml +21 -0
  683. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/ncdulo_wetmaze.yaml +23 -0
  684. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/nzn_arrival_crosshair.yaml +29 -0
  685. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/nzn_arrival_depleted_hourglass.yaml +33 -0
  686. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/nzn_arrival_water_spiral.yaml +39 -0
  687. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/onia_arrival_mini_spirals.yaml +19 -0
  688. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/onia_arrival_pyramid.yaml +31 -0
  689. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/pf_arrival_petrified_forest.yaml +21 -0
  690. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/psy_arrival_basics.yaml +21 -0
  691. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/psy_arrival_conway.yaml +31 -0
  692. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/psy_arrival_dodecagon.yaml +53 -0
  693. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/psy_arrival_heroes.yaml +41 -0
  694. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/psy_arrival_radial01.yaml +37 -0
  695. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/psy_arrival_radial02.yaml +45 -0
  696. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/psy_arrival_whirlpool.yaml +29 -0
  697. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/reono_arrival_forest_river.yaml +29 -0
  698. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/reono_arrival_mine.yaml +29 -0
  699. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/roderic_chinese_lattice_arrival.yaml +33 -0
  700. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/roderic_crossed_star.yaml +33 -0
  701. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/roderic_dead_forest.yaml +39 -0
  702. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/saegor_arrival_simple_a.yaml +9 -0
  703. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/saegor_arrival_simple_b.yaml +13 -0
  704. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/saegor_arrival_simple_c.yaml +15 -0
  705. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/saegor_arrival_simple_d.yaml +21 -0
  706. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/saegor_arrival_simple_e.yaml +19 -0
  707. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/scummos_arrival_checkerplants.yaml +27 -0
  708. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/scummos_arrival_forest.yaml +21 -0
  709. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/scummos_arrival_gate.yaml +25 -0
  710. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/scummos_arrival_hexagon.yaml +21 -0
  711. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/scummos_arrival_simple_crosswalls.yaml +25 -0
  712. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/scummos_arrival_simple_fountains.yaml +17 -0
  713. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/scummos_arrival_star.yaml +31 -0
  714. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/spicycebolla_green_bress_n_ham.yaml +31 -0
  715. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/spicycebolla_green_bress_n_ham_2.yaml +31 -0
  716. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/tarquinn_simple_flora_water_a.yaml +21 -0
  717. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/tarquinn_simple_flora_water_b.yaml +33 -0
  718. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/tarquinn_simple_flora_water_c.yaml +19 -0
  719. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/tarquinn_simple_flora_water_d.yaml +17 -0
  720. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/tarquinn_simple_flora_water_e.yaml +17 -0
  721. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/tarquinn_simple_flora_water_f.yaml +15 -0
  722. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/wander_arrival_chamber.yaml +17 -0
  723. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/wander_arrival_desolate.yaml +21 -0
  724. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/wheals_arrival_linesprint.yaml +17 -0
  725. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/wheals_arrival_shading.yaml +13 -0
  726. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/convchain/zelgadis_glass_arrival_small.yaml +23 -0
  727. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/amcnicky_arrival_choice.yaml +10 -0
  728. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/amcnicky_arrival_double_pillar.yaml +30 -0
  729. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/amcnicky_arrival_feature_with_door.yaml +14 -0
  730. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/amcnicky_arrival_flooded_fountain.yaml +30 -0
  731. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/amcnicky_arrival_single_pillar.yaml +20 -0
  732. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/amcnicky_arrival_underground_garden.yaml +18 -0
  733. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/co_arrival_square_in_a_square_in_a_square.yaml +38 -0
  734. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/co_arrival_two_rings.yaml +36 -0
  735. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/denvon_arrival_hothouse.yaml +38 -0
  736. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/denvon_arrival_planthouse.yaml +36 -0
  737. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/denvon_arrival_waterhouse.yaml +40 -0
  738. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/doesnt_arrival_eight_statues.yaml +18 -0
  739. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dolorous_arrival_somebody's_watching_me.yaml +20 -0
  740. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_boxes_within_box.yaml +32 -0
  741. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_boxorama.yaml +32 -0
  742. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_line_fractal.yaml +14 -0
  743. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_long_road.yaml +22 -0
  744. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_radiant.yaml +18 -0
  745. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_rooms_a.yaml +22 -0
  746. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_rooms_with_view.yaml +26 -0
  747. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_shelter.yaml +18 -0
  748. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_snail.yaml +38 -0
  749. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_ternary.yaml +20 -0
  750. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_three_bigger_balls.yaml +44 -0
  751. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_three_smaller_balls.yaml +36 -0
  752. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_a.yaml +2 -0
  753. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_b.yaml +6 -0
  754. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_c.yaml +8 -0
  755. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_d.yaml +10 -0
  756. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_e.yaml +10 -0
  757. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_f.yaml +12 -0
  758. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_g.yaml +12 -0
  759. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_h.yaml +12 -0
  760. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_i.yaml +6 -0
  761. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_j.yaml +10 -0
  762. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_k.yaml +6 -0
  763. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_triangle_fractal.yaml +26 -0
  764. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_windows_large_door.yaml +16 -0
  765. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_chamrin_arrival_tetris.yaml +40 -0
  766. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dysonsfear_arrival_angles.yaml +26 -0
  767. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dysonsfear_arrival_boulevard.yaml +32 -0
  768. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/dysonsfear_arrival_nine_rooms.yaml +26 -0
  769. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/ebering_hopf_link.yaml +24 -0
  770. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/ebering_trefoil_3fold.yaml +24 -0
  771. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/ebering_trefoil_twist.yaml +22 -0
  772. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/eino_arrival_druids_welcome.yaml +22 -0
  773. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/eino_arrival_tree_alley.yaml +10 -0
  774. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/eino_arrival_water_cross.yaml +14 -0
  775. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/eino_arrival_water_star.yaml +30 -0
  776. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/erik_arrival_blinker_ship.yaml +38 -0
  777. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/erik_arrival_triangle_huge.yaml +26 -0
  778. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/erik_arrival_triangle_large.yaml +22 -0
  779. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/erik_arrival_triangle_medium.yaml +18 -0
  780. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/erik_arrival_triangle_small.yaml +14 -0
  781. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/giann_bridges.yaml +22 -0
  782. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/giann_forest_graveyard.yaml +26 -0
  783. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/giann_horns.yaml +16 -0
  784. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/giann_wishing_wells.yaml +16 -0
  785. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/grunt_arrival_crossed_arrows.yaml +26 -0
  786. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/grunt_arrival_lava_bath.yaml +18 -0
  787. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/ldierk_walled_garden.yaml +26 -0
  788. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/ldierk_walled_garden_2.yaml +20 -0
  789. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/lemuel_arrival_cross.yaml +32 -0
  790. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/lemuel_arrival_funnel.yaml +32 -0
  791. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/lemuel_arrival_lava_pool.yaml +32 -0
  792. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/lightli_arrival_chessboard.yaml +16 -0
  793. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/lightli_arrival_flooded_house.yaml +18 -0
  794. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/lightli_arrival_lavapool.yaml +20 -0
  795. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/lightli_arrival_maybe_door_vault.yaml +16 -0
  796. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/lightli_arrival_statue_moat.yaml +20 -0
  797. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/lightli_iron_boxes.yaml +20 -0
  798. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/lightli_molten_gateway.yaml +32 -0
  799. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/matt_arrival_grand_opening.yaml +34 -0
  800. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/matt_arrival_refuge.yaml +34 -0
  801. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/matt_arrival_spirals.yaml +30 -0
  802. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_diagonal_passages.yaml +26 -0
  803. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_doors.yaml +26 -0
  804. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_four_houses.yaml +26 -0
  805. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_open_corners.yaml +30 -0
  806. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_plants_in_alcoves.yaml +14 -0
  807. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_pointy.yaml +28 -0
  808. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_radiant_lines.yaml +42 -0
  809. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_three_doors.yaml +8 -0
  810. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_up_and_down.yaml +18 -0
  811. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_wavy_path.yaml +24 -0
  812. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/mrwooster_arrival_arrow.yaml +26 -0
  813. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/mrwooster_arrival_statue.yaml +12 -0
  814. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/mrwooster_arrival_statue_2.yaml +16 -0
  815. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/mrwooster_arrival_statue_3.yaml +18 -0
  816. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/ms813_arrival_door_cone_large.yaml +18 -0
  817. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/ms813_arrival_door_cone_med.yaml +16 -0
  818. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/ms813_arrival_door_cone_small.yaml +14 -0
  819. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/ms813_arrival_square_statues.yaml +14 -0
  820. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/mushboom_english_gardens.yaml +22 -0
  821. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/ncdulo_halloftheorcs.yaml +22 -0
  822. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/ncdulo_lavacross.yaml +18 -0
  823. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/ncdulo_smallfort.yaml +16 -0
  824. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/ncdulo_watergridlock.yaml +18 -0
  825. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/ncdulo_wetmaze.yaml +20 -0
  826. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/nzn_arrival_crosshair.yaml +26 -0
  827. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/nzn_arrival_depleted_hourglass.yaml +30 -0
  828. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/nzn_arrival_water_spiral.yaml +36 -0
  829. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/onia_arrival_mini_spirals.yaml +16 -0
  830. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/onia_arrival_pyramid.yaml +28 -0
  831. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/pf_arrival_petrified_forest.yaml +18 -0
  832. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/psy_arrival_basics.yaml +18 -0
  833. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/psy_arrival_conway.yaml +28 -0
  834. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/psy_arrival_dodecagon.yaml +50 -0
  835. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/psy_arrival_heroes.yaml +38 -0
  836. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/psy_arrival_radial01.yaml +34 -0
  837. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/psy_arrival_radial02.yaml +42 -0
  838. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/psy_arrival_whirlpool.yaml +26 -0
  839. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/reono_arrival_forest_river.yaml +26 -0
  840. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/reono_arrival_mine.yaml +26 -0
  841. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/roderic_chinese_lattice_arrival.yaml +30 -0
  842. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/roderic_crossed_star.yaml +30 -0
  843. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/roderic_dead_forest.yaml +36 -0
  844. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/saegor_arrival_simple_a.yaml +6 -0
  845. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/saegor_arrival_simple_b.yaml +10 -0
  846. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/saegor_arrival_simple_c.yaml +12 -0
  847. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/saegor_arrival_simple_d.yaml +18 -0
  848. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/saegor_arrival_simple_e.yaml +16 -0
  849. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/scummos_arrival_checkerplants.yaml +24 -0
  850. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/scummos_arrival_forest.yaml +18 -0
  851. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/scummos_arrival_gate.yaml +22 -0
  852. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/scummos_arrival_hexagon.yaml +18 -0
  853. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/scummos_arrival_simple_crosswalls.yaml +22 -0
  854. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/scummos_arrival_simple_fountains.yaml +14 -0
  855. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/scummos_arrival_star.yaml +28 -0
  856. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/spicycebolla_green_bress_n_ham.yaml +28 -0
  857. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/spicycebolla_green_bress_n_ham_2.yaml +28 -0
  858. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/tarquinn_simple_flora_water_a.yaml +18 -0
  859. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/tarquinn_simple_flora_water_b.yaml +30 -0
  860. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/tarquinn_simple_flora_water_c.yaml +16 -0
  861. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/tarquinn_simple_flora_water_d.yaml +14 -0
  862. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/tarquinn_simple_flora_water_e.yaml +14 -0
  863. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/tarquinn_simple_flora_water_f.yaml +12 -0
  864. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/wander_arrival_chamber.yaml +14 -0
  865. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/wander_arrival_desolate.yaml +18 -0
  866. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/wheals_arrival_linesprint.yaml +14 -0
  867. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/wheals_arrival_shading.yaml +10 -0
  868. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/dcss/wfc/zelgadis_glass_arrival_small.yaml +20 -0
  869. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/grid_altars.py +117 -0
  870. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/inline_ascii.py +44 -0
  871. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/layout.py +30 -0
  872. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/make_connected.py +162 -0
  873. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/maze.py +224 -0
  874. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/mean_distance.py +47 -0
  875. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/mirror.py +154 -0
  876. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/multi_left_and_right.py +105 -0
  877. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/nop.py +14 -0
  878. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/radial_maze.py +74 -0
  879. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/random.py +68 -0
  880. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/random_dcss_scene.py +46 -0
  881. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/random_objects.py +33 -0
  882. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/random_scene.py +30 -0
  883. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/random_yaml_scene.py +30 -0
  884. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/remove_agents.py +25 -0
  885. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/room_grid.py +76 -0
  886. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/spiral.py +103 -0
  887. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/transplant_scene.py +32 -0
  888. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/varied_terrain.py +373 -0
  889. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/wfc.py +268 -0
  890. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/scenes/yaml.py +20 -0
  891. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/tools/gen.py +48 -0
  892. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/tools/gen_scene.py +45 -0
  893. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/types.py +9 -0
  894. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/utils/ascii_grid.py +109 -0
  895. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/utils/make_scene_config.py +32 -0
  896. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/utils/show.py +19 -0
  897. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/utils/storable_map.py +109 -0
  898. mettagrid-0.2.0.36/python/src/mettagrid/mapgen/utils/thumbnail.py +367 -0
  899. mettagrid-0.2.0.36/python/src/mettagrid/mettagrid_c.pyi +244 -0
  900. mettagrid-0.2.0.36/python/src/mettagrid/policy/loader.py +200 -0
  901. mettagrid-0.2.0.36/python/src/mettagrid/policy/lstm.py +265 -0
  902. mettagrid-0.2.0.36/python/src/mettagrid/policy/noop.py +37 -0
  903. mettagrid-0.2.0.36/python/src/mettagrid/policy/policy.py +390 -0
  904. mettagrid-0.2.0.36/python/src/mettagrid/policy/policy_env_interface.py +89 -0
  905. mettagrid-0.2.0.36/python/src/mettagrid/policy/policy_registry.py +46 -0
  906. mettagrid-0.2.0.36/python/src/mettagrid/policy/random_agent.py +45 -0
  907. mettagrid-0.2.0.36/python/src/mettagrid/policy/stateless.py +104 -0
  908. mettagrid-0.2.0.36/python/src/mettagrid/policy/token_encoder.py +179 -0
  909. mettagrid-0.2.0.36/python/src/mettagrid/policy/utils.py +98 -0
  910. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/Inter-Regular.ttf +0 -0
  911. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/altar.png +0 -0
  912. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/atlas.json +920 -0
  913. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/atlas.png +0 -0
  914. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/converter.png +0 -0
  915. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/generator.png +0 -0
  916. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/items.png +0 -0
  917. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/monsters.png +0 -0
  918. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/ore-0.png +0 -0
  919. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/ore-1.png +0 -0
  920. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/ore-2.png +0 -0
  921. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/ore-3.png +0 -0
  922. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/ore-4.png +0 -0
  923. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/ore-5.png +0 -0
  924. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/ore-6.png +0 -0
  925. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/puffer_chars.png +0 -0
  926. mettagrid-0.2.0.36/python/src/mettagrid/renderer/assets/wall.png +0 -0
  927. mettagrid-0.2.0.36/python/src/mettagrid/renderer/log_renderer.py +48 -0
  928. mettagrid-0.2.0.36/python/src/mettagrid/renderer/mettascope.py +233 -0
  929. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/buffer.py +262 -0
  930. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/components/__init__.py +23 -0
  931. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/components/agent_control.py +107 -0
  932. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/components/agent_info.py +174 -0
  933. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/components/base.py +93 -0
  934. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/components/help_panel.py +152 -0
  935. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/components/map.py +127 -0
  936. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/components/object_info.py +161 -0
  937. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/components/sim_control.py +136 -0
  938. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/components/symbols_table.py +101 -0
  939. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/components/vibe_picker.py +159 -0
  940. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/miniscope.py +420 -0
  941. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/miniscope_panel.py +265 -0
  942. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/miniscope_state.py +256 -0
  943. mettagrid-0.2.0.36/python/src/mettagrid/renderer/miniscope/symbol.py +45 -0
  944. mettagrid-0.2.0.36/python/src/mettagrid/renderer/renderer.py +76 -0
  945. mettagrid-0.2.0.36/python/src/mettagrid/simulator/__init__.py +35 -0
  946. mettagrid-0.2.0.36/python/src/mettagrid/simulator/interface.py +56 -0
  947. mettagrid-0.2.0.36/python/src/mettagrid/simulator/map_cache.py +418 -0
  948. mettagrid-0.2.0.36/python/src/mettagrid/simulator/multi_episode/rollout.py +130 -0
  949. mettagrid-0.2.0.36/python/src/mettagrid/simulator/multi_episode/summary.py +120 -0
  950. mettagrid-0.2.0.36/python/src/mettagrid/simulator/replay_log_writer.py +195 -0
  951. mettagrid-0.2.0.36/python/src/mettagrid/simulator/rollout.py +83 -0
  952. mettagrid-0.2.0.36/python/src/mettagrid/simulator/simulator.py +425 -0
  953. mettagrid-0.2.0.36/python/src/mettagrid/test_support/__init__.py +6 -0
  954. mettagrid-0.2.0.36/python/src/mettagrid/test_support/actions.py +335 -0
  955. mettagrid-0.2.0.36/python/src/mettagrid/test_support/map_builders.py +27 -0
  956. mettagrid-0.2.0.36/python/src/mettagrid/test_support/mapgen.py +94 -0
  957. mettagrid-0.2.0.36/python/src/mettagrid/types.py +48 -0
  958. mettagrid-0.2.0.36/python/src/mettagrid/util/file.py +154 -0
  959. mettagrid-0.2.0.36/python/src/mettagrid/util/grid_object_formatter.py +146 -0
  960. mettagrid-0.2.0.36/python/src/mettagrid/util/module.py +34 -0
  961. mettagrid-0.2.0.36/python/src/mettagrid/util/stats_writer.py +69 -0
  962. mettagrid-0.2.0.36/python/src/mettagrid.egg-info/PKG-INFO +366 -0
  963. mettagrid-0.2.0.36/python/src/mettagrid.egg-info/SOURCES.txt +1086 -0
  964. mettagrid-0.2.0.36/python/src/mettagrid.egg-info/dependency_links.txt +1 -0
  965. mettagrid-0.2.0.36/python/src/mettagrid.egg-info/requires.txt +7 -0
  966. mettagrid-0.2.0.36/scripts/build_asan.sh +3 -0
  967. mettagrid-0.2.0.36/scripts/test_leaks.sh +3 -0
  968. mettagrid-0.2.0.36/tests/BUILD +165 -0
  969. mettagrid-0.2.0.36/tests/__init__.py +1 -0
  970. mettagrid-0.2.0.36/tests/cpplint.sh +14 -0
  971. mettagrid-0.2.0.36/tests/map_builder/__init__.py +1 -0
  972. mettagrid-0.2.0.36/tests/map_builder/test_ascii.py +313 -0
  973. mettagrid-0.2.0.36/tests/map_builder/test_map_builder.py +84 -0
  974. mettagrid-0.2.0.36/tests/map_builder/test_polymorphic_serialization.py +240 -0
  975. mettagrid-0.2.0.36/tests/map_builder/test_utils.py +237 -0
  976. mettagrid-0.2.0.36/tests/mapgen/__init__.py +1 -0
  977. mettagrid-0.2.0.36/tests/mapgen/scenes/__init__.py +1 -0
  978. mettagrid-0.2.0.36/tests/mapgen/scenes/fixtures/dir1/1.yaml +2 -0
  979. mettagrid-0.2.0.36/tests/mapgen/scenes/fixtures/dir1/2.yaml +2 -0
  980. mettagrid-0.2.0.36/tests/mapgen/scenes/fixtures/test.map +10 -0
  981. mettagrid-0.2.0.36/tests/mapgen/scenes/fixtures/test.yaml +4 -0
  982. mettagrid-0.2.0.36/tests/mapgen/scenes/test_ascii.py +30 -0
  983. mettagrid-0.2.0.36/tests/mapgen/scenes/test_auto.py +52 -0
  984. mettagrid-0.2.0.36/tests/mapgen/scenes/test_bsp.py +22 -0
  985. mettagrid-0.2.0.36/tests/mapgen/scenes/test_convchain.py +21 -0
  986. mettagrid-0.2.0.36/tests/mapgen/scenes/test_inline_ascii.py +59 -0
  987. mettagrid-0.2.0.36/tests/mapgen/scenes/test_layout.py +77 -0
  988. mettagrid-0.2.0.36/tests/mapgen/scenes/test_make_connected.py +17 -0
  989. mettagrid-0.2.0.36/tests/mapgen/scenes/test_maze.py +38 -0
  990. mettagrid-0.2.0.36/tests/mapgen/scenes/test_mean_distance.py +87 -0
  991. mettagrid-0.2.0.36/tests/mapgen/scenes/test_mirror.py +71 -0
  992. mettagrid-0.2.0.36/tests/mapgen/scenes/test_multi_left_and_right.py +11 -0
  993. mettagrid-0.2.0.36/tests/mapgen/scenes/test_nop.py +8 -0
  994. mettagrid-0.2.0.36/tests/mapgen/scenes/test_radial_maze.py +167 -0
  995. mettagrid-0.2.0.36/tests/mapgen/scenes/test_random.py +28 -0
  996. mettagrid-0.2.0.36/tests/mapgen/scenes/test_random_dcss_scene.py +11 -0
  997. mettagrid-0.2.0.36/tests/mapgen/scenes/test_random_objects.py +13 -0
  998. mettagrid-0.2.0.36/tests/mapgen/scenes/test_random_scene.py +25 -0
  999. mettagrid-0.2.0.36/tests/mapgen/scenes/test_random_yaml_scene.py +29 -0
  1000. mettagrid-0.2.0.36/tests/mapgen/scenes/test_remove_agents.py +40 -0
  1001. mettagrid-0.2.0.36/tests/mapgen/scenes/test_room_grid.py +70 -0
  1002. mettagrid-0.2.0.36/tests/mapgen/scenes/test_utils.py +26 -0
  1003. mettagrid-0.2.0.36/tests/mapgen/scenes/test_wfc.py +18 -0
  1004. mettagrid-0.2.0.36/tests/mapgen/scenes/test_yaml.py +12 -0
  1005. mettagrid-0.2.0.36/tests/mapgen/test_mapgen.py +224 -0
  1006. mettagrid-0.2.0.36/tests/mapgen/test_scene.py +166 -0
  1007. mettagrid-0.2.0.36/tests/mapgen/test_transform.py +229 -0
  1008. mettagrid-0.2.0.36/tests/mapgen/utils/test_pattern.py +240 -0
  1009. mettagrid-0.2.0.36/tests/mapgen/utils/test_storable_map.py +80 -0
  1010. mettagrid-0.2.0.36/tests/policy/test_lstm.py +172 -0
  1011. mettagrid-0.2.0.36/tests/profiling/test_stopwatch.py +1400 -0
  1012. mettagrid-0.2.0.36/tests/profiling/test_system_monitor.py +65 -0
  1013. mettagrid-0.2.0.36/tests/renderer/test_miniscope_interactions.py +229 -0
  1014. mettagrid-0.2.0.36/tests/renderer/test_miniscope_panel.py +265 -0
  1015. mettagrid-0.2.0.36/tests/renderer/test_miniscope_state.py +371 -0
  1016. mettagrid-0.2.0.36/tests/test_action_compatibility.py +368 -0
  1017. mettagrid-0.2.0.36/tests/test_actions.py +327 -0
  1018. mettagrid-0.2.0.36/tests/test_agent_resource_sharing.py +107 -0
  1019. mettagrid-0.2.0.36/tests/test_assembler_partial_usage.py +199 -0
  1020. mettagrid-0.2.0.36/tests/test_attack_resource_exception.py +104 -0
  1021. mettagrid-0.2.0.36/tests/test_buffer_reuse.py +176 -0
  1022. mettagrid-0.2.0.36/tests/test_buffers.py +508 -0
  1023. mettagrid-0.2.0.36/tests/test_chest.py +82 -0
  1024. mettagrid-0.2.0.36/tests/test_clipper.cpp +347 -0
  1025. mettagrid-0.2.0.36/tests/test_env_config_serialization.py +97 -0
  1026. mettagrid-0.2.0.36/tests/test_env_map.py +11 -0
  1027. mettagrid-0.2.0.36/tests/test_global_obs_config.py +180 -0
  1028. mettagrid-0.2.0.36/tests/test_global_observations.py +141 -0
  1029. mettagrid-0.2.0.36/tests/test_grid_object.cpp +61 -0
  1030. mettagrid-0.2.0.36/tests/test_grid_objects_properties.py +318 -0
  1031. mettagrid-0.2.0.36/tests/test_has_inventory.cpp +237 -0
  1032. mettagrid-0.2.0.36/tests/test_inventory_regeneration.py +158 -0
  1033. mettagrid-0.2.0.36/tests/test_leaks.py +79 -0
  1034. mettagrid-0.2.0.36/tests/test_map_cache.py +290 -0
  1035. mettagrid-0.2.0.36/tests/test_mettagrid.cpp +1980 -0
  1036. mettagrid-0.2.0.36/tests/test_mettagrid.py +141 -0
  1037. mettagrid-0.2.0.36/tests/test_mettagrid_puffer_env.py +352 -0
  1038. mettagrid-0.2.0.36/tests/test_move.py +671 -0
  1039. mettagrid-0.2.0.36/tests/test_observations.py +545 -0
  1040. mettagrid-0.2.0.36/tests/test_pettingzoo_env.py +364 -0
  1041. mettagrid-0.2.0.36/tests/test_resource_loss.py +172 -0
  1042. mettagrid-0.2.0.36/tests/test_resource_mod_config.py +125 -0
  1043. mettagrid-0.2.0.36/tests/test_rewards.py +178 -0
  1044. mettagrid-0.2.0.36/tests/test_set_inventory.py +100 -0
  1045. mettagrid-0.2.0.36/tests/test_sim_agent.py +299 -0
  1046. mettagrid-0.2.0.36/tests/test_stats_tracker.cpp +68 -0
  1047. mettagrid-0.2.0.36/tests/test_summary_generation.py +110 -0
  1048. mettagrid-0.2.0.36/tests/test_tags.py +739 -0
  1049. mettagrid-0.2.0.36/tests/test_vibe_based_sharing.py +183 -0
  1050. mettagrid-0.2.0.36/tests/test_wall_visibility_default.py +43 -0
  1051. mettagrid-0.2.0.7/.bazelrc +0 -79
  1052. mettagrid-0.2.0.7/BUILD.bazel +0 -45
  1053. mettagrid-0.2.0.7/MANIFEST.in +0 -12
  1054. mettagrid-0.2.0.7/MODULE.bazel +0 -30
  1055. mettagrid-0.2.0.7/MODULE.bazel.lock +0 -420
  1056. mettagrid-0.2.0.7/PKG-INFO +0 -256
  1057. mettagrid-0.2.0.7/README.md +0 -226
  1058. mettagrid-0.2.0.7/bazel_build.py +0 -143
  1059. mettagrid-0.2.0.7/benchmarks/test_mettagrid_env_benchmark.cpp +0 -298
  1060. mettagrid-0.2.0.7/benchmarks/test_mettagrid_env_benchmark.py +0 -180
  1061. mettagrid-0.2.0.7/cpp/BUILD.bazel +0 -64
  1062. mettagrid-0.2.0.7/cpp/bindings/mettagrid_c.cpp +0 -973
  1063. mettagrid-0.2.0.7/cpp/bindings/mettagrid_c.hpp +0 -181
  1064. mettagrid-0.2.0.7/cpp/include/mettagrid/actions/action_handler.hpp +0 -200
  1065. mettagrid-0.2.0.7/cpp/include/mettagrid/actions/attack.hpp +0 -235
  1066. mettagrid-0.2.0.7/cpp/include/mettagrid/actions/change_color.hpp +0 -40
  1067. mettagrid-0.2.0.7/cpp/include/mettagrid/actions/change_glyph.hpp +0 -54
  1068. mettagrid-0.2.0.7/cpp/include/mettagrid/actions/get_output.hpp +0 -58
  1069. mettagrid-0.2.0.7/cpp/include/mettagrid/actions/move.hpp +0 -79
  1070. mettagrid-0.2.0.7/cpp/include/mettagrid/actions/noop.hpp +0 -24
  1071. mettagrid-0.2.0.7/cpp/include/mettagrid/actions/orientation.hpp +0 -128
  1072. mettagrid-0.2.0.7/cpp/include/mettagrid/actions/put_recipe_items.hpp +0 -56
  1073. mettagrid-0.2.0.7/cpp/include/mettagrid/actions/rotate.hpp +0 -49
  1074. mettagrid-0.2.0.7/cpp/include/mettagrid/actions/swap.hpp +0 -42
  1075. mettagrid-0.2.0.7/cpp/include/mettagrid/config/mettagrid_config.hpp +0 -130
  1076. mettagrid-0.2.0.7/cpp/include/mettagrid/core/event.hpp +0 -87
  1077. mettagrid-0.2.0.7/cpp/include/mettagrid/core/grid.hpp +0 -194
  1078. mettagrid-0.2.0.7/cpp/include/mettagrid/core/grid_object.hpp +0 -88
  1079. mettagrid-0.2.0.7/cpp/include/mettagrid/core/hash.hpp +0 -130
  1080. mettagrid-0.2.0.7/cpp/include/mettagrid/core/types.hpp +0 -63
  1081. mettagrid-0.2.0.7/cpp/include/mettagrid/objects/agent.hpp +0 -257
  1082. mettagrid-0.2.0.7/cpp/include/mettagrid/objects/agent_config.hpp +0 -103
  1083. mettagrid-0.2.0.7/cpp/include/mettagrid/objects/assembler.hpp +0 -229
  1084. mettagrid-0.2.0.7/cpp/include/mettagrid/objects/assembler_config.hpp +0 -36
  1085. mettagrid-0.2.0.7/cpp/include/mettagrid/objects/chest.hpp +0 -170
  1086. mettagrid-0.2.0.7/cpp/include/mettagrid/objects/chest_config.hpp +0 -48
  1087. mettagrid-0.2.0.7/cpp/include/mettagrid/objects/constants.hpp +0 -109
  1088. mettagrid-0.2.0.7/cpp/include/mettagrid/objects/converter.hpp +0 -223
  1089. mettagrid-0.2.0.7/cpp/include/mettagrid/objects/converter_config.hpp +0 -95
  1090. mettagrid-0.2.0.7/cpp/include/mettagrid/objects/has_inventory.hpp +0 -38
  1091. mettagrid-0.2.0.7/cpp/include/mettagrid/objects/production_handler.hpp +0 -53
  1092. mettagrid-0.2.0.7/cpp/include/mettagrid/objects/recipe.hpp +0 -38
  1093. mettagrid-0.2.0.7/cpp/include/mettagrid/objects/wall.hpp +0 -65
  1094. mettagrid-0.2.0.7/cpp/include/mettagrid/renderer/hermes.hpp +0 -50
  1095. mettagrid-0.2.0.7/cpp/include/mettagrid/systems/observation_encoder.hpp +0 -98
  1096. mettagrid-0.2.0.7/cpp/include/mettagrid/systems/packed_coordinate.hpp +0 -173
  1097. mettagrid-0.2.0.7/cpp/include/mettagrid/systems/stats_tracker.hpp +0 -165
  1098. mettagrid-0.2.0.7/cpp/src/renderer/hermes.cpp +0 -1245
  1099. mettagrid-0.2.0.7/mettagrid.egg-info/PKG-INFO +0 -256
  1100. mettagrid-0.2.0.7/mettagrid.egg-info/SOURCES.txt +0 -240
  1101. mettagrid-0.2.0.7/mettagrid.egg-info/requires.txt +0 -16
  1102. mettagrid-0.2.0.7/pyproject.toml +0 -78
  1103. mettagrid-0.2.0.7/python/src/mettagrid/__init__.py +0 -62
  1104. mettagrid-0.2.0.7/python/src/mettagrid/builder/__init__.py +0 -7
  1105. mettagrid-0.2.0.7/python/src/mettagrid/builder/building.py +0 -176
  1106. mettagrid-0.2.0.7/python/src/mettagrid/builder/empty_converters.py +0 -85
  1107. mettagrid-0.2.0.7/python/src/mettagrid/builder/envs.py +0 -261
  1108. mettagrid-0.2.0.7/python/src/mettagrid/config/__init__.py +0 -35
  1109. mettagrid-0.2.0.7/python/src/mettagrid/config/config.py +0 -106
  1110. mettagrid-0.2.0.7/python/src/mettagrid/config/mettagrid_c_config.py +0 -422
  1111. mettagrid-0.2.0.7/python/src/mettagrid/config/mettagrid_config.py +0 -243
  1112. mettagrid-0.2.0.7/python/src/mettagrid/core.py +0 -297
  1113. mettagrid-0.2.0.7/python/src/mettagrid/demo.py +0 -35
  1114. mettagrid-0.2.0.7/python/src/mettagrid/envs/__init__.py +0 -13
  1115. mettagrid-0.2.0.7/python/src/mettagrid/envs/gym_env.py +0 -127
  1116. mettagrid-0.2.0.7/python/src/mettagrid/envs/gym_wrapper.py +0 -63
  1117. mettagrid-0.2.0.7/python/src/mettagrid/envs/mettagrid_env.py +0 -310
  1118. mettagrid-0.2.0.7/python/src/mettagrid/envs/pettingzoo_env.py +0 -213
  1119. mettagrid-0.2.0.7/python/src/mettagrid/envs/puffer_base.py +0 -143
  1120. mettagrid-0.2.0.7/python/src/mettagrid/map_builder/__init__.py +0 -10
  1121. mettagrid-0.2.0.7/python/src/mettagrid/map_builder/ascii.py +0 -38
  1122. mettagrid-0.2.0.7/python/src/mettagrid/map_builder/map_builder.py +0 -147
  1123. mettagrid-0.2.0.7/python/src/mettagrid/map_builder/maze.py +0 -122
  1124. mettagrid-0.2.0.7/python/src/mettagrid/map_builder/perimeter_incontext.py +0 -330
  1125. mettagrid-0.2.0.7/python/src/mettagrid/map_builder/random.py +0 -95
  1126. mettagrid-0.2.0.7/python/src/mettagrid/map_builder/utils.py +0 -94
  1127. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/load.py +0 -35
  1128. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/mapgen.py +0 -322
  1129. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/mapgen_ascii.py +0 -51
  1130. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scene.py +0 -323
  1131. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/ascii.py +0 -41
  1132. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/auto.py +0 -149
  1133. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/bsp.py +0 -417
  1134. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/convchain.py +0 -180
  1135. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/copy_grid.py +0 -36
  1136. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/grid_altars.py +0 -118
  1137. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/inline_ascii.py +0 -42
  1138. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/layout.py +0 -31
  1139. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/make_connected.py +0 -163
  1140. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/maze.py +0 -212
  1141. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/mean_distance.py +0 -48
  1142. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/mirror.py +0 -120
  1143. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/multi_left_and_right.py +0 -117
  1144. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/nop.py +0 -15
  1145. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/radial_maze.py +0 -50
  1146. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/random.py +0 -65
  1147. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/random_dcss_scene.py +0 -48
  1148. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/random_objects.py +0 -35
  1149. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/random_scene.py +0 -31
  1150. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/random_yaml_scene.py +0 -32
  1151. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/remove_agents.py +0 -26
  1152. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/room_grid.py +0 -77
  1153. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/spiral.py +0 -104
  1154. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/transplant_scene.py +0 -42
  1155. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/varied_terrain.py +0 -376
  1156. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/wfc.py +0 -269
  1157. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/scenes/yaml.py +0 -22
  1158. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/tools/gen.py +0 -94
  1159. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/tools/gen_scene.py +0 -51
  1160. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/tools/view.py +0 -25
  1161. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/types.py +0 -81
  1162. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/utils/ascii_grid.py +0 -55
  1163. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/utils/make_scene_config.py +0 -36
  1164. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/utils/s3utils.py +0 -44
  1165. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/utils/show.py +0 -21
  1166. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/utils/storable_map.py +0 -117
  1167. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/utils/storable_map_index.py +0 -92
  1168. mettagrid-0.2.0.7/python/src/mettagrid/mapgen/utils/thumbnail.py +0 -360
  1169. mettagrid-0.2.0.7/python/src/mettagrid/mettagrid_c.pyi +0 -226
  1170. mettagrid-0.2.0.7/python/src/mettagrid/mettagrid_c.so +0 -0
  1171. mettagrid-0.2.0.7/python/src/mettagrid/profiling/__init__.py +0 -1
  1172. mettagrid-0.2.0.7/python/src/mettagrid/renderer/miniscope.py +0 -138
  1173. mettagrid-0.2.0.7/python/src/mettagrid/renderer/nethack.py +0 -101
  1174. mettagrid-0.2.0.7/python/src/mettagrid/test_support/__init__.py +0 -7
  1175. mettagrid-0.2.0.7/python/src/mettagrid/test_support/actions.py +0 -426
  1176. mettagrid-0.2.0.7/python/src/mettagrid/test_support/mapgen.py +0 -77
  1177. mettagrid-0.2.0.7/python/src/mettagrid/util/char_encoder.py +0 -55
  1178. mettagrid-0.2.0.7/python/src/mettagrid/util/episode_stats_db.py +0 -157
  1179. mettagrid-0.2.0.7/python/src/mettagrid/util/file.py +0 -503
  1180. mettagrid-0.2.0.7/python/src/mettagrid/util/grid_object_formatter.py +0 -95
  1181. mettagrid-0.2.0.7/python/src/mettagrid/util/module.py +0 -12
  1182. mettagrid-0.2.0.7/python/src/mettagrid/util/replay_writer.py +0 -136
  1183. mettagrid-0.2.0.7/python/src/mettagrid/util/stats_writer.py +0 -55
  1184. mettagrid-0.2.0.7/python/src/mettagrid/util/uri.py +0 -162
  1185. mettagrid-0.2.0.7/tests/BUILD +0 -117
  1186. mettagrid-0.2.0.7/tests/diagnose.py +0 -228
  1187. mettagrid-0.2.0.7/tests/map_builder/test_ascii.py +0 -208
  1188. mettagrid-0.2.0.7/tests/map_builder/test_map_builder.py +0 -75
  1189. mettagrid-0.2.0.7/tests/map_builder/test_polymorphic_serialization.py +0 -165
  1190. mettagrid-0.2.0.7/tests/map_builder/test_utils.py +0 -237
  1191. mettagrid-0.2.0.7/tests/mapgen/__init__.py +0 -0
  1192. mettagrid-0.2.0.7/tests/mapgen/scenes/test_ascii.py +0 -19
  1193. mettagrid-0.2.0.7/tests/mapgen/scenes/test_auto.py +0 -55
  1194. mettagrid-0.2.0.7/tests/mapgen/scenes/test_bsp.py +0 -24
  1195. mettagrid-0.2.0.7/tests/mapgen/scenes/test_convchain.py +0 -23
  1196. mettagrid-0.2.0.7/tests/mapgen/scenes/test_inline_ascii.py +0 -63
  1197. mettagrid-0.2.0.7/tests/mapgen/scenes/test_layout.py +0 -81
  1198. mettagrid-0.2.0.7/tests/mapgen/scenes/test_make_connected.py +0 -19
  1199. mettagrid-0.2.0.7/tests/mapgen/scenes/test_maze.py +0 -42
  1200. mettagrid-0.2.0.7/tests/mapgen/scenes/test_mean_distance.py +0 -87
  1201. mettagrid-0.2.0.7/tests/mapgen/scenes/test_mirror.py +0 -71
  1202. mettagrid-0.2.0.7/tests/mapgen/scenes/test_multi_left_and_right.py +0 -11
  1203. mettagrid-0.2.0.7/tests/mapgen/scenes/test_nop.py +0 -8
  1204. mettagrid-0.2.0.7/tests/mapgen/scenes/test_radial_maze.py +0 -173
  1205. mettagrid-0.2.0.7/tests/mapgen/scenes/test_random.py +0 -28
  1206. mettagrid-0.2.0.7/tests/mapgen/scenes/test_random_dcss_scene.py +0 -11
  1207. mettagrid-0.2.0.7/tests/mapgen/scenes/test_random_objects.py +0 -15
  1208. mettagrid-0.2.0.7/tests/mapgen/scenes/test_random_scene.py +0 -27
  1209. mettagrid-0.2.0.7/tests/mapgen/scenes/test_random_yaml_scene.py +0 -31
  1210. mettagrid-0.2.0.7/tests/mapgen/scenes/test_remove_agents.py +0 -40
  1211. mettagrid-0.2.0.7/tests/mapgen/scenes/test_room_grid.py +0 -68
  1212. mettagrid-0.2.0.7/tests/mapgen/scenes/test_wfc.py +0 -20
  1213. mettagrid-0.2.0.7/tests/mapgen/scenes/test_yaml.py +0 -12
  1214. mettagrid-0.2.0.7/tests/mapgen/test_mapgen.py +0 -139
  1215. mettagrid-0.2.0.7/tests/mapgen/test_scene.py +0 -168
  1216. mettagrid-0.2.0.7/tests/mapgen/test_validate_all_ascii_maps.py +0 -114
  1217. mettagrid-0.2.0.7/tests/mapgen/utils/test_pattern.py +0 -241
  1218. mettagrid-0.2.0.7/tests/mapgen/utils/test_storable_map_io.py +0 -32
  1219. mettagrid-0.2.0.7/tests/profiling/test_stopwatch.py +0 -1189
  1220. mettagrid-0.2.0.7/tests/profiling/test_system_monitor.py +0 -117
  1221. mettagrid-0.2.0.7/tests/renderer/test_miniscope.py +0 -209
  1222. mettagrid-0.2.0.7/tests/renderer/test_nethack.py +0 -423
  1223. mettagrid-0.2.0.7/tests/test_action_compatibility.py +0 -466
  1224. mettagrid-0.2.0.7/tests/test_actions.py +0 -430
  1225. mettagrid-0.2.0.7/tests/test_attack_resource_exception.py +0 -104
  1226. mettagrid-0.2.0.7/tests/test_buffer_reuse.py +0 -122
  1227. mettagrid-0.2.0.7/tests/test_buffers.py +0 -458
  1228. mettagrid-0.2.0.7/tests/test_converter.py +0 -176
  1229. mettagrid-0.2.0.7/tests/test_env_config_serialization.py +0 -97
  1230. mettagrid-0.2.0.7/tests/test_env_map.py +0 -11
  1231. mettagrid-0.2.0.7/tests/test_gdrive.py +0 -64
  1232. mettagrid-0.2.0.7/tests/test_global_obs_config.py +0 -156
  1233. mettagrid-0.2.0.7/tests/test_global_observations.py +0 -15
  1234. mettagrid-0.2.0.7/tests/test_global_reward_observations.py +0 -236
  1235. mettagrid-0.2.0.7/tests/test_grid_object.cpp +0 -72
  1236. mettagrid-0.2.0.7/tests/test_gym_env.py +0 -113
  1237. mettagrid-0.2.0.7/tests/test_interactive.py +0 -244
  1238. mettagrid-0.2.0.7/tests/test_leaks.py +0 -79
  1239. mettagrid-0.2.0.7/tests/test_mettagrid.cpp +0 -947
  1240. mettagrid-0.2.0.7/tests/test_mettagrid.py +0 -141
  1241. mettagrid-0.2.0.7/tests/test_move.py +0 -835
  1242. mettagrid-0.2.0.7/tests/test_new_env_hierarchy.py +0 -219
  1243. mettagrid-0.2.0.7/tests/test_observations.py +0 -778
  1244. mettagrid-0.2.0.7/tests/test_pettingzoo_env.py +0 -357
  1245. mettagrid-0.2.0.7/tests/test_pufferlib_integration.py +0 -136
  1246. mettagrid-0.2.0.7/tests/test_resource_loss.py +0 -186
  1247. mettagrid-0.2.0.7/tests/test_rewards.py +0 -208
  1248. mettagrid-0.2.0.7/tests/test_rotate.py +0 -241
  1249. mettagrid-0.2.0.7/tests/test_stats_rewards.py +0 -129
  1250. mettagrid-0.2.0.7/tests/test_stats_tracker.cpp +0 -228
  1251. mettagrid-0.2.0.7/tests/test_stats_writer.py +0 -113
  1252. mettagrid-0.2.0.7/tests/test_swap.py +0 -302
  1253. mettagrid-0.2.0.7/tests/test_tags.py +0 -624
  1254. mettagrid-0.2.0.7/tests/test_visitation_counts.py +0 -292
  1255. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/LICENSE +0 -0
  1256. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/benchmarks/BUILD +0 -0
  1257. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/cpp/include/mettagrid/objects/usable.hpp +0 -0
  1258. /mettagrid-0.2.0.7/mettagrid.egg-info/dependency_links.txt → /mettagrid-0.2.0.36/ensure_mettascope.py +0 -0
  1259. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/lint/BUILD +0 -0
  1260. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/lint/clang_tidy.bzl +0 -0
  1261. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/lint/clang_tidy_wrapper.sh +0 -0
  1262. /mettagrid-0.2.0.7/python/src/mettagrid/mapgen/__init__.py → /mettagrid-0.2.0.36/migrate_to_toplevel.py +0 -0
  1263. /mettagrid-0.2.0.7/python/src/mettagrid/py.typed → /mettagrid-0.2.0.36/nim/mettascope/src/mettascope/settings.nim +0 -0
  1264. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/python/src/mettagrid/mapgen/random/float.py +0 -0
  1265. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/python/src/mettagrid/mapgen/random/int.py +0 -0
  1266. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/python/src/mettagrid/mapgen/tools/dcss_import.py +0 -0
  1267. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/python/src/mettagrid/mapgen/utils/draw.py +0 -0
  1268. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/python/src/mettagrid/mapgen/utils/pattern.py +0 -0
  1269. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/python/src/mettagrid/profiling/memory_monitor.py +0 -0
  1270. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/python/src/mettagrid/profiling/stopwatch.py +0 -0
  1271. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/python/src/mettagrid/profiling/system_monitor.py +0 -0
  1272. /mettagrid-0.2.0.7/python/src/mettagrid/util/__init__.py → /mettagrid-0.2.0.36/python/src/mettagrid/py.typed +0 -0
  1273. {mettagrid-0.2.0.7/tests → mettagrid-0.2.0.36/python/src/mettagrid/simulator/multi_episode}/__init__.py +0 -0
  1274. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/python/src/mettagrid/test_support/observation_helper.py +0 -0
  1275. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/python/src/mettagrid/test_support/orientation.py +0 -0
  1276. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/python/src/mettagrid/test_support/token_types.py +0 -0
  1277. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/python/src/mettagrid/util/debug.py +0 -0
  1278. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/python/src/mettagrid/util/dict_utils.py +0 -0
  1279. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/python/src/mettagrid/util/diversity.py +0 -0
  1280. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36/python/src}/mettagrid.egg-info/entry_points.txt +0 -0
  1281. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36/python/src}/mettagrid.egg-info/top_level.txt +0 -0
  1282. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/setup.cfg +0 -0
  1283. /mettagrid-0.2.0.7/tests/map_builder/__init__.py → /mettagrid-0.2.0.36/test_action_map_change.py +0 -0
  1284. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/tests/map_builder/test_maze.py +0 -0
  1285. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/tests/map_builder/test_random.py +0 -0
  1286. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/tests/mapgen/random/test_float.py +0 -0
  1287. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/tests/mapgen/random/test_int.py +0 -0
  1288. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/tests/profiling/test_memory_monitor.py +0 -0
  1289. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/tests/run_test.py +0 -0
  1290. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/tests/test_diversity.py +0 -0
  1291. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/tests/test_forbidden_imports.py +0 -0
  1292. {mettagrid-0.2.0.7 → mettagrid-0.2.0.36}/tests/test_observations.cpp +0 -0
@@ -0,0 +1,93 @@
1
+ # Bazel configuration for mettagrid
2
+
3
+ # Common C++ build flags
4
+ build --cxxopt=-std=c++20
5
+ build --host_cxxopt=-std=c++20
6
+
7
+ # Use the current Python from environment
8
+ build --action_env=PYTHON_BIN_PATH
9
+ build --action_env=PYTHON_LIB_PATH
10
+ build --python_path=python
11
+
12
+ # Prod build mode. --compilation_mode=[opt|dbg] is a required Bazel field.
13
+ build:opt --compilation_mode=opt
14
+ build:opt --copt=-O3
15
+ build:opt --copt=-DNDEBUG
16
+ build:opt --strip=always
17
+
18
+ # Debug build mode. --compilation_mode=[opt|dbg] is a required Bazel field.
19
+ build:dbg --compilation_mode=dbg
20
+ build:dbg --strip=never
21
+ build:dbg --copt=-g
22
+ build:dbg --copt=-O0
23
+ build:dbg --spawn_strategy=local
24
+ build:dbg --strategy=CppCompile=local
25
+ build:dbg --apple_generate_dsym
26
+
27
+ # AddressSanitizer disabled - causes issues on macOS with Python extensions
28
+ # build:dbg --copt=-fsanitize=address
29
+ # build:dbg --copt=-fsanitize=undefined
30
+ # build:dbg --copt=-fsanitize=float-divide-by-zero
31
+ # build:dbg --copt=-fno-sanitize-recover=all
32
+ build:dbg --copt=-fstack-protector-strong
33
+ # build:dbg --linkopt=-fsanitize=address
34
+ # build:dbg --linkopt=-fsanitize=undefined
35
+ # build:dbg --linkopt=-fsanitize=float-divide-by-zero
36
+ # build:dbg --test_env=ASAN_OPTIONS=detect_leaks=0
37
+
38
+ # Test configuration
39
+ test --test_output=errors
40
+ test --test_summary=detailed
41
+ test --nocache_test_results
42
+
43
+ # Coverage configuration
44
+ coverage --combined_report=lcov
45
+ coverage --instrumentation_filter=//:mettagrid_lib,//:mettagrid_c
46
+
47
+ # Platform-specific settings for macOS
48
+ build:macos --copt=-fvisibility=hidden
49
+ build:macos --cxxopt=-stdlib=libc++
50
+ build:macos --linkopt=-stdlib=libc++
51
+ # Set minimum macOS deployment target to prevent platform tag issues
52
+ build:macos --macos_minimum_os=11.0
53
+ build:macos --copt=-mmacosx-version-min=11.0
54
+ build:macos --linkopt=-mmacosx-version-min=11.0
55
+ build:macos --host_copt=-mmacosx-version-min=11.0
56
+ build:macos --host_linkopt=-mmacosx-version-min=11.0
57
+
58
+ # Platform-specific settings for Linux
59
+ build:linux --copt=-fvisibility=hidden
60
+
61
+ # Detect and use platform config automatically
62
+ build --enable_platform_specific_config
63
+
64
+ # Silence some warnings in external dependencies
65
+ build --per_file_copt=external/.*@-w
66
+
67
+ # Enable colors in output
68
+ common --color=yes
69
+
70
+ # Show progress messages
71
+ common --show_progress_rate_limit=0.5
72
+
73
+ # Local disk cache configuration
74
+ build --disk_cache=~/.cache/bazel
75
+ build --repository_cache=~/.cache/bazel-repo
76
+
77
+ # Build execution optimization
78
+ build --jobs=auto
79
+ build --local_test_jobs=auto
80
+
81
+ # CI configuration - use system Python to avoid root user issues
82
+ # Remove BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN to allow toolchain detection
83
+ build:ci --repo_env=PYTHON_BIN_PATH=/usr/bin/python3
84
+ build:ci --python_path=/usr/bin/python3
85
+ # Skip hermetic Python toolchain in CI
86
+ build:ci --@rules_python//python/config_settings:bootstrap_impl=system
87
+
88
+ # Add retries for external dependency downloads to handle rate limiting
89
+ build:ci --repository_cache=~/.cache/bazel-repo
90
+ build:ci --experimental_repository_downloader_retries=5
91
+ build:ci --http_timeout_scaling=2.0
92
+ # Add delays between retries (exponential backoff)
93
+ build:ci --experimental_scale_timeouts=2.0
@@ -0,0 +1,23 @@
1
+ ---
2
+ Language: Cpp
3
+ BasedOnStyle: Google
4
+ IndentWidth: 2
5
+ ColumnLimit: 120
6
+ AccessModifierOffset: -2
7
+ AllowShortFunctionsOnASingleLine: Empty
8
+ # Changed from Stroustrup to Attach as per request
9
+ BreakBeforeBraces: Attach
10
+ DerivePointerAlignment: false
11
+ PointerAlignment: Left
12
+ AlignAfterOpenBracket: Align
13
+ AlignConsecutiveAssignments: false
14
+ AlignConsecutiveDeclarations: false
15
+ AlignTrailingComments: true
16
+ # For function parameters wrapping
17
+ AllowAllParametersOfDeclarationOnNextLine: false
18
+ BinPackParameters: false
19
+ # For enums - one value per line when they don't fit
20
+ AllowShortEnumsOnASingleLine: false
21
+ # For vector constants and similar - one per line when they don't fit
22
+ BinPackArguments: false
23
+ IncludeBlocks: Regroup
@@ -0,0 +1,19 @@
1
+ Checks: >-
2
+ -*,
3
+ clang-analyzer-*,
4
+ bugprone-*,
5
+ -bugprone-easily-swappable-parameters,
6
+ -bugprone-branch-clone,
7
+ cppcoreguidelines-pro-type-member-init,
8
+ misc-definitions-in-headers,
9
+ performance-*,
10
+ -performance-enum-size
11
+
12
+ HeaderFilterRegex: '.*\/(mettagrid|src)\/.*\.(h|hpp)$'
13
+ ExcludeHeaderFilterRegex: '.*(pybind11|numpy|Python).*'
14
+
15
+ WarningsAsErrors: ''
16
+
17
+ CheckOptions:
18
+ - key: bugprone-assert-side-effect.AssertMacros
19
+ value: 'assert'
@@ -0,0 +1,7 @@
1
+ # ignore build artifacts
2
+ /build-debug
3
+ /build-release
4
+ /benchmark_output
5
+ /Testing
6
+
7
+ MODULE.bazel.lock
@@ -0,0 +1,46 @@
1
+ # ROOT BUILD.bazel file for mettagrid - references new structure
2
+ load("@pybind11_bazel//:build_defs.bzl", "pybind_extension", "pybind_library")
3
+
4
+ # Re-export main targets from cpp/ for backward compatibility
5
+ alias(
6
+ name = "mettagrid_c",
7
+ actual = "//cpp:mettagrid_c",
8
+ visibility = ["//visibility:public"],
9
+ )
10
+
11
+ alias(
12
+ name = "mettagrid_lib",
13
+ actual = "//cpp:mettagrid_core",
14
+ visibility = ["//visibility:public"],
15
+ )
16
+
17
+ # Export the .clang-tidy config file for use by the linter
18
+ exports_files([".clang-tidy"])
19
+
20
+ # Package group for internal visibility
21
+ package_group(
22
+ name = "internal",
23
+ packages = [
24
+ "//cpp/...",
25
+ "//python/...",
26
+ "//benchmarks/...",
27
+ "//tests/...",
28
+ ],
29
+ )
30
+
31
+ # Documentation and configuration files
32
+ filegroup(
33
+ name = "docs",
34
+ srcs = glob(["docs/**/*.md"],
35
+ allow_empty=True),
36
+ visibility = ["//visibility:public"]
37
+ )
38
+
39
+ filegroup(
40
+ name = "configs",
41
+ srcs = glob([
42
+ "configs/**/*.yaml",
43
+ "configs/**/*.map",
44
+ ], allow_empty = True),
45
+ visibility = ["//visibility:public"],
46
+ )
@@ -0,0 +1,2 @@
1
+ root=src/mettagrid
2
+ linelength=120
@@ -0,0 +1,15 @@
1
+ include bazel_build.py
2
+ include BUILD.bazel
3
+ include MODULE.bazel
4
+ include MODULE.bazel.lock
5
+ include .bazelrc
6
+
7
+ # Include the entire cpp directory with all BUILD files, source and header files
8
+ recursive-include cpp *.cpp *.hpp *.bazel BUILD
9
+ recursive-include benchmarks *.cpp *.py BUILD
10
+ recursive-include tests *.cpp *.py BUILD
11
+ recursive-include lint *.sh *.bzl BUILD
12
+ graft nim/mettascope
13
+ prune nim/mettascope/nimbledeps
14
+ prune nim/mettascope/dist
15
+ prune nim/mettascope/build
@@ -0,0 +1,44 @@
1
+ # MODULE.bazel for mettagrid - using Bzlmod (modern Bazel module system)
2
+ module(name = "mettagrid", version = "0.1.6")
3
+
4
+ # Basic Bazel dependencies
5
+ bazel_dep(name = "platforms", version = "1.0.0")
6
+ bazel_dep(name = "bazel_skylib", version = "1.8.1")
7
+
8
+ # C++ rules and toolchain
9
+ bazel_dep(name = "rules_cc", version = "0.2.0")
10
+
11
+ # Python toolchain - use latest compatible version
12
+ bazel_dep(name = "rules_python", version = "1.5.3")
13
+
14
+ python = use_extension("@rules_python//python/extensions:python.bzl", "python")
15
+ python.defaults(
16
+ python_version = "3.12",
17
+ python_version_env = "METTAGRID_BAZEL_PYTHON_VERSION",
18
+ )
19
+ python.toolchain(
20
+ python_version = "3.12",
21
+ )
22
+ python.toolchain(
23
+ python_version = "3.13",
24
+ )
25
+
26
+ # pybind11 for Python bindings
27
+ bazel_dep(name = "pybind11_bazel", version = "2.13.6")
28
+
29
+ # Google Test for testing
30
+ bazel_dep(name = "googletest", version = "1.17.0")
31
+
32
+ # Google Benchmark for benchmarking
33
+ bazel_dep(name = "google_benchmark", version = "1.9.4")
34
+
35
+ # Abseil (dependency of some Google libraries)
36
+ bazel_dep(name = "abseil-cpp", version = "20250814.0")
37
+
38
+ # make compile_commands.json with: bazel run @hedron_compile_commands//:refresh_all
39
+ bazel_dep(name = "hedron_compile_commands", version = "")
40
+ git_override(
41
+ module_name = "hedron_compile_commands",
42
+ remote = "https://github.com/hedronvision/bazel-compile-commands-extractor.git",
43
+ commit = "abb61a688167623088f8768cc9264798df6a9d10",
44
+ )
@@ -0,0 +1,58 @@
1
+ .PHONY: help build build-prod benchmark test coverage format-check format-fix
2
+
3
+ # Default target
4
+ help:
5
+ @echo "Available targets:"
6
+ @echo " build - Debug build"
7
+ @echo " build-prod - Release build (optimized)"
8
+ @echo " benchmark - Build and run benchmarks"
9
+ @echo " test - Run C++ unit tests"
10
+ @echo " coverage - Run tests (C++ coverage not available on macOS)"
11
+ @echo " format-check - Verify code is clang-formatted"
12
+ @echo " format-fix - Auto-format code with clang-format"
13
+
14
+ # Debug build
15
+ build:
16
+ @echo "Building debug..."
17
+ bazel build --config=dbg //:mettagrid_c
18
+
19
+ # Production release build
20
+ build-prod:
21
+ @echo "Building release..."
22
+ bazel build --config=opt //:mettagrid_c
23
+
24
+ # Build and run benchmarks
25
+ PYTEST_FLAGS ?=
26
+ ifneq ($(strip $(VERBOSE)),)
27
+ PYTEST_FLAGS += -s
28
+ endif
29
+
30
+ benchmark:
31
+ @echo "Building C++ benchmarks..."
32
+ bazel build --config=opt //benchmarks:test_mettagrid_env_benchmark
33
+ @echo "Creating build-release directory..."
34
+ mkdir -p build-release
35
+ @echo "Copying benchmark binaries..."
36
+ cp -f bazel-bin/benchmarks/test_mettagrid_env_benchmark build-release/
37
+ chmod +x build-release/test_mettagrid_env_benchmark
38
+ @echo "Running C++ benchmarks..."
39
+ # Note: Using the copied binary instead of 'bazel run' to avoid Python environment issues
40
+ ./build-release/test_mettagrid_env_benchmark || echo "C++ benchmark failed - this may be due to Python environment issues"
41
+ @echo "Running Python benchmarks..."
42
+ uv run pytest benchmarks/test_mettagrid_env_benchmark.py -v --benchmark-only $(PYTEST_FLAGS)
43
+
44
+ # Run unit tests
45
+ test: build
46
+ @echo "Running unit tests..."
47
+ bazel test --config=dbg //tests:tests_all
48
+
49
+ # Formatting
50
+ format-check:
51
+ @echo "Checking code formatting..."
52
+ @clang-format --dry-run --Werror -style=file $(shell find cpp/src cpp/include tests benchmarks -name '*.c' -o -name '*.h' -o -name '*.cpp' -o -name '*.hpp' 2>/dev/null)
53
+ @echo "All files are correctly formatted"
54
+
55
+ format-fix:
56
+ @echo "Reformatting code..."
57
+ @clang-format -i -style=file $(shell find cpp/src cpp/include tests benchmarks -name '*.c' -o -name '*.h' -o -name '*.cpp' -o -name '*.hpp' 2>/dev/null)
58
+ @echo "Code reformatted"
@@ -0,0 +1,366 @@
1
+ Metadata-Version: 2.4
2
+ Name: mettagrid
3
+ Version: 0.2.0.36
4
+ Summary: A fast grid-based open-ended MARL environment
5
+ Author-email: David Bloomin <daveey@gmail.com>
6
+ License: MIT
7
+ Project-URL: Homepage, https://daveey.github.io
8
+ Project-URL: Repository, https://github.com/Metta-AI/mettagrid
9
+ Keywords: gridworld,minigrid,rl,reinforcement-learning,environment,gym
10
+ Requires-Python: <3.13,>=3.12
11
+ Description-Content-Type: text/markdown
12
+ License-File: LICENSE
13
+ Requires-Dist: boto3>=1.38.32
14
+ Requires-Dist: botocore>=1.38.29
15
+ Requires-Dist: gymnasium>=1.1.1
16
+ Requires-Dist: pettingzoo>=1.25
17
+ Requires-Dist: pufferlib-core
18
+ Requires-Dist: pydantic>=2.12.2
19
+ Requires-Dist: pyyaml>=6.0.2
20
+ Dynamic: license-file
21
+
22
+ # MettaGrid Environment
23
+
24
+ MettaGrid is a multi-agent gridworld environment for studying the emergence of cooperation and social behaviors in
25
+ reinforcement learning agents. The environment features a variety of objects and actions that agents can interact with
26
+ to manage resources, engage in combat, share with others, and optimize their rewards.
27
+
28
+ ## Requirements
29
+
30
+ - Bazel 7.0.0 or newer (the project uses Bzlmod and modern Bazel features)
31
+ - Python 3.11 or newer
32
+ - C++ compiler with C++20 support
33
+
34
+ ## Overview
35
+
36
+ In MettaGrid, agents navigate a gridworld and interact with various objects to manage their energy, harvest resources,
37
+ engage in combat, and cooperate with other agents. The key dynamics include:
38
+
39
+ - **Energy Management**: Agents must efficiently manage their energy, which is required for all actions. They can
40
+ harvest resources and convert them to energy at charger stations.
41
+ - **Resource Gathering**: Agents can gather resources from generator objects scattered throughout the environment.
42
+ - **Cooperation and Sharing**: Agents have the ability to share resources with other agents and use energy to power the
43
+ heart altar, which provides rewards.
44
+ - **Combat**: Agents can attack other agents to temporarily freeze them and steal their resources. They can also use
45
+ shields to defend against attacks.
46
+
47
+ The environment is highly configurable, allowing for experimentation with different world layouts, object placements,
48
+ and agent capabilities.
49
+
50
+ ## Objects
51
+
52
+ ### Agent
53
+
54
+ <img src="https://github.com/daveey/Griddly/blob/develop/resources/images/oryx/oryx_tiny_galaxy/tg_sliced/tg_monsters/tg_monsters_astronaut_u1.png?raw=true" width="32"/>
55
+
56
+ The `Agent` object represents an individual agent in the environment. Agents can move, rotate, attack, and interact with
57
+ other objects. Each agent has energy, resources, and shield properties that govern its abilities and interactions.
58
+
59
+ ### Altar
60
+
61
+ <img src="https://github.com/daveey/Griddly/blob/develop/resources/images/oryx/oryx_tiny_galaxy/tg_sliced/tg_items/tg_items_heart_full.png?raw=true" width="32"/>
62
+
63
+ The `Altar` object allows agents to spend energy to gain rewards. Agents can power the altar by using the `use` action
64
+ when near it. The altar has a cooldown period between uses.
65
+
66
+ - Using the heart altar costs `altar.use_cost energy`. So, no matter how much energy you have, you are always dumping
67
+ the same amount of energy in it and getting the same amount of reward.
68
+ - After the heart altar is used, it is unable to be used for the next value in `altar.cooldown` (defaults to a single
69
+ delay) timesteps. The cooldown field accepts either an integer or a list of integers; when a list is provided the
70
+ altar cycles through those delays.
71
+ - A single use of the heart altar gives you a single unit of reward: if
72
+ `target._type_id == ObjectType.AltarT: self.env._rewards[actor_id] += 1`
73
+
74
+ ### Converter
75
+
76
+ <img src="https://github.com/daveey/Griddly/blob/develop/resources/images/oryx/oryx_tiny_galaxy/tg_sliced/tg_items/tg_items_pda_A.png?raw=true" width="32"/>
77
+
78
+ The `Converter` object allows agents to convert their harvested resources into energy. Agents can use converters by
79
+ moving to them and taking the `use` action. Each use of a converter provides a specified amount of energy and has a
80
+ cooldown period.
81
+
82
+ - Using the converter does not cost any energy.
83
+ - Using the converter outputs `converter.energy_output.r1` energy
84
+ - see `this.output_energy = cfg[b"energy_output.r1"]` in the Converter cppclass
85
+ - Using the converter increments resource 2 by one and decrements resource 1 by 1
86
+ - There is currently no use for `converter.energy_output.r2` and `converter.energy_output.r3`
87
+ - After the converter is used, it waits for the next value in `converter.cooldown` before it can be used again.
88
+ Supplying a list of integers causes the converter to cycle through the provided schedule.
89
+
90
+ ### Generator
91
+
92
+ <img src="https://github.com/daveey/Griddly/blob/develop/resources/images/oryx/oryx_fantasy/ore-0.png?raw=true" width="32"/>
93
+
94
+ The `Generator` object produces resources that agents can harvest. Agents can gather resources from generators by moving
95
+ to them and taking the `use` action. Generators have a specified capacity and replenish resources over time.
96
+
97
+ - Using the generator once gives one resource 1
98
+ - After the generator is used, it is unable to be used for the next value in `generator.cooldown` timesteps
99
+
100
+ ### Wall
101
+
102
+ <img src="https://github.com/daveey/Griddly/blob/develop/resources/images/oryx/oryx_fantasy/wall2-0.png?raw=true" width="32"/>
103
+
104
+ The `Wall` object acts as an impassable barrier in the environment, restricting agent movement.
105
+
106
+ ### Cooldown
107
+
108
+ The `cooldown` property holds one or more delays that determine how long objects wait before they can be used again.
109
+ When provided as a list, the delays are applied cyclically.
110
+
111
+ ## Actions
112
+
113
+ ### Move / Rotate
114
+
115
+ The `move` action allows agents to move to an adjacent cell in the gridworld. The action has two modes: moving forward
116
+ and moving backward relative to the agent's current orientation.
117
+
118
+ The `rotate` action enables agents to change their orientation within the gridworld. Agents can rotate to face in four
119
+ directions: down, left, right, and up.
120
+
121
+ ### Attack
122
+
123
+ The `attack` action allows agents to attack other agents or objects within their attack range. Successful attacks freeze
124
+ the target for `freeze_duration` timesteps and allow the attacker to steal resources. Further, the attacked agent's
125
+ energy is set to `0`. Attacks have a cost and inflict a damage value. The agent selects from one of nine coordinates
126
+ within its attack range.
127
+
128
+ ### Shield (Toggle)
129
+
130
+ The `shield` action turns on a shield. When the shield is active, the agent is protected from attacks by other agents.
131
+ The shield consumes energy defined by `upkeep.shield` while active. Attack damage is subtracted from the agent's energy,
132
+ rather than freezing the agent.
133
+
134
+ ### Transfer
135
+
136
+ The `transfer` action enables agents to share resources with other agents. Agents can choose to transfer specific
137
+ resources to another agent in an adjacent cell. It is currently not implemented.
138
+
139
+ ### Use
140
+
141
+ The `use` action allows agents to interact with objects such as altars, converters, and generators. The specific effects
142
+ of the `use` action depend on the target object and can include converting resources to energy, powering the altar for
143
+ rewards, or harvesting resources from generators.
144
+
145
+ ## Configuration
146
+
147
+ The MettaGrid environment is highly configurable through the use of YAML configuration files. These files specify the
148
+ layout of the gridworld, the placement of objects, and various properties of the objects and agents.
149
+
150
+ **Current settings:**
151
+
152
+ 1. Ore   - Base resource obtained from mines. Mines produce one ore when used. No resource requirements for use.   -
153
+ Reward value: 0.005 per unit (max 2)   - Used to create batteries and lasers
154
+ 2. Battery   - Intermediate resource created from ore at a generator. Generator turns one ore into one battery.   -
155
+ Reward value: 0.01 per unit (max 2)   - Used to create hearts and lasers
156
+ 3. Heart / heart altar   - High value reward, requires 3 batteries to be converted into a heart at a heart altar.
157
+ 4. Laser   - Weapon resource created from ore and batteries. Requires 1 ore and 2 batteries. Created at the lasery.
158
+
159
+ - Consumed on use. When hitting an unarmored agent: freezes them and steals their whole inventory. When hitting an
160
+ armoured agent, destroys their armor. **Inventory System**
161
+ - Agents have limited inventory space (default max: 50 items)
162
+ - Resources provide rewards just by being in inventory (up to their max reward value)
163
+ - Resources can be stolen through attacks Objects Various buildings: Mine, Generator, Armory, Lasery, Altar, Lab,
164
+ Factory, Temple.
165
+ - HP — hitpoints, the number of times something can be hit before destruction.
166
+ - Cooldown between uses (varies by building)
167
+ - Can be damaged and destroyed by attacks
168
+
169
+ ## Environment Architecture
170
+
171
+ MettaGrid uses a modular architecture designed primarily for the Softmax Studio ML project, with lightweight adapters to
172
+ maintain compatibility with external RL frameworks:
173
+
174
+ ### Primary Training Environment
175
+
176
+ **`PufferMettaGridEnv`** - The main environment actively developed for Softmax Studio training systems
177
+
178
+ - Full-featured environment with comprehensive stats collection, replay recording, and curriculum support
179
+ - PufferLib-compatible environment wrapper that provides reset/step API
180
+ - **Exclusively used** by `metta.rl.trainer` and `metta.sim.simulation`
181
+ - Continuously developed and optimized for Softmax Studio use cases
182
+ - Backward compatible with existing training code
183
+
184
+ ### Core Infrastructure
185
+
186
+ **`Simulation`** - Core simulation class for running MettaGrid simulations
187
+
188
+ - Foundation that provides the core game mechanics and performance
189
+ - Direct simulation access without environment API (no reset/step)
190
+ - Use when you need fine-grained control over simulation steps
191
+
192
+ ### External Framework Compatibility Adapters
193
+
194
+ Lightweight wrappers around `MettaGridCore` to maintain compatibility with other training systems:
195
+
196
+ - **`MettaGridGymEnv`** - Gymnasium compatibility for research workflows
197
+ - **`MettaGridPettingZooEnv`** - PettingZoo compatibility for multi-agent research
198
+ - **`MettaGridPufferEnv`** - PufferLib compatibility for high-performance external training
199
+
200
+ **Important**: These adapters are **only used with their respective training systems**, not with the Metta trainer.
201
+
202
+ ### Design Philosophy
203
+
204
+ - **Primary Focus**: `PufferMettaGridEnv` receives active development and new features for Softmax Studio
205
+ - **Compatibility Maintenance**: External adapters ensure other frameworks continue working as the core evolves
206
+ - **Testing for Compatibility**: Demos verify external frameworks remain functional during core development
207
+ - **Clear Separation**: Each environment type serves its specific training system - no mixing between systems
208
+
209
+ ### Compatibility Testing Demos
210
+
211
+ These demos ensure external framework adapters remain functional as the core environment evolves:
212
+
213
+ ```bash
214
+ # Verify PettingZoo compatibility
215
+ python -m mettagrid.demos.demo_train_pettingzoo
216
+
217
+ # Verify PufferLib compatibility
218
+ python -m mettagrid.demos.demo_train_puffer
219
+
220
+ # Verify Gymnasium compatibility
221
+ python -m mettagrid.demos.demo_train_gym
222
+ ```
223
+
224
+ The demos serve as regression tests to catch compatibility issues during core development, ensuring external users can
225
+ continue using their preferred frameworks.
226
+
227
+ ## Building and testing
228
+
229
+ For local development, refer to the top-level [README.md](../README.md) in this repository.
230
+
231
+ ### Bazel
232
+
233
+ By default, `uv sync` will run the Bazel build automatically via the custom build backend. If you need to run C++ tests
234
+ and benchmarks directly, you'll need to invoke `bazel` directly.
235
+
236
+ Build C++ tests and benchmarks in debug mode:
237
+
238
+ ```sh
239
+ # Build with debug flags
240
+ bazel build --config=dbg //:mettagrid_c
241
+ # Run all tests
242
+ bazel test //...
243
+ ```
244
+
245
+ For benchmarks you might prefer to use the optimized build:
246
+
247
+ ```sh
248
+ # Build with optimizations
249
+ bazel build --config=opt //:mettagrid_c
250
+
251
+ # Run benchmarks
252
+ ./build-release/benchmarks/grid_object_benchmark
253
+ ```
254
+
255
+ ## Debugging C++ Code
256
+
257
+ MettaGrid is written in C++ with Python bindings via pybind11. You can debug C++ code directly in VSCode/Cursor by
258
+ setting breakpoints in the C++ source files.
259
+
260
+ ### Prerequisites
261
+
262
+ 1. **VSCode Extension**: Install the
263
+ [Python C++ Debugger](https://marketplace.visualstudio.com/items?itemName=benjamin-simmonds.pythoncpp-debug)
264
+ extension (`pythoncpp`)
265
+ 2. **Debug Build**: Always build with `DEBUG=1` to enable debug symbols and dSYM generation
266
+
267
+ ### Setup
268
+
269
+ The repository includes pre-configured launch configurations in `.vscode/launch.json`:
270
+
271
+ - **MettaGrid Demo** and other pythoncpp configurations - Combined Python + C++ debugging session for the demo script
272
+ (requires the pythoncpp extension)
273
+ - **\_C++ Attach** - Attach C++ debugger to any running Python process (shared by all configurations but can be ran
274
+ manually).
275
+
276
+ ### Quick Start
277
+
278
+ 1. **Build with debug symbols**:
279
+ - Clean everything up
280
+
281
+ ```sh
282
+ cd packages/mettagrid # (from root of the repository)
283
+ bazel clean --expunge
284
+ ```
285
+
286
+ - Rebuild with debug flags
287
+
288
+ ```sh
289
+ bazel build --config=dbg //:mettagrid_c
290
+ ```
291
+
292
+ - Or Reinstall with DEBUG=1 to trigger dSYM generation
293
+
294
+ ```sh
295
+ cd ../..
296
+ export DEBUG=1
297
+ uv sync --reinstall-package mettagrid
298
+ ```
299
+
300
+ 2. **Set breakpoints** in both Python and C++ files (e.g., `packages/mettagrid/cpp/bindings/mettagrid_c.cpp`,
301
+ `packages/mettagrid/demos/demo_train_pettingzoo.py`)
302
+
303
+ 3. **Launch debugger** using the "MettaGrid Demo" or any other pythoncpp configuration from the VSCode Run panel.
304
+
305
+ 4. **Alternatively**, you can use the "\_C++ Attach" configuration to attach the debugger to any running Python process.
306
+ It will ask you to select a process - type "metta" or "python" to filter the list.
307
+
308
+ ### Testing C++ Debugging
309
+
310
+ To verify that C++ breakpoints are working correctly, use a simple test that calls from Python into C++:
311
+
312
+ #### Quick Test Method
313
+
314
+ 1. **Add a test call** to any Python entrypoint that uses mettagrid:
315
+
316
+ ```python
317
+ def test_cpp_debugging() -> None:
318
+ """Test function to trigger C++ code for debugging."""
319
+ try:
320
+ from mettagrid.mettagrid_c import PackedCoordinate
321
+
322
+ # Call a simple C++ function
323
+ packed = PackedCoordinate.pack(5, 10)
324
+ print(f"C++ test: PackedCoordinate.pack(5, 10) = {packed}")
325
+
326
+ # Unpack it back
327
+ r, c = PackedCoordinate.unpack(packed)
328
+ print(f"C++ test: PackedCoordinate.unpack({packed}) = ({r}, {c})")
329
+ except Exception as e:
330
+ print(f"C++ debugging test failed: {e}")
331
+
332
+ # Call at module level or early in your script
333
+ test_cpp_debugging()
334
+ ```
335
+
336
+ 2. **Set a C++ breakpoint** in the corresponding C++ implementation:
337
+ - Open `packages/mettagrid/cpp/include/mettagrid/systems/packed_coordinate.hpp`
338
+ - Find the `pack()` or `unpack()` function implementation
339
+ - Set a breakpoint inside the function body (e.g., on the return statement)
340
+
341
+ 3. **Launch your debug configuration** (e.g., "MettaGrid Demo" or any pythoncpp configuration)
342
+
343
+ 4. **Verify the breakpoint hits** when the Python code calls `PackedCoordinate.pack()`
344
+
345
+ #### Where to Add the Test
346
+
347
+ Add the test call early in any Python entrypoint that uses mettagrid:
348
+
349
+ - Demo scripts (e.g., `packages/mettagrid/demos/demo_train_*.py`)
350
+ - CLI entrypoints (e.g., `packages/cogames/src/cogames/main.py`)
351
+ - Tool runners (e.g., `common/src/metta/common/tool/run_tool.py`)
352
+ - Training scripts (e.g., `metta/tools/train.py`)
353
+
354
+ **Note**: This test is only for verifying your debugging setup. Remove it before committing.
355
+
356
+ ### Configuration Files
357
+
358
+ - **`.bazelrc`** - Defines the `--config=dbg` build mode with debug flags (`-g`, `-O0`, `--apple_generate_dsym`)
359
+ - **`.vscode/launch.json`** - Contains launch configurations for combined Python/C++ debugging
360
+
361
+ ### Important Notes
362
+
363
+ - **Always use `DEBUG=1`**: Without this environment variable, dSYM files won't be generated and C++ breakpoints won't
364
+ work.
365
+ - **Source maps**: The launch config includes source maps to correctly locate C++ files in the packages/mettagrid's
366
+ workspace.