Блоги - боти №2 - dota 2


Icefrog продовжує розвивати штучний інтелект, можливо, в цьому році ми побачимо щось нове. пов'язане з ними

Гарні новини!

У Workshop'е додали можливість додавання своїх ботів. так що чекаємо звідти хороших і якісних ботів

Для початку - як зробити своїх ботів.

Для початку переходимо в папку з дотой.
Стандартний шлях:
$ Папка_со_стімом \ SteamApps \ common \ dota 2 beta \ game \ dota \ scripts \ vscripts \ bots_example

Це основна папка, в якій знаходяться скрипти спамерських пошукових роботів.

Для запуску стандартних ботів:

Блоги - боти №2 - dota 2

Створюємо лобі> включаємо чіти> заповнити порожні слоти ботами> вибираємо за Radiant дефолтний скрипт (або будь-хто. Скачаний вами) / за Dire ті ж самі операції> Запускаємо гру

Важливо!

Ви можете змінювати скрипти ботів по ходу гри, однак, для їх активації вам потрібно перевантажити ботів консольної командою dota_bot_reload_scripts
ОФФ Викинь рекомендує це робити, краще пересоздавать лобі, так як можливі краш під час гри

Також ви тестируете стратегії ботів (час пуша, дефа, атаки на Roche). користуйтеся командної
host_timescale

Як користуватися - наприклад, для прискорення гри в 4 рази пишіть в консолі host_timescale 4.0

Додана команда fill_with_bots для запуску ботів на виділених серверах;
Пофікшен скрипт місяця;
Команда dota_bot_dump_state все також робить дамп всіх ботів;
Пофікшена функція ботів Action_DropItem () і Action_PickUpItem () і тепер працює нормально;
Доданий Action_SwapItems () в API спамерських пошукових роботів. Тепер бот може змінювати предмети в запасник і назад;
Додана область видимості для пошукових роботів - GetBoundingRadius ();
Додана область видимості для пошукових роботів - GetItemSlotType () в API спамерських пошукових роботів. Бот змінює речі в певних слотах (наприклад, 1 слот змінюється з 1 слотом в запаснику, 5 з 5);
Додана область видимості - WasRecentlyDamagedByTower (). TimeSinceDamagedByTower (). WasRecentlyDamagedByCreep (). and TimeSinceDamagedByCreep () в API спамерських пошукових роботів.
Додана глобальна змінна GetDroppedItemList () в API спамерських пошукових роботів. Показує всі викинуті предмети в області видимості спамерських пошукових роботів.
Доданий ITEM_SLOT_TYPE_INVALID. ITEM_SLOT_TYPE_MAIN. ITEM_SLOT_TYPE_BACKPACK. і ITEM_SLOT_TYPE_STASH константи в API.
Пофікшена функція IsCooldownReady () і GetCooldownTimeRemaining (). яка працювала тільки на себе і свою команду (бот може прораховувати час ворожих спеллов і Ульт, якщо ВІН бачив, як їх кастовать).
Пофікшени краш Action_MoveToUnit (). Action_AttackUnit (). Action_UseAbility (). Action_UseAbilityOnEntity (). Action_UseAbilityOnLocation (). Action_UseAbilityOnTree ().
Додана команда FindItemSlot () в API.

І остання команда:

npcBot: Action_Chat ( "Report team, I've seen passive bots do better than them.", true);
npcBot: Action_Chat ( "Good game, well played!", true);