freshcrate
Skin:/
Home > Frameworks > Dota2AIFramework

Dota2AIFramework

General Framework for Dota 2 AI Competitions

Why this rank:Strong adoptionHealthy release cadence

Description

General Framework for Dota 2 AI Competitions

README

DotA 2 AI Competition Framework

The purpose of this framework is to provide a platform for AI competitions in DotA 2. It handles AI setup as well as wrapping the regular DotA 2 lua API to prevent AI scripts from accessing data or performing actions, to emulate the AI playing as a human player.

Preview Video

Goals of the framework:

  • Encourage the development of Lua AI for dota custom games.
  • Provide a starting point for developers that want AI in their games.
  • Eventually having decent AI for bot matches.

Challenges

Different challenges will drive development in different directions. Therefore the AI framework provides different challenges for AI to deal with. The challenges currently supported are:

  • 1v1 Mid - Two AI face off 1v1 mid on identical heroes on the default dota map. The first AI to kill a tower or get two kills on the other AI wins.

Possible future challenges are:

  • Farm optimization challenge
  • Three versus three mid and jungle.
  • 1v1v1v1
  • Last hit challenge

Documentation

Framework AI only has access to a limited subset of the regular dota 2 lua AI. The available functions can be found here:

Using framework AI in a custom game

To use AI from this framework in a custom game, simply copy the entire scripts/vscripts/AI/ directory, then require AIManager in your gamemode. An existing AI can then be attached to an existing unit using:

AIManager:AttachAI( 'ai_name', unit )

This will load the AI named ai_name from AI/UserAI/ai_name and attach it to unit.

Release History

VersionChangesUrgencyDate
0.0.0No release found — using repo HEADLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016
master@2016-11-11Latest activity on master branchLow11/11/2016

Dependencies & License Audit

Loading dependencies...

Similar Packages

saas-builderAI-native SaaS framework that builds full-stack apps using autonomous AI agentsmain@2026-07-26
JackrabbitAIA Python framework for building flexible, multi-provider AI applications and Discord bots using OpenAI and Cohere.main@2026-07-26
onnxruntimeONNX Runtime: cross-platform, high performance ML inferencing and training acceleratorv1.28.0
Wee-Orchestrator🍀 Self-hosted multi-agent AI orchestrator — chat with Claude, Gemini & Copilot CLI from Telegram, WebEx, or browser. 5 runtimes, 17+ models, task scheduling, skill plugins.macos-v0.7.2
einoThe ultimate LLM/AI application development framework in Go.v0.9.13

More in Frameworks

sglangSGLang is a fast serving framework for large language models and vision language models.
onnxruntimeONNX Runtime: cross-platform, high performance ML inferencing and training accelerator
elizaAutonomous agents for everyone
bamlThe AI framework that adds the engineering to prompt engineering (Python/TS/Ruby/Java/C#/Rust/Go compatible)