mettagrid 0.2.0.15__tar.gz → 0.2.0.16__tar.gz

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

Potentially problematic release.


This version of mettagrid might be problematic. Click here for more details.

Files changed (862) hide show
  1. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/.gitignore +2 -0
  2. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/PKG-INFO +1 -1
  3. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/labyrinth.map +1 -1
  4. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/mettagrid.egg-info/PKG-INFO +1 -1
  5. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/mettagrid.egg-info/SOURCES.txt +1 -5
  6. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/bindings/bindings.nim +24 -18
  7. mettagrid-0.2.0.16/nim/mettascope/src/mettascope/actions.nim +127 -0
  8. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope/common.nim +18 -5
  9. mettagrid-0.2.0.16/nim/mettascope/src/mettascope/pathfinding.nim +113 -0
  10. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope/timeline.nim +14 -5
  11. mettagrid-0.2.0.16/nim/mettascope/src/mettascope/utils.nim +150 -0
  12. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope/worldmap.nim +56 -2
  13. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/builder/building.py +55 -2
  14. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/builder/empty_converters.py +38 -2
  15. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/config/mettagrid_config.py +49 -20
  16. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/core.py +18 -9
  17. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/map_builder/ascii.py +20 -4
  18. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/map_builder/map_builder.py +2 -14
  19. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/map_builder/utils.py +1 -1
  20. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/mapgen.py +5 -3
  21. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/inline_ascii.py +6 -3
  22. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/types.py +9 -2
  23. mettagrid-0.2.0.16/python/src/mettagrid/mapgen/utils/ascii_grid.py +87 -0
  24. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/utils/storable_map.py +20 -6
  25. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/miniscope/buffer.py +36 -4
  26. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/miniscope/interactive.py +13 -3
  27. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/miniscope/renderer.py +39 -5
  28. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/test_support/mapgen.py +27 -8
  29. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/map_builder/test_ascii.py +11 -17
  30. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/map_builder/test_map_builder.py +2 -1
  31. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/map_builder/test_polymorphic_serialization.py +1 -1
  32. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/map_builder/test_utils.py +1 -1
  33. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_inline_ascii.py +1 -1
  34. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/test_mapgen.py +1 -2
  35. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/test_validate_all_ascii_maps.py +38 -6
  36. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/utils/test_storable_map_io.py +6 -1
  37. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/renderer/test_miniscope.py +27 -4
  38. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_actions.py +8 -23
  39. mettagrid-0.2.0.16/tests/test_attack_resource_exception.py +118 -0
  40. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_buffers.py +35 -38
  41. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_converter.py +59 -49
  42. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_global_obs_config.py +46 -34
  43. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_move.py +21 -20
  44. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_pettingzoo_env.py +3 -1
  45. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_rewards.py +50 -37
  46. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_rotate.py +41 -38
  47. mettagrid-0.2.0.15/MODULE.bazel.lock +0 -391
  48. mettagrid-0.2.0.15/nim/mettascope/src/mettascope/actions.nim +0 -54
  49. mettagrid-0.2.0.15/nim/mettascope/src/mettascope/utils.nim +0 -59
  50. mettagrid-0.2.0.15/python/src/mettagrid/mapgen/utils/ascii_grid.py +0 -55
  51. mettagrid-0.2.0.15/python/src/mettagrid/renderer/miniscope/symbols.py +0 -86
  52. mettagrid-0.2.0.15/python/src/mettagrid/util/char_encoder.py +0 -67
  53. mettagrid-0.2.0.15/tests/diagnose.py +0 -228
  54. mettagrid-0.2.0.15/tests/test_attack_resource_exception.py +0 -104
  55. mettagrid-0.2.0.15/tests/test_swap.py +0 -302
  56. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/.bazelrc +0 -0
  57. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/.clang-format +0 -0
  58. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/.clang-tidy +0 -0
  59. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/BUILD.bazel +0 -0
  60. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/CPPLINT.cfg +0 -0
  61. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/LICENSE +0 -0
  62. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/MANIFEST.in +0 -0
  63. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/MODULE.bazel +0 -0
  64. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/Makefile +0 -0
  65. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/README.md +0 -0
  66. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/bazel_build.py +0 -0
  67. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/benchmarks/BUILD +0 -0
  68. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/benchmarks/test_mettagrid_env_benchmark.cpp +0 -0
  69. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/benchmarks/test_mettagrid_env_benchmark.py +0 -0
  70. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/README.md +0 -0
  71. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/boxout.map +0 -0
  72. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/choose_wisely.map +0 -0
  73. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/corners.map +0 -0
  74. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/corridors.map +0 -0
  75. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/cylinder.map +0 -0
  76. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/cylinder_easy.map +0 -0
  77. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/easy_memory.map +0 -0
  78. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/emptyspace_outofsight.map +0 -0
  79. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/hall_of_mirrors.map +0 -0
  80. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/hard_memory.map +0 -0
  81. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/honeypot.map +0 -0
  82. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/journey_home.map +0 -0
  83. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/knotty.map +0 -0
  84. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/little_landmark_easy.map +0 -0
  85. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/little_landmark_hard.map +0 -0
  86. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/lobster_legs.map +0 -0
  87. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/lobster_legs_cues.map +0 -0
  88. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/medium_memory.map +0 -0
  89. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/memory3.map +0 -0
  90. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/memory_palace.map +0 -0
  91. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/memory_swirls.map +0 -0
  92. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/memory_swirls_hard.map +0 -0
  93. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/obstacles0.map +0 -0
  94. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/obstacles1.map +0 -0
  95. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/obstacles2.map +0 -0
  96. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/obstacles3.map +0 -0
  97. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/passing_things.map +0 -0
  98. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/radial_large.map +0 -0
  99. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/radial_maze.map +0 -0
  100. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/radial_mini.map +0 -0
  101. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/radial_small.map +0 -0
  102. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/rooms.map +0 -0
  103. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/spacey_memory.map +0 -0
  104. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/spiral_chamber.map +0 -0
  105. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/swirls.map +0 -0
  106. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/tease.map +0 -0
  107. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/tease_small.map +0 -0
  108. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/thecube.map +0 -0
  109. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/venture_out.map +0 -0
  110. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/walkaround.map +0 -0
  111. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/walls_outofsight.map +0 -0
  112. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/walls_withinsight.map +0 -0
  113. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/wanderout.map +0 -0
  114. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/which_way.map +0 -0
  115. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/navigation_sequence/you_shall_not_pass.map +0 -0
  116. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/object_use/shoot_out.map +0 -0
  117. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/object_use/swap_in.map +0 -0
  118. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/configs/maps/object_use/swap_out.map +0 -0
  119. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/BUILD.bazel +0 -0
  120. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/README.md +0 -0
  121. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/bindings/mettagrid_c.cpp +0 -0
  122. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/bindings/mettagrid_c.hpp +0 -0
  123. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/actions/action_handler.hpp +0 -0
  124. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/actions/attack.hpp +0 -0
  125. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/actions/change_color.hpp +0 -0
  126. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/actions/change_glyph.hpp +0 -0
  127. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/actions/get_output.hpp +0 -0
  128. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/actions/move.hpp +0 -0
  129. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/actions/noop.hpp +0 -0
  130. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/actions/orientation.hpp +0 -0
  131. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/actions/put_recipe_items.hpp +0 -0
  132. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/actions/rotate.hpp +0 -0
  133. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/actions/swap.hpp +0 -0
  134. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/config/mettagrid_config.hpp +0 -0
  135. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/core/event.hpp +0 -0
  136. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/core/grid.hpp +0 -0
  137. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/core/grid_object.hpp +0 -0
  138. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/core/hash.hpp +0 -0
  139. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/core/types.hpp +0 -0
  140. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/agent.hpp +0 -0
  141. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/agent_config.hpp +0 -0
  142. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/assembler.hpp +0 -0
  143. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/assembler_config.hpp +0 -0
  144. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/chest.hpp +0 -0
  145. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/chest_config.hpp +0 -0
  146. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/constants.hpp +0 -0
  147. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/converter.hpp +0 -0
  148. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/converter_config.hpp +0 -0
  149. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/has_inventory.hpp +0 -0
  150. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/inventory.hpp +0 -0
  151. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/inventory_config.hpp +0 -0
  152. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/production_handler.hpp +0 -0
  153. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/recipe.hpp +0 -0
  154. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/usable.hpp +0 -0
  155. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/objects/wall.hpp +0 -0
  156. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/renderer/hermes.hpp +0 -0
  157. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/systems/clipper.hpp +0 -0
  158. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/systems/clipper_config.hpp +0 -0
  159. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/systems/observation_encoder.hpp +0 -0
  160. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/systems/packed_coordinate.hpp +0 -0
  161. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/cpp/include/mettagrid/systems/stats_tracker.hpp +0 -0
  162. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/demo.py +0 -0
  163. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/demos/README.md +0 -0
  164. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/demos/demo_train_gym.py +0 -0
  165. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/demos/demo_train_pettingzoo.py +0 -0
  166. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/demos/demo_train_puffer.py +0 -0
  167. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/ensure_mettascope.py +0 -0
  168. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/lint/BUILD +0 -0
  169. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/lint/README.md +0 -0
  170. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/lint/clang_tidy.bzl +0 -0
  171. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/lint/clang_tidy_wrapper.sh +0 -0
  172. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/mettagrid.egg-info/dependency_links.txt +0 -0
  173. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/mettagrid.egg-info/entry_points.txt +0 -0
  174. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/mettagrid.egg-info/requires.txt +0 -0
  175. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/mettagrid.egg-info/top_level.txt +0 -0
  176. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/migrate_to_toplevel.py +0 -0
  177. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/AGENTS.md +0 -0
  178. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/README.md +0 -0
  179. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/__init__.py +0 -0
  180. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/bindings/__init__.py +0 -0
  181. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/cors_http_server.py +0 -0
  182. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/arrow.png +0 -0
  183. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/attack1.png +0 -0
  184. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/attack2.png +0 -0
  185. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/attack3.png +0 -0
  186. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/attack4.png +0 -0
  187. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/attack5.png +0 -0
  188. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/attack6.png +0 -0
  189. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/attack7.png +0 -0
  190. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/attack8.png +0 -0
  191. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/attack9.png +0 -0
  192. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/attack_nearest.png +0 -0
  193. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/converting.png +0 -0
  194. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/get_items.png +0 -0
  195. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/icons/attack.png +0 -0
  196. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/icons/attack_nearest.png +0 -0
  197. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/icons/change_color.png +0 -0
  198. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/icons/get_items.png +0 -0
  199. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/icons/move.png +0 -0
  200. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/icons/noop.png +0 -0
  201. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/icons/put_items.png +0 -0
  202. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/icons/rotate.png +0 -0
  203. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/icons/swap.png +0 -0
  204. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/icons/unknown.png +0 -0
  205. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/put_items.png +0 -0
  206. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/swap.png +0 -0
  207. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/thoughts.png +0 -0
  208. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/thoughts_lightning.png +0 -0
  209. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/actions/unknown.png +0 -0
  210. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/agents/agent.e.png +0 -0
  211. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/agents/agent.n.png +0 -0
  212. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/agents/agent.s.png +0 -0
  213. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/agents/agent.w.png +0 -0
  214. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/agents/footprints.png +0 -0
  215. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/agents/frozen.png +0 -0
  216. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/agents/future_arrow.png +0 -0
  217. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/agents/past_arrow.png +0 -0
  218. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/agents/path.png +0 -0
  219. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/crosshair.png +0 -0
  220. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/dash.png +0 -0
  221. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/effects/halo.png +0 -0
  222. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/emoji/alien.png +0 -0
  223. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/emoji/angry.png +0 -0
  224. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/emoji/down.png +0 -0
  225. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/emoji/happy.png +0 -0
  226. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/emoji/left.png +0 -0
  227. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/emoji/love.png +0 -0
  228. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/emoji/poo.png +0 -0
  229. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/emoji/right.png +0 -0
  230. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/emoji/sad.png +0 -0
  231. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/emoji/skull.png +0 -0
  232. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/emoji/sparkle.png +0 -0
  233. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/emoji/up.png +0 -0
  234. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/fonts/IBMPlexMono-Regular.ttf +0 -0
  235. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/fonts/IBMPlexSans-Bold.ttf +0 -0
  236. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/fonts/IBMPlexSans-Regular.ttf +0 -0
  237. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/fonts/NotoSansJP-Regular.ttf +0 -0
  238. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/fonts/jsMath-cmbx10.ttf +0 -0
  239. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/hHmLTy7slXTOej6opPqWpz.json +0 -0
  240. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/hHmLTy7slXTOej6opPqWpz.lastModified +0 -0
  241. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/images/05bab347bacaede7606b8e59426dc42b155a8fd6.png +0 -0
  242. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/images/11f0598c7a572fe7461bc54b07423b7b5e3e7a60.png +0 -0
  243. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/images/42480bc49710a5f0ebfafe1e1a7785068db37106.png +0 -0
  244. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/images/621976c3803ef1eea0c316c0e86e1bc31bd6dba4.png +0 -0
  245. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/images/79d04b14381789498b35cbd1ae05eb578ededb5f.png +0 -0
  246. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/images/7b2b3374ea1a80648e8c68a472dcbba188af3e8e.png +0 -0
  247. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/images/86e7f3e8b46af021592fa055ecb606c6b0825c12.png +0 -0
  248. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/images/ac4765273b78fb68ac1e913e54c54224b7f6f215.png +0 -0
  249. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/images/b765480fbb089bf76a68424612eeb48ddd95ccc7.png +0 -0
  250. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/images/eb9f0db464f0f04a52566cd211a561f76d1bcc2a.png +0 -0
  251. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fidget/images/f10e39779ee551c9d46a527d2ea2a67f434f2867.png +0 -0
  252. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/fonts/Inter-Regular.ttf +0 -0
  253. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/info.png +0 -0
  254. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/meta_grid_icon.png +0 -0
  255. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/minimapPip.png +0 -0
  256. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/agent.png +0 -0
  257. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/altar.png +0 -0
  258. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/armory.png +0 -0
  259. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/assembler.png +0 -0
  260. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/block.png +0 -0
  261. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/carbon_ex_dep.png +0 -0
  262. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/carbon_extractor.png +0 -0
  263. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/charger.png +0 -0
  264. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/chest.png +0 -0
  265. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/clay_oven.png +0 -0
  266. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/converter.png +0 -0
  267. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/empty.png +0 -0
  268. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/factory.png +0 -0
  269. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/floor.png +0 -0
  270. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/generator.png +0 -0
  271. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/generator_blue.png +0 -0
  272. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/generator_green.png +0 -0
  273. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/generator_red.png +0 -0
  274. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/geranium_extractor.png +0 -0
  275. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/germanium_ex_dep.png +0 -0
  276. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/germanium_extractor.png +0 -0
  277. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/ice_tower.png +0 -0
  278. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/ice_vase.png +0 -0
  279. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/lab.png +0 -0
  280. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/lasery.png +0 -0
  281. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/mine.png +0 -0
  282. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/mine_blue.png +0 -0
  283. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/mine_green.png +0 -0
  284. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/mine_red-1.png +0 -0
  285. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/mine_red.png +0 -0
  286. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/oxygen_ex_dep.png +0 -0
  287. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/oxygen_extractor.png +0 -0
  288. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/palm_tree.png +0 -0
  289. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/silicon_ex_dep.png +0 -0
  290. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/silicon_extractor.png +0 -0
  291. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/temple.png +0 -0
  292. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/unknown.png +0 -0
  293. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.0.png +0 -0
  294. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.e.png +0 -0
  295. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.fill.png +0 -0
  296. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.n.png +0 -0
  297. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.ne.png +0 -0
  298. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.ns.png +0 -0
  299. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.nse.png +0 -0
  300. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.nw.png +0 -0
  301. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.nwe.png +0 -0
  302. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.nws.png +0 -0
  303. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.nwse.png +0 -0
  304. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.png +0 -0
  305. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.s.png +0 -0
  306. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.se.png +0 -0
  307. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.w.png +0 -0
  308. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.we.png +0 -0
  309. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.ws.png +0 -0
  310. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wall.wse.png +0 -0
  311. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/water_well.png +0 -0
  312. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/weaving_loom.png +0 -0
  313. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/objects/wheat_field.png +0 -0
  314. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/replays/pens.json.z +0 -0
  315. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/agent_id.png +0 -0
  316. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/armor.png +0 -0
  317. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/battery.blue.png +0 -0
  318. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/battery.green.png +0 -0
  319. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/battery.png +0 -0
  320. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/battery.red.png +0 -0
  321. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/battery_blue.png +0 -0
  322. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/battery_green.png +0 -0
  323. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/battery_red.png +0 -0
  324. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/blue_gem.png +0 -0
  325. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/blueprint.png +0 -0
  326. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/bread.png +0 -0
  327. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/carbon.png +0 -0
  328. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/coal.png +0 -0
  329. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/coconut.png +0 -0
  330. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/copper_ore.png +0 -0
  331. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/diamond.png +0 -0
  332. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/energy.png +0 -0
  333. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/germanium.png +0 -0
  334. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/gold_ore.png +0 -0
  335. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/green_gem.png +0 -0
  336. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/heart.png +0 -0
  337. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/ice_granade.png +0 -0
  338. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/iron_ore.png +0 -0
  339. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/laser.png +0 -0
  340. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/lizard_hide.png +0 -0
  341. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/oil.png +0 -0
  342. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/ore.blue.png +0 -0
  343. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/ore.green.png +0 -0
  344. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/ore.png +0 -0
  345. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/ore.red.png +0 -0
  346. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/ore_blue.png +0 -0
  347. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/ore_green.png +0 -0
  348. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/ore_red.png +0 -0
  349. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/oxygen.png +0 -0
  350. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/palm_fiber.png +0 -0
  351. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/red_gem.png +0 -0
  352. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/reward.png +0 -0
  353. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/salt_water.png +0 -0
  354. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/sand.png +0 -0
  355. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/silicon.png +0 -0
  356. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/sisal.png +0 -0
  357. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/snake_skin.png +0 -0
  358. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/snow_ball.png +0 -0
  359. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/star.png +0 -0
  360. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/stone.png +0 -0
  361. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/straw_hat.png +0 -0
  362. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/turtle_shell.png +0 -0
  363. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/unknown.png +0 -0
  364. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/water.png +0 -0
  365. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/wheat.png +0 -0
  366. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/yellow_gem.png +0 -0
  367. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/resources/yucca_fiber.png +0 -0
  368. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/selection.png +0 -0
  369. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/target.png +0 -0
  370. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/tile.png +0 -0
  371. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/trace/attack.png +0 -0
  372. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/trace/attack_nearest.png +0 -0
  373. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/trace/change_color.png +0 -0
  374. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/trace/frozen.png +0 -0
  375. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/trace/get_items.png +0 -0
  376. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/trace/invalid.png +0 -0
  377. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/trace/move.png +0 -0
  378. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/trace/move_8way.png +0 -0
  379. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/trace/move_cardinal.png +0 -0
  380. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/trace/noop.png +0 -0
  381. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/trace/put_items.png +0 -0
  382. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/trace/rotate.png +0 -0
  383. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/trace/swap.png +0 -0
  384. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/trace/unknown.png +0 -0
  385. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/view/grid.png +0 -0
  386. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/data/white.png +0 -0
  387. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/mettascope.nimble +0 -0
  388. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope/agenttable.nim +0 -0
  389. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope/agenttraces.nim +0 -0
  390. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope/envconfig.nim +0 -0
  391. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope/footer.nim +0 -0
  392. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope/minimap.nim +0 -0
  393. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope/objectinfo.nim +0 -0
  394. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope/panels.nim +0 -0
  395. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope/replays.nim +0 -0
  396. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope/settings.nim +0 -0
  397. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope/shell.html +0 -0
  398. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope/sim.nim +0 -0
  399. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope.nim +0 -0
  400. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/nim/mettascope/src/mettascope.nims +0 -0
  401. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/pyproject.toml +0 -0
  402. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/README.md +0 -0
  403. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/__init__.py +0 -0
  404. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/builder/__init__.py +0 -0
  405. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/builder/envs.py +0 -0
  406. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/config/__init__.py +0 -0
  407. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/config/config.py +0 -0
  408. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/config/mettagrid_c_config.py +0 -0
  409. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/demo.py +0 -0
  410. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/envs/__init__.py +0 -0
  411. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/envs/gym_env.py +0 -0
  412. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/envs/gym_wrapper.py +0 -0
  413. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/envs/mettagrid_env.py +0 -0
  414. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/envs/pettingzoo_env.py +0 -0
  415. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/envs/puffer_base.py +0 -0
  416. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/map_builder/__init__.py +0 -0
  417. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/map_builder/assembler_map_builder.py +0 -0
  418. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/map_builder/maze.py +0 -0
  419. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/map_builder/perimeter_incontext.py +0 -0
  420. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/map_builder/random.py +0 -0
  421. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/__init__.py +0 -0
  422. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/load.py +0 -0
  423. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/mapgen_ascii.py +0 -0
  424. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/random/float.py +0 -0
  425. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/random/int.py +0 -0
  426. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scene.py +0 -0
  427. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/ascii.py +0 -0
  428. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/auto.py +0 -0
  429. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/bsp.py +0 -0
  430. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/convchain.py +0 -0
  431. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/copy_grid.py +0 -0
  432. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/README.md +0 -0
  433. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/amcnicky_arrival_choice.yaml +0 -0
  434. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/amcnicky_arrival_double_pillar.yaml +0 -0
  435. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/amcnicky_arrival_feature_with_door.yaml +0 -0
  436. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/amcnicky_arrival_flooded_fountain.yaml +0 -0
  437. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/amcnicky_arrival_single_pillar.yaml +0 -0
  438. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/amcnicky_arrival_underground_garden.yaml +0 -0
  439. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/angelslayer_arrival_pentagon.yaml +0 -0
  440. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/co_arrival_square_in_a_square_in_a_square.yaml +0 -0
  441. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/co_arrival_two_rings.yaml +0 -0
  442. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/denvon_arrival_hothouse.yaml +0 -0
  443. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/denvon_arrival_planthouse.yaml +0 -0
  444. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/denvon_arrival_waterhouse.yaml +0 -0
  445. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/doesnt_arrival_eight_statues.yaml +0 -0
  446. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dolorous_arrival_somebody's_watching_me.yaml +0 -0
  447. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_boxes_within_box.yaml +0 -0
  448. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_boxorama.yaml +0 -0
  449. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_line_fractal.yaml +0 -0
  450. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_long_road.yaml +0 -0
  451. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_radiant.yaml +0 -0
  452. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_rooms_a.yaml +0 -0
  453. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_rooms_with_view.yaml +0 -0
  454. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_shelter.yaml +0 -0
  455. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_snail.yaml +0 -0
  456. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_ternary.yaml +0 -0
  457. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_three_bigger_balls.yaml +0 -0
  458. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_three_smaller_balls.yaml +0 -0
  459. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_a.yaml +0 -0
  460. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_b.yaml +0 -0
  461. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_c.yaml +0 -0
  462. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_d.yaml +0 -0
  463. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_e.yaml +0 -0
  464. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_f.yaml +0 -0
  465. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_g.yaml +0 -0
  466. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_h.yaml +0 -0
  467. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_i.yaml +0 -0
  468. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_j.yaml +0 -0
  469. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_tiny_k.yaml +0 -0
  470. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_triangle_fractal.yaml +0 -0
  471. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_arrival_windows_large_door.yaml +0 -0
  472. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dpeg_chamrin_arrival_tetris.yaml +0 -0
  473. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dysonsfear_arrival_angles.yaml +0 -0
  474. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dysonsfear_arrival_boulevard.yaml +0 -0
  475. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/dysonsfear_arrival_nine_rooms.yaml +0 -0
  476. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/ebering_hopf_link.yaml +0 -0
  477. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/ebering_trefoil_3fold.yaml +0 -0
  478. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/ebering_trefoil_twist.yaml +0 -0
  479. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/eino_arrival_druids_welcome.yaml +0 -0
  480. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/eino_arrival_tree_alley.yaml +0 -0
  481. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/eino_arrival_water_cross.yaml +0 -0
  482. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/eino_arrival_water_star.yaml +0 -0
  483. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/erik_arrival_blinker_ship.yaml +0 -0
  484. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/erik_arrival_triangle_huge.yaml +0 -0
  485. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/erik_arrival_triangle_large.yaml +0 -0
  486. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/erik_arrival_triangle_medium.yaml +0 -0
  487. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/erik_arrival_triangle_small.yaml +0 -0
  488. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/giann_bridges.yaml +0 -0
  489. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/giann_forest_graveyard.yaml +0 -0
  490. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/giann_horns.yaml +0 -0
  491. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/giann_wishing_wells.yaml +0 -0
  492. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/grunt_arrival_crossed_arrows.yaml +0 -0
  493. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/grunt_arrival_lava_bath.yaml +0 -0
  494. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/ldierk_walled_garden.yaml +0 -0
  495. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/ldierk_walled_garden_2.yaml +0 -0
  496. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/lemuel_arrival_cross.yaml +0 -0
  497. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/lemuel_arrival_funnel.yaml +0 -0
  498. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/lemuel_arrival_lava_pool.yaml +0 -0
  499. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/lightli_arrival_chessboard.yaml +0 -0
  500. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/lightli_arrival_flooded_house.yaml +0 -0
  501. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/lightli_arrival_lavapool.yaml +0 -0
  502. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/lightli_arrival_maybe_door_vault.yaml +0 -0
  503. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/lightli_arrival_statue_moat.yaml +0 -0
  504. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/lightli_iron_boxes.yaml +0 -0
  505. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/lightli_molten_gateway.yaml +0 -0
  506. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/matt_arrival_grand_opening.yaml +0 -0
  507. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/matt_arrival_los_fun.yaml +0 -0
  508. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/matt_arrival_refuge.yaml +0 -0
  509. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/matt_arrival_spirals.yaml +0 -0
  510. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_diagonal_passages.yaml +0 -0
  511. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_doors.yaml +0 -0
  512. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_four_houses.yaml +0 -0
  513. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_open_corners.yaml +0 -0
  514. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_plants_in_alcoves.yaml +0 -0
  515. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_pointy.yaml +0 -0
  516. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_radiant_lines.yaml +0 -0
  517. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_three_doors.yaml +0 -0
  518. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_up_and_down.yaml +0 -0
  519. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/minmay_arrival_wavy_path.yaml +0 -0
  520. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/mrwooster_arrival_arrow.yaml +0 -0
  521. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/mrwooster_arrival_statue.yaml +0 -0
  522. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/mrwooster_arrival_statue_2.yaml +0 -0
  523. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/mrwooster_arrival_statue_3.yaml +0 -0
  524. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/ms813_arrival_door_cone_large.yaml +0 -0
  525. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/ms813_arrival_door_cone_med.yaml +0 -0
  526. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/ms813_arrival_door_cone_small.yaml +0 -0
  527. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/ms813_arrival_square_statues.yaml +0 -0
  528. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/mushboom_english_gardens.yaml +0 -0
  529. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/ncdulo_halloftheorcs.yaml +0 -0
  530. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/ncdulo_lavacross.yaml +0 -0
  531. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/ncdulo_smallfort.yaml +0 -0
  532. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/ncdulo_watergridlock.yaml +0 -0
  533. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/ncdulo_wetmaze.yaml +0 -0
  534. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/nzn_arrival_crosshair.yaml +0 -0
  535. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/nzn_arrival_depleted_hourglass.yaml +0 -0
  536. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/nzn_arrival_water_spiral.yaml +0 -0
  537. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/onia_arrival_mini_spirals.yaml +0 -0
  538. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/onia_arrival_pyramid.yaml +0 -0
  539. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/pf_arrival_petrified_forest.yaml +0 -0
  540. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/psy_arrival_basics.yaml +0 -0
  541. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/psy_arrival_conway.yaml +0 -0
  542. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/psy_arrival_dodecagon.yaml +0 -0
  543. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/psy_arrival_heroes.yaml +0 -0
  544. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/psy_arrival_radial01.yaml +0 -0
  545. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/psy_arrival_radial02.yaml +0 -0
  546. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/psy_arrival_whirlpool.yaml +0 -0
  547. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/reono_arrival_forest_river.yaml +0 -0
  548. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/reono_arrival_mine.yaml +0 -0
  549. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/roderic_chinese_lattice_arrival.yaml +0 -0
  550. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/roderic_crossed_star.yaml +0 -0
  551. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/roderic_dead_forest.yaml +0 -0
  552. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/saegor_arrival_simple_a.yaml +0 -0
  553. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/saegor_arrival_simple_b.yaml +0 -0
  554. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/saegor_arrival_simple_c.yaml +0 -0
  555. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/saegor_arrival_simple_d.yaml +0 -0
  556. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/saegor_arrival_simple_e.yaml +0 -0
  557. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/scummos_arrival_checkerplants.yaml +0 -0
  558. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/scummos_arrival_forest.yaml +0 -0
  559. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/scummos_arrival_gate.yaml +0 -0
  560. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/scummos_arrival_hexagon.yaml +0 -0
  561. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/scummos_arrival_simple_crosswalls.yaml +0 -0
  562. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/scummos_arrival_simple_fountains.yaml +0 -0
  563. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/scummos_arrival_star.yaml +0 -0
  564. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/spicycebolla_green_bress_n_ham.yaml +0 -0
  565. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/spicycebolla_green_bress_n_ham_2.yaml +0 -0
  566. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/tarquinn_simple_flora_water_a.yaml +0 -0
  567. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/tarquinn_simple_flora_water_b.yaml +0 -0
  568. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/tarquinn_simple_flora_water_c.yaml +0 -0
  569. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/tarquinn_simple_flora_water_d.yaml +0 -0
  570. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/tarquinn_simple_flora_water_e.yaml +0 -0
  571. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/tarquinn_simple_flora_water_f.yaml +0 -0
  572. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/wander_arrival_chamber.yaml +0 -0
  573. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/wander_arrival_desolate.yaml +0 -0
  574. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/wheals_arrival_linesprint.yaml +0 -0
  575. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/wheals_arrival_shading.yaml +0 -0
  576. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/convchain/zelgadis_glass_arrival_small.yaml +0 -0
  577. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/amcnicky_arrival_choice.yaml +0 -0
  578. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/amcnicky_arrival_double_pillar.yaml +0 -0
  579. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/amcnicky_arrival_feature_with_door.yaml +0 -0
  580. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/amcnicky_arrival_flooded_fountain.yaml +0 -0
  581. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/amcnicky_arrival_single_pillar.yaml +0 -0
  582. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/amcnicky_arrival_underground_garden.yaml +0 -0
  583. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/co_arrival_square_in_a_square_in_a_square.yaml +0 -0
  584. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/co_arrival_two_rings.yaml +0 -0
  585. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/denvon_arrival_hothouse.yaml +0 -0
  586. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/denvon_arrival_planthouse.yaml +0 -0
  587. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/denvon_arrival_waterhouse.yaml +0 -0
  588. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/doesnt_arrival_eight_statues.yaml +0 -0
  589. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dolorous_arrival_somebody's_watching_me.yaml +0 -0
  590. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_boxes_within_box.yaml +0 -0
  591. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_boxorama.yaml +0 -0
  592. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_line_fractal.yaml +0 -0
  593. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_long_road.yaml +0 -0
  594. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_radiant.yaml +0 -0
  595. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_rooms_a.yaml +0 -0
  596. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_rooms_with_view.yaml +0 -0
  597. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_shelter.yaml +0 -0
  598. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_snail.yaml +0 -0
  599. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_ternary.yaml +0 -0
  600. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_three_bigger_balls.yaml +0 -0
  601. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_three_smaller_balls.yaml +0 -0
  602. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_a.yaml +0 -0
  603. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_b.yaml +0 -0
  604. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_c.yaml +0 -0
  605. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_d.yaml +0 -0
  606. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_e.yaml +0 -0
  607. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_f.yaml +0 -0
  608. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_g.yaml +0 -0
  609. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_h.yaml +0 -0
  610. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_i.yaml +0 -0
  611. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_j.yaml +0 -0
  612. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_tiny_k.yaml +0 -0
  613. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_triangle_fractal.yaml +0 -0
  614. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_arrival_windows_large_door.yaml +0 -0
  615. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dpeg_chamrin_arrival_tetris.yaml +0 -0
  616. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dysonsfear_arrival_angles.yaml +0 -0
  617. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dysonsfear_arrival_boulevard.yaml +0 -0
  618. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/dysonsfear_arrival_nine_rooms.yaml +0 -0
  619. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/ebering_hopf_link.yaml +0 -0
  620. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/ebering_trefoil_3fold.yaml +0 -0
  621. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/ebering_trefoil_twist.yaml +0 -0
  622. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/eino_arrival_druids_welcome.yaml +0 -0
  623. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/eino_arrival_tree_alley.yaml +0 -0
  624. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/eino_arrival_water_cross.yaml +0 -0
  625. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/eino_arrival_water_star.yaml +0 -0
  626. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/erik_arrival_blinker_ship.yaml +0 -0
  627. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/erik_arrival_triangle_huge.yaml +0 -0
  628. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/erik_arrival_triangle_large.yaml +0 -0
  629. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/erik_arrival_triangle_medium.yaml +0 -0
  630. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/erik_arrival_triangle_small.yaml +0 -0
  631. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/giann_bridges.yaml +0 -0
  632. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/giann_forest_graveyard.yaml +0 -0
  633. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/giann_horns.yaml +0 -0
  634. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/giann_wishing_wells.yaml +0 -0
  635. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/grunt_arrival_crossed_arrows.yaml +0 -0
  636. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/grunt_arrival_lava_bath.yaml +0 -0
  637. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/ldierk_walled_garden.yaml +0 -0
  638. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/ldierk_walled_garden_2.yaml +0 -0
  639. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/lemuel_arrival_cross.yaml +0 -0
  640. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/lemuel_arrival_funnel.yaml +0 -0
  641. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/lemuel_arrival_lava_pool.yaml +0 -0
  642. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/lightli_arrival_chessboard.yaml +0 -0
  643. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/lightli_arrival_flooded_house.yaml +0 -0
  644. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/lightli_arrival_lavapool.yaml +0 -0
  645. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/lightli_arrival_maybe_door_vault.yaml +0 -0
  646. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/lightli_arrival_statue_moat.yaml +0 -0
  647. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/lightli_iron_boxes.yaml +0 -0
  648. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/lightli_molten_gateway.yaml +0 -0
  649. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/matt_arrival_grand_opening.yaml +0 -0
  650. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/matt_arrival_refuge.yaml +0 -0
  651. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/matt_arrival_spirals.yaml +0 -0
  652. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_diagonal_passages.yaml +0 -0
  653. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_doors.yaml +0 -0
  654. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_four_houses.yaml +0 -0
  655. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_open_corners.yaml +0 -0
  656. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_plants_in_alcoves.yaml +0 -0
  657. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_pointy.yaml +0 -0
  658. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_radiant_lines.yaml +0 -0
  659. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_three_doors.yaml +0 -0
  660. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_up_and_down.yaml +0 -0
  661. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/minmay_arrival_wavy_path.yaml +0 -0
  662. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/mrwooster_arrival_arrow.yaml +0 -0
  663. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/mrwooster_arrival_statue.yaml +0 -0
  664. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/mrwooster_arrival_statue_2.yaml +0 -0
  665. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/mrwooster_arrival_statue_3.yaml +0 -0
  666. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/ms813_arrival_door_cone_large.yaml +0 -0
  667. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/ms813_arrival_door_cone_med.yaml +0 -0
  668. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/ms813_arrival_door_cone_small.yaml +0 -0
  669. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/ms813_arrival_square_statues.yaml +0 -0
  670. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/mushboom_english_gardens.yaml +0 -0
  671. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/ncdulo_halloftheorcs.yaml +0 -0
  672. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/ncdulo_lavacross.yaml +0 -0
  673. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/ncdulo_smallfort.yaml +0 -0
  674. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/ncdulo_watergridlock.yaml +0 -0
  675. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/ncdulo_wetmaze.yaml +0 -0
  676. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/nzn_arrival_crosshair.yaml +0 -0
  677. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/nzn_arrival_depleted_hourglass.yaml +0 -0
  678. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/nzn_arrival_water_spiral.yaml +0 -0
  679. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/onia_arrival_mini_spirals.yaml +0 -0
  680. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/onia_arrival_pyramid.yaml +0 -0
  681. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/pf_arrival_petrified_forest.yaml +0 -0
  682. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/psy_arrival_basics.yaml +0 -0
  683. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/psy_arrival_conway.yaml +0 -0
  684. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/psy_arrival_dodecagon.yaml +0 -0
  685. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/psy_arrival_heroes.yaml +0 -0
  686. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/psy_arrival_radial01.yaml +0 -0
  687. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/psy_arrival_radial02.yaml +0 -0
  688. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/psy_arrival_whirlpool.yaml +0 -0
  689. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/reono_arrival_forest_river.yaml +0 -0
  690. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/reono_arrival_mine.yaml +0 -0
  691. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/roderic_chinese_lattice_arrival.yaml +0 -0
  692. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/roderic_crossed_star.yaml +0 -0
  693. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/roderic_dead_forest.yaml +0 -0
  694. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/saegor_arrival_simple_a.yaml +0 -0
  695. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/saegor_arrival_simple_b.yaml +0 -0
  696. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/saegor_arrival_simple_c.yaml +0 -0
  697. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/saegor_arrival_simple_d.yaml +0 -0
  698. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/saegor_arrival_simple_e.yaml +0 -0
  699. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/scummos_arrival_checkerplants.yaml +0 -0
  700. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/scummos_arrival_forest.yaml +0 -0
  701. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/scummos_arrival_gate.yaml +0 -0
  702. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/scummos_arrival_hexagon.yaml +0 -0
  703. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/scummos_arrival_simple_crosswalls.yaml +0 -0
  704. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/scummos_arrival_simple_fountains.yaml +0 -0
  705. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/scummos_arrival_star.yaml +0 -0
  706. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/spicycebolla_green_bress_n_ham.yaml +0 -0
  707. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/spicycebolla_green_bress_n_ham_2.yaml +0 -0
  708. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/tarquinn_simple_flora_water_a.yaml +0 -0
  709. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/tarquinn_simple_flora_water_b.yaml +0 -0
  710. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/tarquinn_simple_flora_water_c.yaml +0 -0
  711. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/tarquinn_simple_flora_water_d.yaml +0 -0
  712. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/tarquinn_simple_flora_water_e.yaml +0 -0
  713. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/tarquinn_simple_flora_water_f.yaml +0 -0
  714. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/wander_arrival_chamber.yaml +0 -0
  715. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/wander_arrival_desolate.yaml +0 -0
  716. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/wheals_arrival_linesprint.yaml +0 -0
  717. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/wheals_arrival_shading.yaml +0 -0
  718. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/dcss/wfc/zelgadis_glass_arrival_small.yaml +0 -0
  719. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/grid_altars.py +0 -0
  720. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/layout.py +0 -0
  721. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/make_connected.py +0 -0
  722. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/maze.py +0 -0
  723. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/mean_distance.py +0 -0
  724. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/mirror.py +0 -0
  725. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/multi_left_and_right.py +0 -0
  726. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/nop.py +0 -0
  727. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/radial_maze.py +0 -0
  728. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/random.py +0 -0
  729. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/random_dcss_scene.py +0 -0
  730. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/random_objects.py +0 -0
  731. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/random_scene.py +0 -0
  732. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/random_yaml_scene.py +0 -0
  733. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/remove_agents.py +0 -0
  734. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/room_grid.py +0 -0
  735. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/spiral.py +0 -0
  736. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/transplant_scene.py +0 -0
  737. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/varied_terrain.py +0 -0
  738. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/wfc.py +0 -0
  739. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/scenes/yaml.py +0 -0
  740. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/tools/dcss_import.py +0 -0
  741. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/tools/gen.py +0 -0
  742. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/tools/gen_scene.py +0 -0
  743. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/tools/view.py +0 -0
  744. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/utils/draw.py +0 -0
  745. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/utils/make_scene_config.py +0 -0
  746. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/utils/pattern.py +0 -0
  747. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/utils/show.py +0 -0
  748. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mapgen/utils/thumbnail.py +0 -0
  749. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mettagrid_c.pyi +0 -0
  750. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/mettascope.py +0 -0
  751. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/profiling/__init__.py +0 -0
  752. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/profiling/memory_monitor.py +0 -0
  753. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/profiling/stopwatch.py +0 -0
  754. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/profiling/system_monitor.py +0 -0
  755. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/py.typed +0 -0
  756. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/Inter-Regular.ttf +0 -0
  757. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/altar.png +0 -0
  758. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/atlas.json +0 -0
  759. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/atlas.png +0 -0
  760. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/converter.png +0 -0
  761. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/generator.png +0 -0
  762. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/items.png +0 -0
  763. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/monsters.png +0 -0
  764. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/ore-0.png +0 -0
  765. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/ore-1.png +0 -0
  766. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/ore-2.png +0 -0
  767. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/ore-3.png +0 -0
  768. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/ore-4.png +0 -0
  769. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/ore-5.png +0 -0
  770. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/ore-6.png +0 -0
  771. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/puffer_chars.png +0 -0
  772. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/assets/wall.png +0 -0
  773. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/miniscope/__init__.py +0 -0
  774. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/renderer/miniscope/info_panels.py +0 -0
  775. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/test_support/__init__.py +0 -0
  776. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/test_support/actions.py +0 -0
  777. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/test_support/observation_helper.py +0 -0
  778. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/test_support/orientation.py +0 -0
  779. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/test_support/token_types.py +0 -0
  780. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/types.py +0 -0
  781. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/util/__init__.py +0 -0
  782. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/util/debug.py +0 -0
  783. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/util/dict_utils.py +0 -0
  784. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/util/diversity.py +0 -0
  785. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/util/grid_object_formatter.py +0 -0
  786. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/util/module.py +0 -0
  787. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/util/replay_writer.py +0 -0
  788. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/python/src/mettagrid/util/stats_writer.py +0 -0
  789. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/scripts/build_asan.sh +0 -0
  790. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/scripts/test_leaks.sh +0 -0
  791. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/setup.cfg +0 -0
  792. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/test_pointer_init +0 -0
  793. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/test_pointer_init.cpp +0 -0
  794. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/test_uninitialized.cpp +0 -0
  795. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/test_uninitialized.o +0 -0
  796. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/BUILD +0 -0
  797. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/__init__.py +0 -0
  798. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/cpplint.sh +0 -0
  799. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/map_builder/__init__.py +0 -0
  800. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/map_builder/test_maze.py +0 -0
  801. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/map_builder/test_random.py +0 -0
  802. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/__init__.py +0 -0
  803. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/random/test_float.py +0 -0
  804. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/random/test_int.py +0 -0
  805. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/fixtures/dir1/1.yaml +0 -0
  806. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/fixtures/dir1/2.yaml +0 -0
  807. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/fixtures/test.map +0 -0
  808. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/fixtures/test.yaml +0 -0
  809. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_ascii.py +0 -0
  810. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_auto.py +0 -0
  811. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_bsp.py +0 -0
  812. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_convchain.py +0 -0
  813. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_layout.py +0 -0
  814. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_make_connected.py +0 -0
  815. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_maze.py +0 -0
  816. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_mean_distance.py +0 -0
  817. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_mirror.py +0 -0
  818. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_multi_left_and_right.py +0 -0
  819. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_nop.py +0 -0
  820. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_radial_maze.py +0 -0
  821. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_random.py +0 -0
  822. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_random_dcss_scene.py +0 -0
  823. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_random_objects.py +0 -0
  824. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_random_scene.py +0 -0
  825. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_random_yaml_scene.py +0 -0
  826. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_remove_agents.py +0 -0
  827. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_room_grid.py +0 -0
  828. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_wfc.py +0 -0
  829. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/scenes/test_yaml.py +0 -0
  830. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/test_scene.py +0 -0
  831. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/mapgen/utils/test_pattern.py +0 -0
  832. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/profiling/test_memory_monitor.py +0 -0
  833. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/profiling/test_stopwatch.py +0 -0
  834. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/profiling/test_system_monitor.py +0 -0
  835. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/run_test.py +0 -0
  836. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_action_compatibility.py +0 -0
  837. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_agent_resource_sharing.py +0 -0
  838. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_assembler_partial_usage.py +0 -0
  839. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_buffer_reuse.py +0 -0
  840. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_chest.py +0 -0
  841. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_clipper.cpp +0 -0
  842. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_diversity.py +0 -0
  843. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_env_config_serialization.py +0 -0
  844. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_env_map.py +0 -0
  845. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_forbidden_imports.py +0 -0
  846. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_global_observations.py +0 -0
  847. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_grid_object.cpp +0 -0
  848. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_gym_env.py +0 -0
  849. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_interactive.py +0 -0
  850. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_inventory_regeneration.py +0 -0
  851. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_leaks.py +0 -0
  852. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_mettagrid.cpp +0 -0
  853. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_mettagrid.py +0 -0
  854. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_new_env_hierarchy.py +0 -0
  855. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_observations.cpp +0 -0
  856. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_observations.py +0 -0
  857. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_pufferlib_integration.py +0 -0
  858. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_resource_loss.py +0 -0
  859. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_set_inventory.py +0 -0
  860. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_stats_tracker.cpp +0 -0
  861. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_tags.py +0 -0
  862. {mettagrid-0.2.0.15 → mettagrid-0.2.0.16}/tests/test_visitation_counts.py +0 -0
