def __init__(self, *args, **kwargs): map = """ -------------------- |.......|.|........| |.-----.|.|.-----|.| |.|...|.|.|......|.| |.|.|.|.|.|-----.|.| |.|.|...|....|.|.|.| |.|.--------.|.|.|.| |.|..........|...|.| |.|--------------|.| |..................| -------------------- """ lvl_gen = LevelGenerator(map=map, lit=True) lvl_gen.add_stair_up((9, 1)) lvl_gen.add_goal_pos((14, 5)) des_file = lvl_gen.get_des() kwargs["max_episode_steps"] = kwargs.pop("max_episode_steps", 400) super().__init__( *args, des_file=des_file, **kwargs, )
def get_lvl_gen(self): level = random.choice(self._levels) level = level.split("\n") map, info = self.get_env_map(level) flags = list(self._flags) flags.append("noteleport") flags.append("premapped") lvl_gen = LevelGenerator(map=map, lit=True, flags=flags, solidfill=" ") for b in info["boulders"]: lvl_gen.add_boulder(b) for f in info["fountains"]: lvl_gen.add_fountain(f) lvl_gen.add_stair_up(info["player"]) return lvl_gen
def __init__( self, *args, size=5, random=True, n_monster=0, n_trap=0, lit=True, **kwargs ): kwargs["max_episode_steps"] = kwargs.pop("max_episode_steps", size * 20) lvl_gen = LevelGenerator(w=size, h=size, lit=lit) if random: lvl_gen.add_stair_down() else: lvl_gen.add_stair_down((size - 1, size - 1)) lvl_gen.add_stair_up((0, 0)) for _ in range(n_monster): lvl_gen.add_monster() for _ in range(n_trap): lvl_gen.add_trap() super().__init__(*args, des_file=lvl_gen.get_des(), **kwargs)
def __init__(self, *args, **kwargs): map = """ ------------------------------------- |.................|.|...............| |.|-------------|.|.|.------------|.| |.|.............|.|.|.............|.| |.|.|----------.|.|.|------------.|.| |.|.|...........|.|.............|.|.| |.|.|.|----------.|-----------|.|.|.| |.|.|.|...........|.......|...|.|.|.| |.|.|.|.|----------------.|.|.|.|.|.| |.|.|.|.|.................|.|.|.|.|.| |.|.|.|.|.-----------------.|.|.|.|.| |.|.|.|.|...................|.|.|.|.| |.|.|.|.|--------------------.|.|.|.| |.|.|.|.......................|.|.|.| |.|.|.|-----------------------|.|.|.| |.|.|...........................|.|.| |.|.|---------------------------|.|.| |.|...............................|.| |.|-------------------------------|.| |...................................| ------------------------------------- """ lvl_gen = LevelGenerator(map=map, lit=True) lvl_gen.add_stair_up((19, 1)) lvl_gen.add_stair_down((19, 7)) lvl_gen.add_monster(name="minotaur", place=(19, 9)) lvl_gen.add_object("death", "/", cursestate="blessed") des_file = lvl_gen.get_des() kwargs["max_episode_steps"] = kwargs.pop("max_episode_steps", 1000) super().__init__( *args, des_file=des_file, **kwargs, )