├── .gitignore ├── .gitmodules ├── LICENSE ├── README.md ├── backup_docs ├── human_play_data_flow.pptx └── pydota2.pptx ├── human_play_data_flow.pdf ├── ml_docs ├── AHTN.pdf ├── AlphaGoZero.pdf ├── ExIt.pdf ├── HierarchicalDeepLearning.pdf ├── RTS_CNN.pdf ├── SearchAbstractionLearningInRTS.pdf └── book2015oct.pdf ├── pydota2.pdf ├── pydota2 ├── __init__.py ├── agents │ ├── __init__.py │ ├── base_agent.py │ ├── hero_select_agent.py │ ├── random_agent.py │ └── smart_agent.py ├── bin │ ├── __init__.py │ ├── agent.py │ ├── human_play.py │ ├── prep_dota_client.py │ ├── proto_ingest.py │ ├── replay_actions.py │ ├── self_play.py │ └── valid_actions.py ├── bot_code │ ├── README.md │ └── bots │ │ ├── actions │ │ ├── atomic_glyph.lua │ │ ├── atomic_level_ability.lua │ │ ├── attack_unit.lua │ │ ├── buyback.lua │ │ ├── clear.lua │ │ ├── cmd_processor.lua │ │ ├── move_directly.lua │ │ ├── move_to_location.lua │ │ └── none.lua │ │ ├── bot_antimage.lua │ │ ├── bot_bane.lua │ │ ├── bot_info.lua │ │ ├── bot_necrolyte.lua │ │ ├── bot_nyx_assassin.lua │ │ ├── bot_pudge.lua │ │ ├── bot_template.lua │ │ ├── controller.lua │ │ ├── data_packet.lua │ │ ├── debug.lua │ │ ├── hero_selection.lua │ │ ├── heroes │ │ ├── _heroes.lua │ │ ├── antimage.lua │ │ ├── bane.lua │ │ ├── necrolyte.lua │ │ ├── nyx_assassin.lua │ │ └── pudge.lua │ │ ├── utility │ │ └── util_funcs.lua │ │ ├── web_config.lua │ │ └── webserver_out.lua ├── env │ ├── __init__.py │ ├── available_actions_printer.py │ ├── base_env_wrapper.py │ ├── dota2_env.py │ ├── environment.py │ └── run_loop.py ├── gen_data │ ├── abilities.json │ ├── gen_ability.py │ ├── heroes.json │ ├── json_lookup.py │ └── units.json ├── lib │ ├── __init__.py │ ├── actions.py │ ├── client_connector.py │ ├── features.py │ ├── gfile.py │ ├── location.py │ ├── proto_connector.py │ ├── run_parallel.py │ ├── stopwatch.py │ └── world_data.py ├── ml_algo │ └── q_learn.py ├── protobuf │ ├── CMsgBotWorldState.proto │ ├── CMsgBotWorldState_pb2.py │ └── __init__.py └── tests │ └── __init__.py └── requirements.pip /.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *.*.swp 3 | .idea/ 4 | .DS_Store 5 | replays/*/ 6 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/.gitmodules -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/README.md -------------------------------------------------------------------------------- /backup_docs/human_play_data_flow.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/backup_docs/human_play_data_flow.pptx -------------------------------------------------------------------------------- /backup_docs/pydota2.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/backup_docs/pydota2.pptx -------------------------------------------------------------------------------- /human_play_data_flow.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/human_play_data_flow.pdf -------------------------------------------------------------------------------- /ml_docs/AHTN.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/ml_docs/AHTN.pdf -------------------------------------------------------------------------------- /ml_docs/AlphaGoZero.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/ml_docs/AlphaGoZero.pdf -------------------------------------------------------------------------------- /ml_docs/ExIt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/ml_docs/ExIt.pdf -------------------------------------------------------------------------------- /ml_docs/HierarchicalDeepLearning.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/ml_docs/HierarchicalDeepLearning.pdf -------------------------------------------------------------------------------- /ml_docs/RTS_CNN.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/ml_docs/RTS_CNN.pdf -------------------------------------------------------------------------------- /ml_docs/SearchAbstractionLearningInRTS.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/ml_docs/SearchAbstractionLearningInRTS.pdf -------------------------------------------------------------------------------- /ml_docs/book2015oct.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/ml_docs/book2015oct.pdf -------------------------------------------------------------------------------- /pydota2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2.pdf -------------------------------------------------------------------------------- /pydota2/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/__init__.py -------------------------------------------------------------------------------- /pydota2/agents/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/agents/__init__.py -------------------------------------------------------------------------------- /pydota2/agents/base_agent.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/agents/base_agent.py -------------------------------------------------------------------------------- /pydota2/agents/hero_select_agent.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/agents/hero_select_agent.py -------------------------------------------------------------------------------- /pydota2/agents/random_agent.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/agents/random_agent.py -------------------------------------------------------------------------------- /pydota2/agents/smart_agent.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/agents/smart_agent.py -------------------------------------------------------------------------------- /pydota2/bin/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bin/__init__.py -------------------------------------------------------------------------------- /pydota2/bin/agent.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bin/agent.py -------------------------------------------------------------------------------- /pydota2/bin/human_play.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bin/human_play.py -------------------------------------------------------------------------------- /pydota2/bin/prep_dota_client.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bin/prep_dota_client.py -------------------------------------------------------------------------------- /pydota2/bin/proto_ingest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bin/proto_ingest.py -------------------------------------------------------------------------------- /pydota2/bin/replay_actions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bin/replay_actions.py -------------------------------------------------------------------------------- /pydota2/bin/self_play.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bin/self_play.py -------------------------------------------------------------------------------- /pydota2/bin/valid_actions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bin/valid_actions.py -------------------------------------------------------------------------------- /pydota2/bot_code/README.md: -------------------------------------------------------------------------------- 1 | TODO 2 | -------------------------------------------------------------------------------- /pydota2/bot_code/bots/actions/atomic_glyph.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/actions/atomic_glyph.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/actions/atomic_level_ability.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/actions/atomic_level_ability.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/actions/attack_unit.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/actions/attack_unit.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/actions/buyback.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/actions/buyback.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/actions/clear.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/actions/clear.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/actions/cmd_processor.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/actions/cmd_processor.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/actions/move_directly.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/actions/move_directly.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/actions/move_to_location.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/actions/move_to_location.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/actions/none.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/actions/none.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/bot_antimage.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/bot_antimage.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/bot_bane.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/bot_bane.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/bot_info.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/bot_info.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/bot_necrolyte.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/bot_necrolyte.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/bot_nyx_assassin.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/bot_nyx_assassin.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/bot_pudge.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/bot_pudge.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/bot_template.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/bot_template.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/controller.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/controller.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/data_packet.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/data_packet.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/debug.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/debug.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/hero_selection.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/hero_selection.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/heroes/_heroes.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/heroes/_heroes.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/heroes/antimage.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/heroes/antimage.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/heroes/bane.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/heroes/bane.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/heroes/necrolyte.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/heroes/necrolyte.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/heroes/nyx_assassin.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/heroes/nyx_assassin.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/heroes/pudge.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/heroes/pudge.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/utility/util_funcs.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/utility/util_funcs.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/web_config.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/web_config.lua -------------------------------------------------------------------------------- /pydota2/bot_code/bots/webserver_out.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/bot_code/bots/webserver_out.lua -------------------------------------------------------------------------------- /pydota2/env/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/env/__init__.py -------------------------------------------------------------------------------- /pydota2/env/available_actions_printer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/env/available_actions_printer.py -------------------------------------------------------------------------------- /pydota2/env/base_env_wrapper.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/env/base_env_wrapper.py -------------------------------------------------------------------------------- /pydota2/env/dota2_env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/env/dota2_env.py -------------------------------------------------------------------------------- /pydota2/env/environment.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/env/environment.py -------------------------------------------------------------------------------- /pydota2/env/run_loop.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/env/run_loop.py -------------------------------------------------------------------------------- /pydota2/gen_data/abilities.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/gen_data/abilities.json -------------------------------------------------------------------------------- /pydota2/gen_data/gen_ability.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/gen_data/gen_ability.py -------------------------------------------------------------------------------- /pydota2/gen_data/heroes.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/gen_data/heroes.json -------------------------------------------------------------------------------- /pydota2/gen_data/json_lookup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/gen_data/json_lookup.py -------------------------------------------------------------------------------- /pydota2/gen_data/units.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/gen_data/units.json -------------------------------------------------------------------------------- /pydota2/lib/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/lib/__init__.py -------------------------------------------------------------------------------- /pydota2/lib/actions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/lib/actions.py -------------------------------------------------------------------------------- /pydota2/lib/client_connector.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/lib/client_connector.py -------------------------------------------------------------------------------- /pydota2/lib/features.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/lib/features.py -------------------------------------------------------------------------------- /pydota2/lib/gfile.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/lib/gfile.py -------------------------------------------------------------------------------- /pydota2/lib/location.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/lib/location.py -------------------------------------------------------------------------------- /pydota2/lib/proto_connector.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/lib/proto_connector.py -------------------------------------------------------------------------------- /pydota2/lib/run_parallel.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/lib/run_parallel.py -------------------------------------------------------------------------------- /pydota2/lib/stopwatch.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/lib/stopwatch.py -------------------------------------------------------------------------------- /pydota2/lib/world_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/lib/world_data.py -------------------------------------------------------------------------------- /pydota2/ml_algo/q_learn.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/ml_algo/q_learn.py -------------------------------------------------------------------------------- /pydota2/protobuf/CMsgBotWorldState.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/protobuf/CMsgBotWorldState.proto -------------------------------------------------------------------------------- /pydota2/protobuf/CMsgBotWorldState_pb2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/protobuf/CMsgBotWorldState_pb2.py -------------------------------------------------------------------------------- /pydota2/protobuf/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/protobuf/__init__.py -------------------------------------------------------------------------------- /pydota2/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pydota2/pydota2_archive/HEAD/pydota2/tests/__init__.py -------------------------------------------------------------------------------- /requirements.pip: -------------------------------------------------------------------------------- 1 | future 2 | absl-py 3 | numpy 4 | pandas 5 | baselines 6 | flask 7 | --------------------------------------------------------------------------------