@@ -3,3 +3,5 @@
3
3
  /build-release
4
4
  /benchmark_output
5
5
  /Testing
6
+
7
+ MODULE.bazel.lock
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mettagrid
3
- Version: 0.2.0.15
3
+ Version: 0.2.0.16
4
4
  Summary: A fast grid-based open-ended MARL environment
5
5
  Author-email: David Bloomin <daveey@gmail.com>
6
6
  License-Expression: MIT
@@ -5,7 +5,7 @@
5
5
  #...#.....#.......#.........#
6
6
  #...#.....#.......#.........#
7
7
  #...#.....#.......#.........#
8
- #...#..... .......#.........#
8
+ #...#.............#.........#
9
9
  #...#.........#####.........#
10
10
  #...#...#.....#.............#
11
11
  #...#...#.....#.............#
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mettagrid
3
- Version: 0.2.0.15
3
+ Version: 0.2.0.16
4
4
  Summary: A fast grid-based open-ended MARL environment
5
5
  Author-email: David Bloomin <daveey@gmail.com>
6
6
  License-Expression: MIT
@@ -7,7 +7,6 @@ CPPLINT.cfg
7
7
  LICENSE
8
8
  MANIFEST.in
9
9
  MODULE.bazel
10
- MODULE.bazel.lock
11
10
  Makefile
