![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
ALexusB |
![]()
Сообщение
#1
|
Разработчик ВМЛ-КВЛ ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Admin Сообщений: 16,554 Регистрация: 2-November 04 Пользователь №: 3 ![]() |
Нужна ваша помошь!
Некоторые знают, а кто-то догадывается, но я не забросил поприще пиратски игр с концами ![]() Дело движется, медлено и как обычно ночами, но идет - кубики уже играбельны. Начитался статей, много думал - понял, что к моменту начала кодинга ИИ кораблей нужно иметь базу знаний. Помогите ее сделать! Знания - это калька поведения нас - игроков в бою. Берем за основу бой в КВЛ-ГПК и текстом записываем свои действия. Начну с себя, как пример, без деталей. В бою у меня сразу идет 1. анализ состояния: * сил противника (примерно равны, больше, меньше, сильно больше, сильно меньше). * направления ветра 2. мои цели * слинять из боя * всех потопить * всех абордировать * часть абордировать и часть потопить * часть абордировать и слинять из боя Подзадачи: * продержаться какое-то время (если это задача такая по квесту) * защитить купца - все это сводится в списку выше 3. Корректировка стратегии со временем, то есть повтор 1. и смена на 2. 4. Шаги для достижения цели 2. * перезарядка * выстрел * маневрирование * поднять-опустить паруса * абордаж * выкинуть товар что еще обычно бывает? И давайте лезть в детали - на что смотрим, когда оцениваем больше-меньше? Паруса, корпус, команда, типы кораблей? Попробуйте на примере конкретного боя описать свои действия - мне нужна статистика, я сам сведу по полочкам. Пойдет рассказ "как я брал золотой флот" и типа того. Но в описании решений и критериев их оценки, а не литературных изысков про "отлетающие доски после бортового залпа". |
![]() ![]() |
ALexusB |
![]()
Сообщение
#2
|
Разработчик ВМЛ-КВЛ ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Admin Сообщений: 16,554 Регистрация: 2-November 04 Пользователь №: 3 ![]() |
Прочел книжецу
C / С++ : C++ мастер-класс. 85 нетривиальных проектов, решений и задач - М. В. Мозговой Пришел к некому концепту реализации ИИ для мор боя, как кальки с действий человека. Чтоб не в коде зашивать, а было во внешних файлах и можно было один ИИ на другой натравить, потестить. Ответа по ИИ в книге нет, есть разные идеи и их решения, которые наводят на другие идеи ![]() Рекомендую. |
N.tony |
![]()
Сообщение
#3
|
пират ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: форумчанин Сообщений: 1,060 Регистрация: 9-July 08 Пользователь №: 17,197 ![]() |
Пришел к некому концепту реализации ИИ для мор боя, как кальки с действий человека. Чтоб не в коде зашивать, а было во внешних файлах и можно было один ИИ на другой натравить, потестить. Обычно в таком случае ИИ сильно неловкий получается. Я тоже думал делать через "интерфейс", чтобы доступ к игровому персонажу был реализован только через стандартные операции ввода (типа, все возможные клавиши которые нажимает геймер). Но так как делать самообучающийся ИИ сложно, будет сильно муторно подбирать контроллер для него через одну лишь допустимую информацию о состоянии поля боя. Проще будет, если количество разных вводов сильно ограничено (а ходы дискретны) - делать "натуральный" контроллер для всяких игр типа шахмат куда проще. |
ALexusB |
![]()
Сообщение
#4
|
Разработчик ВМЛ-КВЛ ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Admin Сообщений: 16,554 Регистрация: 2-November 04 Пользователь №: 3 ![]() |
Обычно в таком случае ИИ сильно неловкий получается. Я тоже думал делать через "интерфейс", чтобы доступ к игровому персонажу был реализован только через стандартные операции ввода (типа, все возможные клавиши которые нажимает геймер). Но так как делать самообучающийся ИИ сложно, будет сильно муторно подбирать контроллер для него через одну лишь допустимую информацию о состоянии поля боя. Проще будет, если количество разных вводов сильно ограничено (а ходы дискретны) - делать "натуральный" контроллер для всяких игр типа шахмат куда проще. Я отказался от самообучения - мне проще самому идти не по пути ИИ, а по ЭС (экспертным системам) - обучая (дописывая) по ходу тестов и игры самому. Со временем, имея базу боев в виде логов, можно натравить на них обработку и эти данные превратить в знания. Но это же другая утилита, она не работает во время боя, а потом (отдельно на локале, тк долгая). Сам же НПС в бою будет именно "жать" доступные игроку кнопки команд. Иначе это какие-то сверх читы. Другое дело, чем он будет мотивироваться и куда смотреть (какие статы видеть без подзорной трубы, как прикидывать в своем комьютерном уме траектории движения и тп) - тут тупизна ИИ может компенсироваться его сверхосведомленностью. Скилы капитана - это понижение возможностей ИИ. То есть изначально он должен быть оч хитрым, а скилами тупеть. Многие не задумываются, что сложность игры задается понижением возможностей в упрощении, а не наоборот. То есть все игры имеют максимум возможностей, которые потом снижаются. Исключение составляют количественные сложности - это когда урон ГГ снижается, а получаемый начинает зашкаливать - это уже простой трюк "невозможных" уровней. Логики ИИ тут нет. |
![]() ![]() |
Текстовая версия | Сейчас: 30th April 2025 - 07:53 |