Инструменты пользователя

Инструменты сайта


q3:управление_ботами

Различия

Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.

Ссылка на это сравнение

q3:управление_ботами [13.01.2010 11:29]
GT-Agressor
q3:управление_ботами [06.07.2020 03:50]
Строка 1: Строка 1:
-==== Создание путей для ботов ==== 
- 
-//незаконченный раздел, под рукой нет программ :( 
- 
-Для того, чтобы на вашей deathmatch (ctf/tourney) карте появились боты, во-первых, необходимо расставить точки респауна info_player_deathmatch. После этого для упрощения расчетов путей для ботов, а также во избежание застревания ботов ставим браши с текстурой common/bot_clip в тех местах, где боты не должны бегать. 
- 
-Для расчета путей ботов воспользуемся компилятором bspc.exe и оболочкой для него Q3map3build. 
- 
-Здесь все просто - выбираем в списке карт нашу, выбираем параметры компиляции bsp, vis, light (если уже скомпилированы, то "none"), а в настройках ... компиляции выбираем ... 
- 
-Нажимаем запустить, ждем окончания компиляции, запускаем карту, проверяем ботов. В большинстве случаев находятся места, где боты начинают "тупить", с помощью bot_clip убираем/изменяем проблемные места, и компилируем заново 
- 
-==== Управление характеристиками ботов ==== 
- 
-Автор: DominuS  
- 
-Взято с docs.com.ru   
- 
-Наверное, не сразу понятно, про что будет статья. Объясняю, статья будет про ботов в Quake III Arena. Наверняка все, кто читает эту статью, уже давно разносит в пух и прах великого Xaero на найтмаровской сложности на его родной карте и хочется чего-нибудь новенького. Итак, месим мясо для Ку3.  
- 
-Требующийся софт:  
- 
-Первое, что нам нужно - это архиватор. Я не знаю почему, но большинство "великих" (может и без кавычек) программеров советуют WinZip-ы ему подобные, ИМХО - WinRar удобнее.  
- 
-Второе - это прога для просмотра содержимого ботовских файлов. Держитесь покрепче, упритесь вочто-нибудь, что не будет двигаться, если Вас начнёт колбасить... и так...Блокнот!!! Да-да, именно Блокнот и ему подобные простенькие проги нампомогут в нашем нелёгком труде.  
- 
-Третье - пиво (кофе) и рыба (конфеты, пончики, чипсы).  
- 
-Приступим.  
- 
-Сначала намнадо достать макет для наших будущих ботов. Для этого заходим в корневуюдиректорию Квейка, затем заходим в (обычно нужную только для добавления новых карт и моделей) директорию baseq3. После того как Вы зайдёте взаветный dir у Вас, возможно, разбегутся глаза от обилия файлов в оном, ведь вы уже давно выучили такую интересную команду как writeconfig, а сохранять свой конфиг под одним и тем же именем - неинтересно. И так, во всей этой куче мусора ищем файл pack0.pk3. Нашли? ОК, тогда открывайте его. Как? Дабл клик на него и в появившемся списке программ выбираем WinRar (WinZip, ZipMagic etc.), потом помечаем пункт "Всегда использоватьпрограмму для файлов этого типа" и жмём ОК. Как, не верите? Если хотите - я отвечу, но такие непонятные нам простым смертным файлы с расширением*.pk3 - это обычные архивы. Далее в открывшемся окне rar"а находимдиректорию botfiles и разархивируем её (так удобнее). Всё теперь можноделать своего бота!  
- 
-Начинаем делать бота.  
- 
-Заходим в разархивированную директорию botfiles, далее заходим во вложенную директорию bots, перед Вами открывается странная картина: куча файлов сдавно выученными именами горячо любимых ботов. То, что Вы увидите, войдя в директорию bots - это мозги ботов, если угодно AI. Каждый файл отвечает заотдельную деталь бота:  
- 
-имя-бота_c.c - этот файл отвечает за общееповедение бота (точность при стрельбе, общительность,etc.) имя-бота_i.c - тут создатели игрушки решили сказать, ботунасколько он будет рваться заполучить предметы квейковского обихода(оружие, патроны, меги, армор) имя-бота_t.c - здесь выложены сообщения,которые бот вам будет посылать (чат) имя-бота_w.c - а в этом файлеописаны предпочтения бота в оружии  
- 
-С файлами разобрались, теперь приступим собственно к созданию бота. Выбираем вашего любимого бота (в моём случае это Phobos) и выкидываем его файлы ( _c.c _i.c _t.c и _w.c)куда-нибудь в отдельную директорию. Переименовываем файлы, заменяя имя исходного бота на имя своего бота (в моём случае было phobos_c.c, а стало spamer_c.c, вообще-то имя можно давать любое и как можно короче, например 1_с.с - на жизнь бота это не повлияет :)).  
- 
-Вот мы и переименовали файлы, переходим к следующему этапу.  
- 
-Открываем файл с окончанием_c.c через Блокнот. Находим строку:  
- 
-CHARACTERISTIC_NAME "Имя-бота" и вместо "Имя-бота" пишем имя своего бота,например CHARACTERISTIC_NAME "Spamer"  
- 
-Далее делаем нашего бота супер метким для этого все напротив надписей от CHARACTERISTIC_AIM_ACCURACY_MACHINEGUN до CHARACTERISTIC_AIM_SKILL_BFG10K цифры, которые стоят напротив них заменяем на 1 (обычно эти строкиприсутствуют только в разделе, который начинается со слов "skill 5" - найтмар, но лучше их запихать и во все остальные разделы. Слова "skill 1" "skill 3" "skill 5" обозначают сложность бота от i can win до nightmare).  
- 
-Вы можете поэкспериментировать с другими строками, так, например для CHARACTERISTIC_CHAT_CPM можно установить равным 0, чтобы ваш бот молчал, а можно поставить штук пятнадцать девяток, чтобы он стоял и разговаривал с Вами (этакая чат-прога :)).  
- 
-Ах, да! Ещё самое главное:  
- 
-CHARACTERISTIC_WEAPONWEIGHTS поставьте "bots/имя-вашего-бота_w.c" CHARACTERISTIC_CHAT_FILE поставьте "bots/имя-вашего-бота_t.c" CHARACTERISTIC_ITEMWEIGHTS поставьте "bots/имя-вашего-бота_i.c"  
- 
-Теперь Ваш бот практически готов, осталось только несколько последних штрихов.  
- 
-Заходим в злополучный архив pak0.pk3, заходим в botfiles -> bots -> нажимаем Добавить(Add) -> находим файлы нашего бота и помечаем их -> жмём Добавить вархив (Add to archive) -> ждём окончания добавления.  
- 
-Теперь надо задать для Квейка координаты новорожденного бота. Выходим в корневойкаталог архива -> заходим в Scripts -> открываем bots.txt (можно нераспаковывать) -> идём в конец документа и добавляем такиестроки:  
- 
-  { 
-  name Имя-бота 
-  funname Имя-бота-как-оно-будет-писаться-в-игре-с-учётом-регистра (например^1S^3pame^1R) 
-  model Модель-бота (например klesk/red, пути к моделямможно посмотреть в том же паке Models -> Players) 
-  aifilebots/имя-файла-после-переименования_c.c 
-  } 
- 
-Вот и всё - ваш бот готов. Теперь заходим в игру запускаем карту жмём тильду (~)пишем:  
- 
-  addbot Имя-бота 5  
- 
-и наслаждаемся. 
- 
-Прикольный совет:  
- 
-Поставьте в имя-бота_w.c предпочтение всех оружий на 0,кроме пулемёта, а в имя-бота_c.c точность пулемёта 1. Затем создайте какую- нибудь открытую, полностью просматривающуюся зону и умирайте...  
- 
-Траблшотинг:  
- 
-Если пишет какие-тосообщения об ошибке, значит, проверьте, правильно ли вы прописывали именафайлов, а если вам пишет что-то типа "chat daemia_t.c" или что-то вродеэтого, то зайдите в файл _c.c, в CHARACTERISTIC_CHAT_NAME"Имя-исходного-бота" измените Имя-исходного-бота на Имя-своего-бота, затем откройте файл _t.c и chat "Имя-исходного-бота" измените на chat "Имя-Вашего-бота" - всё, теперь должно работать.  
- 
-Весёлой игры! СВами был DominuS АКА Bipa Moda.  
- 
-Дополнено Max Snake: Скачать архив со описаниеми от Mr Elusive (один из создателей Quake 3) этих и других скриптов. [[http://q3mapping.on.ufanet.ru/prim/49/Q3ABotEdit.rar|Q3ABotEdit.rar(ENG)]].  
- 
- 
- 
- 
-==== Статья о ботах и их настройках ==== 
-  
-Автор: radiator Дата: 03.04.2004  
- 
-В Quake3:Arena - игре, заточенной под мультиплеер, боты - это единственные компьютерные соперники.  
- 
-Главный их создатель "Mr. Elusive" - это автор известных в свое время ботов по кличке "Gladiators" для Quake 2. Не скажу, что очень высоко оцениваю их умственные способности, например по сравнению с теми, которые сделал Стив Харди для Unreal Tournament, но как говорится, что дали, то и ешь. Или вроде того.  
- 
-Согласно сюжету самой игры - эти боты ни кто иные, как вытянутые Вадригарами (неизвестная раса, которая любит смотреть бои гладиаторов) создания из разных миров, времен и т.д. для участия в созданной Вадригарами Арене  
- 
-Воевать с ботами можно и в обычный "Deathmatch" и в "Teamplay" (команда на команду, кто кого больше убьет) и в "Capture the Flag" (две команды воруют друг у друга флаги).  
- 
-У каждого бота есть имя, скил (от 1 до 5 уровня сложности). На самом деле боты умственными способностями не блещут, а с повышением скила – увеличивается только меткость. Боту также можно задать ник, под которым он будет бегать; если его не задать, то бот будет бегать под основным именем. Кроме этого можно задать время задержки – через сколько миллисекунд бот войдет в игру.  
- 
-Прописывать бота нужно в консоли или выбрать в меню. Например:  
- 
-  ADDBOT имя [ скилл: 1-5 ] [ команда: Red/Blue ] [ задержка: мс ] [ ник ]  
- 
-Вводить в игру можно хоть десяток ботов, правда интереснее от этого не будет. На дуэльных картах играют обычно с одним ботом, на других вполне достаточно трех-четырех ботов.  
- 
-Для настроек ботов в игре предназначен целый ряд переменных, чтобы посмотреть его можно в консоли набрать "bot" и нажать TAB, тогда вам выведут список на страницу, но большая часть из них для нас - бесполезна. Главные переменные или команды, которые могут пригодиться - это уже указанная ADDBOT, а также:  
- 
-**bot_rocketjump** - Разрешать ли ботам использовать Rocket Launcher для рокетджампов. "1" - разрешить, "0" - запретить. Имейте в виду, что рокетджампиться будут только те боты, у которых в списке характеристик включена "weapon jumps" 
- 
-**bot_usehook** - В CTF разрешает или запрещает ботам использоваться крюк. ("1" - разрешить, "0" - запретить).  
- 
-**bot_nochat** - Чтобы запретить ботам писать сообщения, включите "bot_nochat 1" 
- 
-**bot_fastchat** - Обычно в игре боты, которые "пишут" сообщение - останавливаются, превращаясь в легкие фраги. Если включить эту опцию ("bot_fastchat 1"), то боты будут выдавать фразы, не останавливаясь и не тратя на это лишнего времени.  
- 
-**bot_thinktime** - Переменная отвечает за мыслительную деятельность ботов. Иначе говоря, ее значение - это сколько дается времени на размышления боту. По умолчанию - 100. Можно сделать поменьше, тогда боты будут играть похуже.  
- 
-**bot_enable** - Глобальная переменная - разрешить ("1") или запретить ("0") ботов.  
- 
-**kick** [имя/ник] - Это команда для исключения указанного бота из игры.  
- 
-Но интеллект стандартных ботов недостаточен для тренировки скилла, поэтому можно использовать более продвинутых. Например [[http://www.defrag.ru/files_get.php?id=60|Spiterbot]]  
- 
  
q3/управление_ботами.txt · Последнее изменение: 06.07.2020 03:50 (внешнее изменение)