12
11
  README.md
13
12
  bazel_build.py
@@ -352,6 +351,7 @@ nim/mettascope/src/mettascope/footer.nim
352
351
  nim/mettascope/src/mettascope/minimap.nim
353
352
  nim/mettascope/src/mettascope/objectinfo.nim
354
353
  nim/mettascope/src/mettascope/panels.nim
354
+ nim/mettascope/src/mettascope/pathfinding.nim
355
355
  nim/mettascope/src/mettascope/replays.nim
356
356
  nim/mettascope/src/mettascope/settings.nim
357
357
  nim/mettascope/src/mettascope/shell.html
@@ -748,7 +748,6 @@ python/src/mettagrid/renderer/miniscope/buffer.py
748
748
  python/src/mettagrid/renderer/miniscope/info_panels.py
749
749
  python/src/mettagrid/renderer/miniscope/interactive.py
750
750
  python/src/mettagrid/renderer/miniscope/renderer.py
751
- python/src/mettagrid/renderer/miniscope/symbols.py
752
751
  python/src/mettagrid/test_support/__init__.py
753
752
  python/src/mettagrid/test_support/actions.py
754
753
  python/src/mettagrid/test_support/mapgen.py
@@ -756,7 +755,6 @@ python/src/mettagrid/test_support/observation_helper.py
756
755
  python/src/mettagrid/test_support/orientation.py
