donkeycar-rl-autoresearch/agent/list_tracks.py

34 lines
836 B
Python

import gymnasium as gym
import gym_donkeycar.envs
import gym_donkeycar.envs.donkey_env
import os
import time
host = os.environ.get('DONKEY_SIM_HOST', '10.0.0.55')
port = int(os.environ.get('DONKEY_SIM_PORT', '9091'))
print(f"Connecting to DonkeyCar sim at {host}:{port}")
env = gym.make("donkey-generated-roads-v0")
viewer = env.unwrapped.viewer
handler = viewer.handler
tracks = getattr(handler, 'scene_names', None)
# Wait for the list if necessary
timeout = 10
while tracks is None and timeout > 0:
if hasattr(handler, 'scene_names') and handler.scene_names:
tracks = handler.scene_names
break
time.sleep(1)
timeout -= 1
if tracks:
print("Available tracks/scenes:")
for t in tracks:
print(f" - {t}")
else:
print("Could not retrieve track/scene list from simulator.")
env.close()