edbeeching / godot_rl_agents

An Open Source package that allows video game creators, AI researchers and hobbyists the opportunity to learn complex behaviors for their Non Player Characters or agents
MIT License
974 stars 70 forks source link

Jumper Hard example not working with stable baselines in godot 3.5 #71

Closed visuallization closed 1 year ago

visuallization commented 1 year ago

Hey there,

When I try to run the jumper hard example with stable baselines in godot 3.5. gdrl --env_path .\envs\builds\JumperHard\jumper_hard.exe --config_file .\envs\configs\ppo_config_jumper_hard.yaml I do get the following error:

grafik

@yaelatletl Can you confirm that this does not currently work?

Cheers

visuallization commented 1 year ago

Okay I even got a similar issue with godot 4 version when downloading the BallChase example and running: python examples/stable_baselines3_example.py --env_path=examples/godot_rl_BallChase/bin/BallChase.exe --speedup=8

I get grafik

edbeeching commented 1 year ago

Thanks for spotting this bug. I just fixed it on the godot 4 master branch. commit 6964f73ee4b3a73d1a17c393b12ce57e1587eab7 I have not got around to updating the 3.5 branch. Feel free to submit a PR on this. Otherwise I will get round to it later this weekend.

Let me know if you have any other issues.

visuallization commented 1 year ago

Nice, thanks for fixing! I can confirm this works now on all my tested environments.

visuallization commented 1 year ago

I just realized & please confirm if I get this right: The godot3.5 branch and the main branch seem to be pretty similar from the python rl side. Maybe we shouldn't split between 3.5 and 4 in this repo, as the python algorithms seem to run for both godot versions and the only thing which breaks is the godot plugin. So maybe it makes sense to differentiate between the 2 versions only inside the separated godot plugin repository and then make sure to have a stable main branch on this repo and continue further development on a dedicated development branch, so people can get directly started from the main branch without worrying about things not working.