757
756
  python/src/mettagrid/test_support/token_types.py
758
757
  python/src/mettagrid/util/__init__.py
759
- python/src/mettagrid/util/char_encoder.py
760
758
  python/src/mettagrid/util/debug.py
761
759
  python/src/mettagrid/util/dict_utils.py
762
760
  python/src/mettagrid/util/diversity.py
@@ -769,7 +767,6 @@ scripts/test_leaks.sh
769
767
  tests/BUILD
770
768
  tests/__init__.py
771
769
  tests/cpplint.sh
772
- tests/diagnose.py
773
770
  tests/run_test.py
774
771
  tests/test_action_compatibility.py
775
772
  tests/test_actions.py
@@ -805,7 +802,6 @@ tests/test_rewards.py
805
802
  tests/test_rotate.py
806
803
  tests/test_set_inventory.py
807
804
  tests/test_stats_tracker.cpp
808
- tests/test_swap.py
809
805
  tests/test_tags.py
810
806
  tests/test_visitation_counts.py
811
807
  tests/map_builder/__init__.py
@@ -4,15 +4,18 @@ import
4
4
  envconfig]
5
5
 
6
6
  type
7
- RenderResponse* = object
7
+ ActionRequest* = object
8
+ agentId*: int
9
+ actionId*: int
10
+ argument*: int
11
+
12
+ RenderResponse* = ref object
8
13
  shouldClose*: bool
