37 lines
1007 B
Python
Raw Normal View History

# import cv2
import sys
import time
import tqdm
import vizdoom as vzd
def main(cfg_path="maps/D3_battle.cfg", lmp_path="test.lmp"):
game = vzd.DoomGame()
game.load_config(cfg_path)
game.set_screen_format(vzd.ScreenFormat.CRCGCB)
game.set_screen_resolution(vzd.ScreenResolution.RES_1024X576)
game.set_window_visible(True)
game.set_render_hud(True)
game.init()
game.replay_episode(lmp_path)
killcount = 0
with tqdm.trange(10500) as tq:
while not game.is_episode_finished():
game.advance_action()
state = game.get_state()
if state is None:
break
killcount = game.get_game_variable(vzd.GameVariable.KILLCOUNT)
time.sleep(1 / 35)
# cv2.imwrite(f"imgs/{tq.n}.png",
# state.screen_buffer.transpose(1, 2, 0)[..., ::-1])
tq.update(1)
game.close()
print("killcount:", killcount)
if __name__ == "__main__":
main(*sys.argv[-2:])