def __init__(self, *args, **kwargs): map = """ |---------- |.........+ |---------- """ lvl_gen = LevelGenerator(map=map, lit=True) lvl_gen.set_start_pos((1, 1)) kwargs["options"] = kwargs.pop("options", []) kwargs["options"].append("autopickup") kwargs["max_episode_steps"] = kwargs.pop("max_episode_steps", 50) lvl_gen.add_object(name="death", symbol="/", cursestate="blessed", place=((1, 1))) lvl_gen.add_monster("minotaur", args=("asleep", ), place=(9, 1)) des_file = lvl_gen.get_des() rwrd_mngr = RewardManager() rwrd_mngr.add_kill_event("minotaur") super().__init__(*args, des_file=des_file, reward_manager=rwrd_mngr, **kwargs)
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 __init__(self, *args, **kwargs): lvl_gen = LevelGenerator(w=5, h=5, lit=True) lvl_gen.add_object("levitation", "!", place=(0, 0), cursestate="blessed") lvl_gen.set_start_pos((2, 2)) des_file = lvl_gen.get_des() super().__init__(*args, des_file=des_file, **kwargs)
def __init__(self, *args, **kwargs): lvl_gen = LevelGenerator(w=5, h=5, lit=True) lvl_gen.add_sink() des_file = lvl_gen.get_des() reward_manager = RewardManager() reward_manager.add_positional_event("sink", "quaff") super().__init__( *args, des_file=des_file, reward_manager=reward_manager, **kwargs )
def __init__(self, *args, **kwargs): lvl_gen = LevelGenerator(w=5, h=5, lit=True) lvl_gen.add_altar("random", "neutral", "altar") des_file = lvl_gen.get_des() reward_manager = RewardManager() reward_manager.add_positional_event("altar", "pray") super().__init__( *args, des_file=des_file, reward_manager=reward_manager, **kwargs )
def __init__(self, *args, **kwargs): lvl_gen = LevelGenerator(w=5, h=5, lit=True) lvl_gen.add_object("blank paper", "?") des_file = lvl_gen.get_des() reward_manager = RewardManager() reward_manager.add_message_event(["This scroll seems to be blank."]) super().__init__( *args, des_file=des_file, reward_manager=reward_manager, **kwargs )
def __init__(self, *args, **kwargs): lvl_gen = LevelGenerator(w=5, h=5, lit=True) lvl_gen.add_object("enlightenment", "/") des_file = lvl_gen.get_des() reward_manager = RewardManager() reward_manager.add_message_event(["The feeling subsides."]) # TODO change super().__init__( *args, des_file=des_file, reward_manager=reward_manager, **kwargs )
def __init__(self, *args, **kwargs): lvl_gen = LevelGenerator(w=5, h=5, lit=True) lvl_gen.add_object("amulet of life saving", '"') des_file = lvl_gen.get_des() reward_manager = RewardManager() reward_manager.add_amulet_event() super().__init__( *args, des_file=des_file, reward_manager=reward_manager, **kwargs )
def __init__(self, *args, **kwargs): lvl_gen = LevelGenerator(w=5, h=5, lit=True) lvl_gen.add_object("apple", "%") des_file = lvl_gen.get_des() reward_manager = RewardManager() reward_manager.add_eat_event("apple") super().__init__( *args, des_file=des_file, reward_manager=reward_manager, **kwargs )
def __init__(self, *args, **kwargs): lvl_gen = LevelGenerator(w=5, h=5, lit=True) lvl_gen.add_object("dagger", ")", place=(0, 0)) lvl_gen.set_start_pos((2, 2)) des_file = lvl_gen.get_des() reward_manager = RewardManager() reward_manager.add_wield_event("dagger") super().__init__( *args, des_file=des_file, reward_manager=reward_manager, **kwargs )
def __init__(self, *args, **kwargs): kwargs["max_episode_steps"] = kwargs.pop("max_episode_steps", 350) n_monster = kwargs.pop("n_monster", 0) n_boulder = kwargs.pop("n_boulder", 5) narrow = kwargs.pop("narrow", False) lava = kwargs.pop("lava", False) if narrow: map = """ ..................WW..... ..................WW..... ..................WW..... ..................WW..... ..................WW..... ..................WW..... ..................WW..... """ elif not lava: map = """ ..................WWW.... ..................WWW.... ..................WWW.... ..................WWW.... ..................WWW.... ..................WWW.... ..................WWW.... """ else: map = """ ..................LLL.... ..................LLL.... ..................WWW.... ..................LLL.... ..................WWW.... ..................LLL.... ..................LLL.... """ lvl_gen = LevelGenerator(map=map) lvl_gen.set_start_rect((0, 0), (18, 6)) for _ in range(n_monster): lvl_gen.add_monster() lvl_gen.set_area_variable( "$boulder_area", type="fillrect", x1=1, y1=1, x2=18, y2=5 ) for _ in range(n_boulder): lvl_gen.add_object_area("$boulder_area", name="boulder", symbol="`") lvl_gen.add_goal_pos((25, 2)) super().__init__(*args, des_file=lvl_gen.get_des(), **kwargs)
def __init__(self, *args, **kwargs): lvl_gen = LevelGenerator(w=5, h=5, lit=True) lvl_gen.add_object("dagger", ")") lvl_gen.add_monster() lvl_gen.add_object() des_file = lvl_gen.get_des() reward_manager = RewardManager() reward_manager.add_wield_event("dagger") super().__init__( *args, des_file=des_file, reward_manager=reward_manager, **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.set_start_pos((1, 1)) lvl_gen.add_goal_pos((27, 1)) lvl_gen.add_object(name="death", symbol="/", cursestate="blessed", place=((2, 1))) lvl_gen.add_monster("minotaur", args=("asleep", ), place=(26, 1)) kwargs["max_episode_steps"] = kwargs.pop("max_episode_steps", 150) des_file = lvl_gen.get_des() super().__init__(*args, des_file=des_file, **kwargs)
def __init__(self, *args, lit=True, **kwargs): kwargs["character"] = "kni-hum-law-fem" # tested on human knight kwargs["max_episode_steps"] = kwargs.pop("max_episode_steps", 350) map = """ ----- ---------------------- |...| |....................| |....#######.....................| |...| |....................| ----- ---------------------- """ lvl_gen = LevelGenerator(map=map, lit=lit) lvl_gen.set_start_rect((1, 1), (3, 3)) lvl_gen.add_monster(name="giant rat", place=(30, 1)) lvl_gen.add_monster(name="giant rat", place=(30, 2)) lvl_gen.add_monster(name="giant rat", place=(30, 3)) lvl_gen.add_monster(name="giant rat", place=(31, 1)) lvl_gen.add_monster(name="giant rat", place=(31, 2)) lvl_gen.add_monster(name="giant rat", place=(31, 3)) lvl_gen.add_goal_pos((32, 2)) 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, )
def __init__(self, *args, **kwargs): map = """ |---------------------------| |...........................| |.....|---------------------| |.....| |.....| |-----| """ lvl_gen = LevelGenerator(map=map, lit=True) lvl_gen.set_start_rect((1, 1), (5, 5)) lvl_gen.add_goal_pos((27, 1)) lvl_gen.set_area_variable("$safe_room", "fillrect", 1, 1, 5, 5) lvl_gen.add_object_area("$safe_room", name="death", symbol="/", cursestate="blessed") lvl_gen.add_monster("minotaur", place=(26, 1)) 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 __init__(self, *args, **kwargs): lvl_gen = LevelGenerator(w=8, h=8, lit=True) lvl_gen.add_object("frost horn", "(", cursestate="blessed") des_file = lvl_gen.get_des() super().__init__(*args, des_file=des_file, **kwargs)
def __init__(self, *args, **kwargs): lvl_gen = LevelGenerator(w=5, h=5, lit=True) lvl_gen.add_object("levitation", "=", cursestate="blessed") des_file = lvl_gen.get_des() super().__init__(*args, des_file=des_file, **kwargs)
def __init__(self, *args, **kwargs): lvl_gen = LevelGenerator(w=5, h=5, lit=True) lvl_gen.add_object("cloak of invisibility", "[", cursestate="blessed") des_file = lvl_gen.get_des() super().__init__(*args, des_file=des_file, **kwargs)