9
- action*: bool
10
- actionAgentId*: int
11
- actionActionId*: int
12
- actionArgument*: int
14
+ actions*: seq[ActionRequest]
13
15
 
14
16
  proc init(dataDir: string, replay: string): RenderResponse =
15
17
  try:
18
+ result = RenderResponse(shouldClose: false, actions: @[])
16
19
  #echo "Replay from python: ", replay
17
20
  echo "Data dir: ", dataDir
18
21
  playMode = Realtime
@@ -40,8 +43,10 @@ proc render(currentStep: int, replayStep: string): RenderResponse =
40
43
  common.replay.apply(replayStep)
41
44
  step = currentStep
42
45
  stepFloat = currentStep.float32
46
+ previousStep = currentStep
43
47
  onStepChanged()
44
48
  requestPython = false
49
+ result = RenderResponse(shouldClose: false, actions: @[])
45
50
  while true:
46
51
  if window.closeRequested:
47
52
  window.close()
@@ -49,18 +54,14 @@ proc render(currentStep: int, replayStep: string): RenderResponse =
49
54
  return
50
55
  mainLoop()
51
56
  if requestPython:
52
- if requestAction:
53
- result.action = true
54
- result.actionAgentId = requestActionAgentId
55
- result.actionActionId = requestActionActionId
56
- result.actionArgument = requestActionArgument
57
- requestAction = false
58
- requestActionAgentId = 0
59
- requestActionActionId = 0
60
- requestActionArgument = 0
61
- return
62
- else:
63
- return
57
+ for action in requestActions:
58
+ result.actions.add(ActionRequest(
59
+ agentId: action.agentId,
60
+ actionId: action.actionId,
61
+ argument: action.argument
62
+ ))
63
+ requestActions.setLen(0)
64
+ return
64
65
  except Exception:
