|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
27.12.2011, 22:27 | #11 | |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Цитата:
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика Последний раз редактировалось Utkin; 27.12.2011 в 22:30. |
|
27.12.2011, 23:21 | #12 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,430
|
нет, мне интересно их поведение.
Каждый бот - это отдельный игрок, и ведёт себя отлично от остальных. Способен на собственное поведение. Убегает, прячется, бегает куда-то, взаимодействует с другими ботами т.е. не прет на пролом к конечной цели. Ичем в игре является бот? Каким обьектом? |
27.12.2011, 23:28 | #13 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
иначе не понял вопрос. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
27.12.2011, 23:49 | #14 | |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Цитата:
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
|
28.12.2011, 00:10 | #15 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,430
|
|
28.12.2011, 06:58 | #16 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Для примитивных игр все выполняется в обычном цикле. Не думаю, что для каждого бота создается отдельный поток. Скорее всего потоки выделяются на основные компоненты - отрисовка графики, те же боты (но одной кучей) и т.д.
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
28.12.2011, 08:38 | #17 |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
К версии 1.6 zBot использовал спортивную стратегию (т. е. глобальные действия похожи на те, что можно видеть в демках профессионалов). Особенно, если вручную прописать в конфигах бота максимальную сложность и правильный набор оружия (4 стрелка с M16/AK47 плюс один снайпер). Но в Source ботов переписали с нуля, они снова стали тупы как пробки. Однако, похоже, их продолжают доводить до ума.
Во всех стрелялках ID Software, как минимум до Quake 3, ВСЯ игра работает в одном главном цикле. Причём цикл - обычный while, а не таймер, поэтому игра всегда грузит проц на 100%. Последний раз редактировалось ds.Dante; 28.12.2011 в 08:41. |
28.12.2011, 09:53 | #18 |
Участник клуба
Регистрация: 13.01.2009
Сообщений: 1,353
|
В КС по-моему у ботов есть маршрут с ключевыми точками и возможно диапазоном для выбора маневра при находжении на маршруте. Ну а остальное от логики зависит. Видит игрока, начинает метаться туда-сюда, чтоб по нему не попали и сам треляет. Не так сложно всё. В WoW AI совсем глупый и заскриптованные босы: как попадаешь в радиус видимости моба, он тебя атакует, уходишь из радиуса - убегает. Интереснее, когда AI решает, когда атаковать, а когда защититься от атаки игрока. Завит от многих показателей: хп бота и игрока, положения в бою, уровня и т.д. : SkyRim, Blade of Darkness и т.д. На мой взгляд очень хороший AI в CoD'е.
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
|
28.12.2011, 10:23 | #19 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
|
28.12.2011, 13:29 | #20 |
Старожил
Регистрация: 19.04.2010
Сообщений: 2,702
|
Что такое бот в CS <=1.6 (в последние версии Я не играл):
- Вся работа с ботами осуществляется библиотекой (dll) аналогичной библиотеке работы с сетевой игрой. При игре с ботами "ботовская" библиотека заменяет библиотеку сетевой игры (CS <=1.4) или они совмещенны (CS >1.4). В случаи игры с ботами создаётся стандартная сетевая игра, но игроков от данного компьютера создаётся больше - игрок + количество ботов. После создания игры отдельный модуль библиотеки работает напрямую с памятью игры и управляет ботами. То есть получается два модуля: + Модуль создания игры с ботами; + Модуль работы с памятью. По поводу реалистичности ботов в CS: - Для начала стоит вспомнить историю. В CS <=1.4 передовыми были PODBot, написанные Коунт Флоидом. Они имели ряд недостатков и ряд достоинств, о которых Я скажу ниже. Изначально Флоид был независимым разработчиком, энтузиастом, весьма талантливым картостроителем и ботописцем. Valve его заметила и наняла для написания ботов к новой версии CS 1.6. Флоид начал работу над zBot. Имея в распоряжении ресурсы Valve, он исправил недочёт с генерацией карты путей для ботов и создал прототип поведения ботов. Потом произошел скандал между Флоидом и руководством Valve - руководство требовало немедленно закончить работу с ботами, а Флоид просил ещё полгода на доработку "реалистичности". В итоге программист уволился и ушел в другую фирму, а Valve выпустила на рынок CS 1.6 с недоделанными zBot. Поэтому zBot весьма тупы и не обладают реалистичностью, а PODBot хотя и устарели, но имеют механизмы реалистичного поведения. В чём различия между zBot и PODBot: - zBot автоматически создаёт карту путей путём анализа каркаса карты. PODBot нормально в автоматическом режиме карту путей создать не может, требуется очень много времени на её ручное написание. - PODBot не умеет кидать гранаты. Для zBot Фроид успел написать код. - PODBot имел три "характера": хардкорщик, скаут, снайпер. Каждый бот имел свои предпочтения в оружии и стиле поведения. zBot имеют один тупой "характер". - PODBot умел обучаться. Бот запоминал места, где его убивали, и оружие, из которого его убивали. В последующих раундах бот использовал, полученные ранее, данные. Эти данные были доступны всем ботам. В результате при многократной игре на одной и той же карте у ботов появлялась карта поведения игрока (-ов) и они начинали командно (!) нападать на игроков используя слабые места (!). В zBot функция обучения отключена. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Форма как в играх | casio23 | Общие вопросы Delphi | 0 | 12.11.2011 16:55 |
боты для мосвара | роман1975 | Софт | 2 | 04.09.2011 20:47 |
Как обращаться к Checkbox, если они вызываются программно??? | 555Ksenia555 | Microsoft Office Excel | 1 | 24.07.2011 15:05 |
События и делегаты в C# как они работают | _PROGRAMM_ | Общие вопросы .NET | 11 | 04.02.2010 06:44 |