Показать сообщение отдельно
Старый 23.08.2009, 20:50   #9
Новичок
 
Регистрация: 23.08.2009
Сообщений: 1
Репутация: 0 [+/-]
Хорошая статья. Порадовала
Если уже про AI говорим то лучше представить себе его вид действия:
=================
3D - Шутер
Блоки:
=============
Блок N1
1. Полная проверка текущего состояния (Здоровье). Указать число равномерное полученным выводам 1,2,3. В случаи если здоровья 100% не выполнять пункт 2, а перйти у пункту 3
2. Взять из пункта /1 указательное число. Сравнить число. Выполнить действие 1 - продолжить действие дальше
3. Полная проверка на все преимущества, недостатки
==============
Блок N2 = Сбор сведений о местности в зоне видимости.
1. Осмотр всех сторон
2. Определение проходимых объектов местности. (Если проходимый то число 1, Если не проходимый 2)
3. Размер видимой местности.
4. Логический вывод действий, а также расписание действия бота по вышеуказанным данным.
=================
Блок N3
Вхождение в блок (1,2,3)
Вхождение в блок с значением 1 - отойти в другую зону ориентировавшись на блок N5
1. Нахождение предмета на карте
2. Обработка предмета (Узнает что за предмет)
3. Проверка на доступность предмета по местность.Выполнить действие N2 <*ЧИСЛО*>
4. Обработка <*ЧИСЛО*>, если 1 выполнить действие /5, если 2 выполнить действия /7
5. Вариант прохождения по местности N2, а также выполнить действие N4, а также с блока N4 пункта 2 получить число
6. Проверка пункта /5 по маске: 1 местность опасно, 2 местность не опасно.Записать полученный вывод в ячейку пункта /7
7. Ячейка 1
8. Обработка всех действий. Взять из ячейки 1 пункта 7 данные.Вывод число 1,2,3 в зависимости от полученного вывода(1 - местность не доступна, 2 - местность доступна, 3 - местность доступна, но содержит опасность, согласно ячейки /7)
9. Проверка обработки пункта /8. Если 1 - перейти в пункт /14 без продолжение, 2 - выполнить пункт 10, если 3 - перейти до пункта 11
10. Выполнить действие
11. Выполнить действие блока N4 только пункта 3го.
12. Анализировать действие 11 пункта с выводом числа 1,2
13. Выполнить действие в случаи если с пункта /12 число 2, если число 1 перейти до 14 пункта
14. Завершение


============


==========
Блок N4
1. Что подразумевается под опасными действиями? Под опасными действия подразумевается возможный урон или гибель бота
2. Проверка на опасность (Если опасность есть, то число 1. Если нет - то число 2) В любом случаи выполнять пункт/ 3 - не надо данной командой
3. Опасность во всех пониманиях
==========

==================
Блок N5

1. Что означает игрок? Враждебный игровой объект
2. Выполнять одновременно действия /3 и /4
3. Текущие расположение по координатом игрока
4. Текущие состояние игрока
5. Анализировать действия по блокам N1 N2 и N3. Если "командование"(управление) (Стоп, прекратить, остановить, отойти) не возьмет на себя какой либо из блоков, то выполнить дейстие /6(В смысле, что показатели будут такими что нет прерывание в других блоках в духе "стоп" или "все хватит отступай")
6. Атаковать
===================




=============
Блок N6
1. Осмотр оружия. Записать всю информацию о оружии
2. Выполнить действие N4
3. Сравнить N4 пункт 2
4. Сравнить полученный результат пункта /3 и перейти в пункт 3 блока N4 и сравнить оба показателя в пункте /5 текущего блока
5. Результат с выводом числа 1,2
6. Выполнить действие с просмотром числа из пункта /5, 1 - выполнить действие блока N3 с вхождением 1, 2 - продолжать
============

Действие игры:
Бот появился на карте

Действия бота:
1. Выполнить действие N1
2. Выполнить действие N2
3. Проверять все блоки, кроме N1 и N2
4. Проверять N1, N2

Алгоритм написаный мною более менее корректный и способен создать вид "умного AI". Но не буду говорить то что нужно все легко и очень просто. Во первых команды в духе: "Анализировать местность" не будет легкой. По тому что как вообще понять значения "Анализировать местность"? Плюс, системные требования будут нагруженными. Хорошо если игра похожа на Unreal Tornament 1 (1999) и там играет чисто один бот и один игрок на карту. А если таких ботов будет 2 и более? Нагрузка возрастер в разы не говоря уже о том что кроме AI есть еще графика и прочий контент
Думаю что через лет 5 игры возрастут в плане AI, хотя еще с 1999 года различия не во многих играх виднеется. Это не графика которую можно разглядеть
multijet вне форума