65
66
  echo "############## Error rendering Mettascope ##################"
66
67
  echo getCurrentException().getStackTrace()
@@ -69,9 +70,14 @@ proc render(currentStep: int, replayStep: string): RenderResponse =
69
70
  result.shouldClose = true
70
71
  return
71
72
 
72
- exportObject RenderResponse:
73
+ exportObject ActionRequest:
73
74
  discard
74
75
 
76
+ exportRefObject RenderResponse:
77
+ fields:
78
+ shouldClose
79
+ actions
80
+
75
81
  exportProcs:
76
82
  init
77
83
  render
@@ -0,0 +1,127 @@
1
+ import
2
+ std/[tables],
3
+ windy, fidget2, vmath,
4
+ common, replays, pathfinding
5
+
6
+ type
7
+ Orientation* = enum
8
+ N = 0
9
+ S = 1
10
+ W = 2
11
+ E = 3
12
+
13
+ QueuedAction = object
14
+ agentId: int
15
+ actionId: int
16
+ argument: int
17
+
18
+ var
19
+ ## Action queue for each agent. Only one action per step.
20
+ actionQueue = initTable[int, QueuedAction]()
21
+
22
+ proc queueAction(agentId, actionId, argument: int) =
23
+ ## Queue an action for the agent. Will be sent on next step.
24
+ actionQueue[agentId] = QueuedAction(
25
+ agentId: agentId,
26
+ actionId: actionId,
27
+ argument: argument
28
+ )
29
+
30
+ proc sendAction*(agentId, actionId, argument: int) =
31
+ ## Send an action to the Python from the user.
32
+ requestActions.add(ActionRequest(
33
+ agentId: agentId,
34
+ actionId: actionId,
35
+ argument: argument
36
+ ))
37
+ requestPython = true
38
+
39
+ proc getOrientationFromDelta(dx, dy: int): Orientation =
40
+ ## Get the orientation from a movement delta.
41
+ if dx == 0 and dy == -1:
42
+ return N
43
+ elif dx == 0 and dy == 1:
44
+ return S
45
+ elif dx == -1 and dy == 0:
46
+ return W
47
+ elif dx == 1 and dy == 0:
48
+ return E
49
+ else:
50
+ return N
51
+
52
+ proc processActions*() =
53
+ ## Process pathfinding and action queue. Called on step change.
54
+ if not (play or requestPython):
55
+ return
56
+
57
+ for agentId, path in agentPaths:
58
+ if path.len > 1:
59
+ var agent: Entity = nil
60
+ for obj in replay.objects:
61
+ if obj.isAgent and obj.agentId == agentId:
62
+ agent = obj
63
+ break
64
+
65
+ if agent != nil:
66
+ let currentPos = agent.location.at(step).xy
67
+
68
+ if path[0] == currentPos:
69
+ if path.len > 1:
70
+ let nextPos = path[1]
71
+ let dx = nextPos.x - currentPos.x
72
+ let dy = nextPos.y - currentPos.y
73
+ let orientation = getOrientationFromDelta(dx.int, dy.int)
74
+ queueAction(agentId, replay.moveActionId, orientation.int)
75
+ agentPaths[agentId].delete(0)
76
+ else:
77
+ recomputePath(agentId, currentPos)
78
+ else:
79
+ recomputePath(agentId, currentPos)
80
+
81
+ if actionQueue.len > 0:
82
+ for agentId, action in actionQueue:
83
+ requestActions.add(ActionRequest(
84
+ agentId: action.agentId,
85
+ actionId: action.actionId,
86
+ argument: action.argument
87
+ ))
88
+ actionQueue.clear()
89
+
90
+ proc agentControls*() =
91
+ ## Manual controls with WASD for selected agent.
92
+ if selection != nil and selection.isAgent:
93
+ let agent = selection
94
+
95
+ # Move
96
+ if window.buttonPressed[KeyW] or window.buttonPressed[KeyUp]:
97
+ sendAction(agent.agentId, replay.moveActionId, N.int)
98
+ clearPath(agent.agentId)
99
+
100
+ elif window.buttonPressed[KeyS] or window.buttonPressed[KeyDown]:
101
+ sendAction(agent.agentId, replay.moveActionId, S.int)
102
+ clearPath(agent.agentId)
103
+
104
+ elif window.buttonPressed[KeyD] or window.buttonPressed[KeyRight]:
105
+ sendAction(agent.agentId, replay.moveActionId, E.int)
106
+ clearPath(agent.agentId)
107
+
108
+ elif window.buttonPressed[KeyA] or window.buttonPressed[KeyLeft]:
109
+ sendAction(agent.agentId, replay.moveActionId, W.int)
110
+ clearPath(agent.agentId)
111
+
112
+ # Put items
113
+ elif window.buttonPressed[KeyQ]:
114
+ sendAction(agent.agentId, replay.putItemsActionId, 0)
115
+
116
+ # Get items
117
+ elif window.buttonPressed[KeyE]:
118
+ sendAction(agent.agentId, replay.getItemsActionId, 0)
119
+
120
+ # Attack
121
+ elif window.buttonPressed[KeyZ]:
122
+ # TODO: Get implementation attack selection ui.
123
+ sendAction(agent.agentId, replay.attackActionId, 0)
124
+
125
+ # Noop
126
+ elif window.buttonPressed[KeyX]:
127
+ sendAction(agent.agentId, replay.noopActionId, 0)
@@ -1,4 +1,5 @@
1
- import std/[times],
1
+ import
2
+ std/[times, tables],
2
3
  boxy, windy, vmath, fidget2,
