genetic_alg #34
@ -122,10 +122,21 @@ def find_neighbours(grid: npt.NDArray, col: int, row: int) -> List[Position]:
|
|||||||
return neighbours
|
return neighbours
|
||||||
|
|
||||||
|
|
||||||
def count_in_grid(grid: npt.NDArray, target) -> int:
|
def get_tiles_positions(grid: npt.NDArray):
|
||||||
count = 0
|
sands = []
|
||||||
for row in grid:
|
trees = []
|
||||||
for col in row:
|
waters = []
|
||||||
if col == target:
|
monsters = []
|
||||||
count += 1
|
|
||||||
return count
|
for row_num in range(len(grid)):
|
||||||
|
for col_num in range(len(grid[row_num])):
|
||||||
|
if grid[row_num][col_num] == MAP_ALIASES.get('WATER'):
|
||||||
|
waters.append(Position(row=row_num, col=col_num))
|
||||||
|
elif grid[row_num][col_num] == MAP_ALIASES.get('TREE'):
|
||||||
|
trees.append(Position(row=row_num, col=col_num))
|
||||||
|
elif grid[row_num][col_num] == MAP_ALIASES.get('SAND'):
|
||||||
|
sands.append(Position(row=row_num, col=col_num))
|
||||||
|
elif grid[row_num][col_num] == MAP_ALIASES.get('MONSTER'):
|
||||||
|
monsters.append(Position(row=row_num, col=col_num))
|
||||||
|
|
||||||
|
return sands, trees, waters, monsters
|
||||||
|
@ -7,7 +7,7 @@ from typing import List
|
|||||||
import numpy as np
|
import numpy as np
|
||||||
import numpy.typing as npt
|
import numpy.typing as npt
|
||||||
|
|
||||||
from common import Position, get_islands, AREAS_TO_CROSS, find_neighbours, count_in_grid
|
from common import Position, get_islands, AREAS_TO_CROSS, find_neighbours, get_tiles_positions
|
||||||
from const import *
|
from const import *
|
||||||
|
|
||||||
|
|
||||||
@ -68,16 +68,26 @@ class Genome:
|
|||||||
self.tree_islands = get_islands(self.grid, self.trees)
|
self.tree_islands = get_islands(self.grid, self.trees)
|
||||||
self.water_islands = get_islands(self.grid, self.waters)
|
self.water_islands = get_islands(self.grid, self.waters)
|
||||||
|
|
||||||
|
def update_map(self):
|
||||||
|
self.sands, self.trees, self.waters, self.monsters = get_tiles_positions(self.grid)
|
||||||
|
|
||||||
|
self.sand_islands = get_islands(self.grid, self.sands)
|
||||||
|
self.tree_islands = get_islands(self.grid, self.trees)
|
||||||
|
self.water_islands = get_islands(self.grid, self.waters)
|
||||||
|
|
||||||
def calc_fitness(self):
|
def calc_fitness(self):
|
||||||
score = SAND_COUNT + TREE_COUNT + WATER_COUNT
|
score = SAND_COUNT + TREE_COUNT + WATER_COUNT
|
||||||
score = score - len(self.sand_islands) - len(self.tree_islands) - len(self.water_islands)
|
score = score - len(self.sand_islands) - len(self.tree_islands) - len(self.water_islands)
|
||||||
|
|
||||||
monsters_count = count_in_grid(self.grid, MAP_ALIASES.get('MONSTER'))
|
sands, trees, waters, monsters = get_tiles_positions(self.grid)
|
||||||
if monsters_count < 2:
|
|
||||||
|
if len(monsters) < MONSTERS_COUNT:
|
||||||
self.fitness = 0
|
self.fitness = 0
|
||||||
return
|
return
|
||||||
|
|
||||||
# todo: odległość manhattan od każdej wyspy
|
if len(sands) < SAND_COUNT or len(trees) < TREE_COUNT or len(waters) < WATER_COUNT:
|
||||||
|
self.fitness = 5
|
||||||
|
return
|
||||||
|
|
||||||
self.fitness = score
|
self.fitness = score
|
||||||
|
|
||||||
@ -91,9 +101,7 @@ class Genome:
|
|||||||
for col in range(area_to_cross.position.col, area_to_cross.position.col + area_to_cross.width):
|
for col in range(area_to_cross.position.col, area_to_cross.position.col + area_to_cross.width):
|
||||||
child.grid[row][col] = partner.grid[row][col]
|
child.grid[row][col] = partner.grid[row][col]
|
||||||
|
|
||||||
child.sand_islands = get_islands(self.grid, self.sands)
|
child.update_map()
|
||||||
child.tree_islands = get_islands(self.grid, self.trees)
|
|
||||||
child.water_islands = get_islands(self.grid, self.waters)
|
|
||||||
|
|
||||||
return child
|
return child
|
||||||
|
|
||||||
@ -110,9 +118,7 @@ class Genome:
|
|||||||
free_tiles_nearby = find_neighbours(self.grid, next_island.col, next_island.row)
|
free_tiles_nearby = find_neighbours(self.grid, next_island.col, next_island.row)
|
||||||
|
|
||||||
tile_type = self.grid[island.row][island.col]
|
tile_type = self.grid[island.row][island.col]
|
||||||
|
|
||||||
self.grid[island.row][island.col] = MAP_ALIASES.get('GRASS')
|
self.grid[island.row][island.col] = MAP_ALIASES.get('GRASS')
|
||||||
islands_of_same_type.remove(island)
|
|
||||||
|
|
||||||
# todo: if there are no free tiles around then randomize another next_island
|
# todo: if there are no free tiles around then randomize another next_island
|
||||||
if len(free_tiles_nearby) > 0:
|
if len(free_tiles_nearby) > 0:
|
||||||
@ -121,9 +127,7 @@ class Genome:
|
|||||||
island.col = random_free_tile.col
|
island.col = random_free_tile.col
|
||||||
self.grid[island.row][island.col] = tile_type
|
self.grid[island.row][island.col] = tile_type
|
||||||
|
|
||||||
self.sand_islands = get_islands(self.grid, self.sands)
|
self.update_map()
|
||||||
self.tree_islands = get_islands(self.grid, self.trees)
|
|
||||||
self.water_islands = get_islands(self.grid, self.waters)
|
|
||||||
|
|
||||||
|
|
||||||
def is_empty(grid: npt.NDArray, position: Position) -> bool:
|
def is_empty(grid: npt.NDArray, position: Position) -> bool:
|
||||||
|
@ -5,9 +5,9 @@ from population import Population
|
|||||||
|
|
||||||
def main() -> None:
|
def main() -> None:
|
||||||
population_size = 500
|
population_size = 500
|
||||||
mutation_rate = 0.4
|
mutation_rate = 0.3
|
||||||
|
|
||||||
population = Population(mutation_rate, population_size, 27)
|
population = Population(mutation_rate, population_size, 60)
|
||||||
|
|
||||||
while not population.evaluate():
|
while not population.evaluate():
|
||||||
# create next generation
|
# create next generation
|
||||||
|
@ -18,7 +18,6 @@ def export_map(grid: npt.NDArray):
|
|||||||
path = Path("../../resources/maps/")
|
path = Path("../../resources/maps/")
|
||||||
file_to_open = path / file_name
|
file_to_open = path / file_name
|
||||||
|
|
||||||
print(file_to_open)
|
|
||||||
with open(file_to_open, "w+") as write_file:
|
with open(file_to_open, "w+") as write_file:
|
||||||
json.dump(json_data, write_file)
|
json.dump(json_data, write_file)
|
||||||
print("Saved map to file " + file_name)
|
print("Saved map to file " + file_name)
|
||||||
|
@ -1 +0,0 @@
|
|||||||
{"map": [[3, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 3, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 0, 0, 1, 1, 0], [2, 1, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 3, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 1, 0, 0, 2], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0], [0, 0, 6, 0, 1, 3, 0, 0, 0, 0, 0, 5, 5, 0, 0, 0, 3, 0, 0, 0, 0, 0, 7, 0], [0, 0, 0, 0, 0, 0, 3, 0, 1, 0, 1, 5, 5, 0, 0, 1, 0, 3, 0, 0, 3, 7, 0, 0], [0, 0, 2, 0, 0, 1, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 6, 6, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0], [0, 0, 0, 1, 0, 0, 2, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 6, 0, 3, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 2, 0, 0, 0, 0, 2, 0, 0, 7, 0], [0, 0, 0, 0, 2, 3, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 2, 3, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 4, 0, 3, 0, 3, 0, 3, 3], [3, 1, 0, 1, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 2, 0, 0, 0, 0, 2, 1, 1, 3, 0, 1, 0], [0, 0, 0, 0, 3, 3, 3, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 1, 0, 0, 0, 0, 3, 3, 0, 0]]}
|
|
@ -1 +0,0 @@
|
|||||||
{"map": [[0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 2, 0, 3, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 1, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 3, 0], [1, 2, 0, 2, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2], [0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0], [6, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0], [6, 0, 3, 0, 0, 0, 2, 3, 0, 3, 0, 5, 5, 0, 0, 0, 0, 0, 3, 0, 3, 0, 0, 0], [0, 1, 0, 2, 3, 0, 0, 0, 2, 0, 0, 5, 5, 3, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0], [0, 6, 6, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 3], [0, 0, 0, 0, 1, 3, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 2, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 3, 2, 0, 0, 0, 2, 0, 0, 0], [0, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2], [0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3], [2, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3], [3, 0, 0, 0, 3, 3, 0, 0, 0, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0]]}
|
|
@ -1 +0,0 @@
|
|||||||
{"map": [[0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0], [0, 0, 0, 0, 2, 4, 0, 0, 0, 0, 0, 0, 2, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 3, 0, 3, 0, 0, 0, 0, 0, 4, 0, 0], [0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 3, 0], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3], [0, 3, 3, 0, 7, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 3, 0, 1, 0, 0, 0, 3, 0], [0, 0, 0, 0, 0, 0, 0, 0, 6, 1, 0, 5, 5, 1, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0], [0, 0, 6, 6, 0, 0, 0, 1, 0, 0, 0, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0], [0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 7, 0, 7, 2, 0, 0, 0, 0, 0, 0, 3, 0, 0], [6, 0, 3, 0, 0, 0, 1, 3, 0, 0, 0, 0, 0, 0, 6, 0, 3, 0, 0, 0, 7, 3, 0, 0], [0, 0, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0, 2, 3, 4, 2, 0], [0, 2, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 1, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 3, 0, 3, 2, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 2, 0, 0, 0], [0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 2, 1, 0, 0, 0, 0, 0, 3, 0, 1, 1, 0, 7, 0], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0], [0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0], [7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]}
|
|
1
resources/maps/map_2022_06_02_13_17_41.json
Normal file
1
resources/maps/map_2022_06_02_13_17_41.json
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"map": [[3, 3, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0], [0, 0, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0], [0, 0, 0, 2, 0, 0, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 2, 3, 3, 3, 3, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 3, 0, 0, 0], [0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0], [0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 0, 1, 2, 0, 0, 0, 2, 0, 0, 0, 0], [6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 3, 3, 3, 0, 0, 0, 0, 0, 0, 7, 7], [3, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0], [3, 3, 6, 0, 1, 0, 0, 3, 3, 0, 0, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 1, 1, 0], [3, 3, 0, 0, 1, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 7, 1, 0], [0, 3, 0, 0, 0, 0, 2, 2, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 2, 3, 1, 0], [0, 3, 3, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0], [0, 0, 3, 3, 0, 4, 0, 0, 0, 1, 1, 0, 0, 0, 1, 4, 0, 0, 0, 0, 3, 0, 0, 0], [0, 0, 0, 0, 0, 0, 1, 0, 4, 0, 1, 0, 0, 0, 1, 0, 0, 3, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 3, 3, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 0], [0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0]]}
|
1
resources/maps/map_2022_06_02_13_24_20.json
Normal file
1
resources/maps/map_2022_06_02_13_24_20.json
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"map": [[0, 0, 0, 1, 0, 3, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0], [0, 2, 0, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 3, 3, 1, 0], [3, 2, 2, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 1, 0], [3, 3, 2, 1, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0], [0, 3, 2, 2, 0, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0], [0, 3, 2, 0, 0, 3, 1, 0, 0, 4, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0], [0, 3, 3, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 7, 0, 1, 1], [6, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 0, 2, 2, 0, 0, 0, 0, 0, 0, 1, 1], [6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 0, 2, 0, 0, 0, 0, 0, 0, 0, 1, 7], [0, 0, 6, 2, 0, 0, 0, 0, 2, 2, 2, 2, 2, 0, 2, 2, 2, 0, 0, 0, 7, 0, 1, 0], [0, 0, 0, 2, 0, 0, 2, 2, 2, 0, 0, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 2, 2, 2, 0, 0, 0, 2, 1, 0, 0, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, 7, 0, 0], [0, 2, 0, 0, 0, 0, 0, 0, 1, 0, 2, 2, 2, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0], [1, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0], [1, 0, 3, 3, 3, 4, 0, 0, 0, 0, 3, 0, 4, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]}
|
1
resources/maps/map_2022_06_02_13_27_18.json
Normal file
1
resources/maps/map_2022_06_02_13_27_18.json
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"map": [[0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [0, 0, 0, 0, 3, 3, 0, 0, 1, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0], [0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 3], [0, 0, 0, 3, 3, 3, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 3], [0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 4, 0, 0, 0, 2, 0, 3], [0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2], [0, 0, 3, 3, 3, 0, 0, 0, 3, 3, 3, 3, 0, 2, 2, 2, 0, 0, 0, 0, 0, 7, 2, 0], [0, 0, 0, 6, 0, 0, 0, 2, 2, 2, 0, 5, 5, 0, 2, 0, 0, 2, 2, 2, 2, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 5, 5, 0, 2, 0, 0, 0, 0, 2, 2, 1, 1, 7], [0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 3, 1, 7], [6, 0, 0, 6, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 3, 1, 1, 0], [6, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 3, 3, 0, 0, 0, 0, 3, 3, 0, 0, 1, 0, 0], [0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 3, 3, 0, 1, 1, 7, 0], [0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 3, 3, 3, 1, 1, 1, 0], [0, 3, 3, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 1, 0, 0], [0, 3, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 4, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]}
|
Loading…
Reference in New Issue
Block a user