3
4
  replays
4
5
 
@@ -81,6 +82,7 @@ var
81
82
 
82
83
  step*: int = 0
83
84
  stepFloat*: float32 = 0
85
+ previousStep*: int = -1
84
86
  replay*: Replay
85
87
  play*: bool
86
88
  playSpeed*: float32 = 0.1
@@ -89,15 +91,26 @@ var
89
91
 
90
92
  ## Signals when we want to give control back to Python (DLL mode only).
91
93
  requestPython*: bool = false
92
- requestAction*: bool = false
93
- requestActionAgentId*: int
94
- requestActionActionId*: int
95
- requestActionArgument*: int
94
+
95
+ type
96
+ ActionRequest* = object
97
+ agentId*: int
98
+ actionId*: int
99
+ argument*: int
100
+
101
+ var
102
+ requestActions*: seq[ActionRequest]
96
103
 
97
104
  followSelection*: bool = false
98
105
  mouseCaptured*: bool = false
99
106
  mouseCapturedPanel*: Panel = nil
100
107
 
108
+ var
109
+ ## Path queue for each agent. Maps agentId to a sequence of grid positions.
110
+ agentPaths* = initTable[int, seq[IVec2]]()
111
+ ## Destination queue for each agent. Maps agentId to a sequence of destinations.
112
+ agentDestinations* = initTable[int, seq[IVec2]]()
113
+
101
114
  proc at*[T](sequence: seq[T], step: int): T =
102
115
  # Get the value at the given step.
103
116
  if sequence.len == 0:
@@ -0,0 +1,113 @@
1
+ import
2
+ std/[algorithm, tables],
3
+ vmath,
4
+ common, replays
5
+
6
+ type
7
+ PathNode = object
8
+ pos: IVec2
9
+ gCost: int
10
+ hCost: int
11
+ parent: int
12
+
13
+ proc fCost(node: PathNode): int =
14
+ ## Calculate the total cost of a node.
15
+ node.gCost + node.hCost
16
+
17
+ proc heuristic(a, b: IVec2): int =
18
+ ## Calculate the Manhattan distance heuristic.
19
+ abs(a.x - b.x) + abs(a.y - b.y)
20
+
21
+ proc isWalkablePos*(pos: IVec2): bool =
22
+ ## Check if a position is walkable.
23
+ if pos.x < 0 or pos.x >= replay.mapSize[0] or pos.y < 0 or pos.y >= replay.mapSize[1]:
24
+ return false
25
+ for obj in replay.objects:
26
+ if obj.location.at(step).xy == pos:
27
+ let typeName = replay.typeNames[obj.typeId]
28
+ if typeName != "agent":
29
+ return false
30
+ return true
31
+
32
+ proc findPath*(start, goal: IVec2): seq[IVec2] =
33
+ ## Find a path from start to goal using A* pathfinding.
34
+ if start == goal:
35
+ return @[]
36
+ if not isWalkablePos(goal):
37
+ return @[]
38
+ var openList: seq[PathNode] = @[PathNode(pos: start, gCost: 0, hCost: heuristic(start, goal), parent: -1)]
39
+ var closedSet: seq[IVec2] = @[]
40
+ var allNodes: seq[PathNode] = @[]
41
+ while openList.len > 0:
42
+ var currentIdx = 0
43
+ for i in 1 ..< openList.len:
44
+ if openList[i].fCost < openList[currentIdx].fCost:
45
+ currentIdx = i
46
+ let current = openList[currentIdx]
47
+ openList.delete(currentIdx)
48
+ closedSet.add(current.pos)
49
+ let currentNodeIdx = allNodes.len
50
+ allNodes.add(current)
51
+ if current.pos == goal:
52
+ var path: seq[IVec2] = @[]
53
+ var node = current
54
+ var nodeIdx = currentNodeIdx
55
+ while nodeIdx >= 0 and node.parent >= 0:
56
+ path.add(node.pos)
57
+ nodeIdx = node.parent
58
+ if nodeIdx >= 0:
59
+ node = allNodes[nodeIdx]
60
+ else:
61
+ break
62
+ path.add(start)
63
+ path.reverse()
64
+ return path
65
+ const directions = [ivec2(0, -1), ivec2(0, 1), ivec2(-1, 0), ivec2(1, 0)]
66
+ for dir in directions:
67
+ let neighborPos = ivec2(current.pos.x + dir.x, current.pos.y + dir.y)
68
+ if neighborPos.x < 0 or neighborPos.x >= replay.mapSize[0] or neighborPos.y < 0 or neighborPos.y >= replay.mapSize[1]:
69
+ continue
70
+ if neighborPos in closedSet:
71
+ continue
72
+ if not isWalkablePos(neighborPos):
73
+ continue
74
+ let newGCost = current.gCost + 1
75
+ var foundInOpen = false
76
+ for i in 0 ..< openList.len:
77
+ if openList[i].pos == neighborPos:
78
+ foundInOpen = true
79
+ if newGCost < openList[i].gCost:
80
+ openList[i].gCost = newGCost
81
+ openList[i].parent = currentNodeIdx
82
+ break
83
+ if not foundInOpen:
84
+ openList.add(PathNode(
85
+ pos: neighborPos,
86
+ gCost: newGCost,
87
+ hCost: heuristic(neighborPos, goal),
88
+ parent: currentNodeIdx
89
+ ))
90
+ return @[]
91
+
92
+ proc clearPath*(agentId: int) =
93
+ ## Clear the path and destination for an agent.
94
+ agentPaths.del(agentId)
95
+ agentDestinations.del(agentId)
96
+
97
+ proc recomputePath*(agentId: int, currentPos: IVec2) =
98
+ ## Recompute the path for an agent to their current destination.
99
+ if not agentDestinations.hasKey(agentId) or agentDestinations[agentId].len == 0:
100
+ return
101
+ let destination = agentDestinations[agentId][0]
102
+ if currentPos == destination:
103
+ agentDestinations[agentId].delete(0)
104
+ agentPaths.del(agentId)
105
+ if agentDestinations[agentId].len > 0:
106
+ recomputePath(agentId, currentPos)
107
+ return
108
+ let newPath = findPath(currentPos, destination)
109
+ if newPath.len > 0:
110
+ agentPaths[agentId] = newPath
111
+ else:
112
+ clearPath(agentId)
113
+
@@ -1,7 +1,7 @@
1
1
  import
2
2
  std/[times, math],
3
3
  boxy, vmath, windy, fidget2, fidget2/[hybridrender, common],
4
- common, panels, objectinfo
4
+ common, panels, actions, objectinfo
5
5
 
6
6
  const
7
7
  BgColor = parseHtmlColor("#1D1D1D")
@@ -29,6 +29,7 @@ proc onStepChanged*() =
29
29
  ## Must be called when the step changes so that UI is updated.
30
30
  echo "step: ", step
31
31
  updateObjectInfo()
32
+ processActions()
32
33
 
33
34
  proc bindTimelineNodes() =
34
35
  if nodesBound or globalTimelinePanel.isNil or globalTimelinePanel.node.isNil:
@@ -67,17 +68,22 @@ proc playControls*() =
67
68
  stepFloat = replay.maxSteps.float32 - 1
68
69
  step = stepFloat.int
69
70
  step = step.clamp(0, replay.maxSteps - 1)
70
- onStepChanged()
71
71
 
72
72
  if window.buttonPressed[KeyLeftBracket]:
73
73
  step -= 1
74
74
  step = clamp(step, 0, replay.maxSteps - 1)
75
75
  stepFloat = step.float32
76
- onStepChanged()
77
76
  if window.buttonPressed[KeyRightBracket]:
78
77
  step += 1
78
+ if playMode == Realtime and step >= replay.maxSteps:
79
+ requestPython = true
80
+ step = replay.maxSteps - 1
79
81
  step = clamp(step, 0, replay.maxSteps - 1)
80
82
  stepFloat = step.float32
83
+
84
+ # Fire onStepChanged once and only once when step changes.
85
+ if step != previousStep:
86
+ previousStep = step
81
87
  onStepChanged()
82
88
 
83
89
  proc getStepFromX(localX, panelWidth: float32): int =
@@ -95,8 +101,11 @@ proc getStepFromX(localX, panelWidth: float32): int =
95
101
  proc onScrubberChange(localX, panelWidth: float32) =
96
102
  ## Updates global step based on local X.
97
103
  let s = getStepFromX(localX, panelWidth)
98
- step = s
99
- stepFloat = step.float32
104
+ if s != step:
105
+ step = s
106
+ stepFloat = step.float32
107
+ previousStep = step
108
+ onStepChanged()
100
109
 
101
110
  proc centerTracesOnStep(targetStep: int) =
102
111
  ## Recenters the Agent Traces panel on the given step.
@@ -0,0 +1,150 @@
1
+ import
2
+ std/[algorithm],
3
+ boxy, vmath, windy, fidget2/hybridrender
4
+
5
+ var
6
+ typeface*: Typeface
7
+
8
+ proc drawText*(
9
+ bxy: Boxy,
10
+ imageKey: string,
11
+ transform: Mat3,
12
+ typeface: Typeface,
13
+ text: string,
14
+ size: float32,
15
+ color: Color
16
+ ) =
17
+ ## Draw text on the screen.
18
+ var font = newFont(typeface)
19
+ font.size = size
20
+ font.paint = color
21
+ let
22
+ arrangement = typeset(@[newSpan(text, font)], bounds = vec2(1280, 800))
23
+ globalBounds = arrangement.computeBounds(transform).snapToPixels()
24
+ textImage = newImage(globalBounds.w.int, globalBounds.h.int)
25
+ imageSpace = translate(-globalBounds.xy) * transform
26
+ textImage.fillText(arrangement, imageSpace)
27
+
28
+ bxy.addImage(imageKey, textImage)
29
+ bxy.drawImage(imageKey, globalBounds.xy)
30
+
31
+ proc measureText*(
32
+ text: string,
33
+ size: float32,
34
+ typeface: Typeface
35
+ ): Vec2 =
36
+ var font = newFont(typeface)
37
+ font.size = size
38
+ let arrangement = typeset(@[newSpan(text, font)], bounds = vec2(1280, 800))
39
+ let transform = translate(vec2(0, 0))
40
+ let bounds = arrangement.computeBounds(transform).snapToPixels()
41
+ return vec2(bounds.w, bounds.h)
42
+
43
+ proc drawBubbleLine*(bxy: Boxy, start: Vec2, stop: Vec2, color: Color) =
44
+ ## Draw a line with circles.
45
+ let
46
+ dir = (stop - start).normalize
47
+ for i in 0 ..< int(dist(start, stop) / 5):
48
+ let pos = start + dir * i.float32 * 5
49
+ # bxy.drawImage(
50
+ # "bubble",
51
+ # pos,
52
+ # angle = 0,
53
+ # scale = 0.25,
54
+ # tint = color
55
+ # )
56
+
57
+ proc newSeq2D*[T](width: int, height: int): seq[seq[T]] =
58
+ result = newSeq[seq[T]](width)
59
+ for i in 0 ..< width:
60
+ result[i] = newSeq[T](height)
61
+
62
+ type
63
+ PathNode* = object
64
+ pos*: IVec2
65
+ gCost*: int
66
+ hCost*: int
67
+ parent*: int
68
+
69
+ proc fCost(node: PathNode): int =
70
+ ## Calculate the total cost of a node.
71
+ node.gCost + node.hCost
72
+
73
+ proc heuristic(a, b: IVec2): int =
74
+ ## Calculate the Manhattan distance heuristic.
75
+ abs(a.x - b.x) + abs(a.y - b.y)
76
+
77
+ proc findPath*(start, goal: IVec2, mapWidth, mapHeight: int, isWalkable: proc(pos: IVec2): bool): seq[IVec2] =
78
+ ## Find a path from start to goal using A* pathfinding.
79
+ if start == goal:
80
+ return @[]
81
+
82
+ if not isWalkable(goal):
83
+ return @[]
84
+
85
+ var openList: seq[PathNode] = @[PathNode(pos: start, gCost: 0, hCost: heuristic(start, goal), parent: -1)]
86
+ var closedSet: seq[IVec2] = @[]
87
+ var allNodes: seq[PathNode] = @[]
88
+
89
+ while openList.len > 0:
90
+ var currentIdx = 0
91
+ for i in 1 ..< openList.len:
92
+ if openList[i].fCost < openList[currentIdx].fCost:
93
+ currentIdx = i
94
+
95
+ let current = openList[currentIdx]
96
+ openList.delete(currentIdx)
97
+ closedSet.add(current.pos)
98
+
99
+ let currentNodeIdx = allNodes.len
100
+ allNodes.add(current)
101
+
102
+ if current.pos == goal:
103
+ var path: seq[IVec2] = @[]
104
+ var node = current
105
+ var nodeIdx = currentNodeIdx
106
+ while nodeIdx >= 0 and node.parent >= 0:
107
+ path.add(node.pos)
108
+ nodeIdx = node.parent
109
+ if nodeIdx >= 0:
110
+ node = allNodes[nodeIdx]
111
+ else:
112
+ break
113
+ path.add(start)
114
+ path.reverse()
115
+ return path
116
+
117
+ const directions = [ivec2(0, -1), ivec2(0, 1), ivec2(-1, 0), ivec2(1, 0)]
118
+
119
+ for dir in directions:
120
+ let neighborPos = ivec2(current.pos.x + dir.x, current.pos.y + dir.y)
121
+
122
+ if neighborPos.x < 0 or neighborPos.x >= mapWidth or neighborPos.y < 0 or neighborPos.y >= mapHeight:
123
+ continue
124
+
125
+ if neighborPos in closedSet:
126
+ continue
127
+
128
+ if not isWalkable(neighborPos):
129
+ continue
130
+
131
+ let newGCost = current.gCost + 1
132
+
133
+ var foundInOpen = false
134
+ for i in 0 ..< openList.len:
135
+ if openList[i].pos == neighborPos:
136
+ foundInOpen = true
137
+ if newGCost < openList[i].gCost:
138
+ openList[i].gCost = newGCost
139
+ openList[i].parent = currentNodeIdx
140
+ break
141
+
142
+ if not foundInOpen:
143
+ openList.add(PathNode(
144
+ pos: neighborPos,
145
+ gCost: newGCost,
146
+ hCost: heuristic(neighborPos, goal),
147
+ parent: currentNodeIdx
148
+ ))
149
+
150
+ return @[]