PDA

Просмотр полной версии : [FS] AI_BOTS | Искусственный интеллект



Long-
22.01.2017, 21:16
Всем Привет
То что я выложил лишь основа!


AI_BOTS - искусственный интеллект ботов, больше подойдет для DayZ сервера.
Создание ботов прямо из игры(Введите: /createbots [имя бота] [режим бота] [урон бота] [скорость бота]).
2 режима бота, зомби - атакуют вас, мирный - просто ходит, не атакует.
Точный расчет пути бота, не подпрыгивают, обходят все объекты которые перед ними, ходят в точность как игрок.
Рассказывать больше не буду, посмотрите сами, исходный код - так-же прилагается, разработка больше не продолжается.


Использование:


Mysql r4x
FCNPC
PathFinder
0.3.7 SA-MP
DC_CMD


Более подробно:

Весь исходный код находится в FS(FilterScript), все понятно, все на английском.
Для дальнейших работ с ним, лучше вшить в мод.


Как настроить:



Скачиваете данный FS - отсюда. (https://yadi.sk/d/6MXOEKb_375czo)
Скачиваете файл для подключения mysql - отсюда (https://yadi.sk/i/9bf4htpn375dDR)

AI_BOTS.pwn кидаете в папку FilterScript , далее с помощью программы Pawno открываете этот файл, и компилируете(F6).
Далее скачанный файл mysql_connect_ai, кидаете в корневую папку с сервером, открываете его, и прописываете свои данные mysql, сохраняете.
Так-же не забудьте FS вписать в server.cfg
Запускаете мод, в консоли должна быть надпись "Ботов загружено: [n]", если эта надпись есть, значит все прошло удачно, если нет, пожалуйста не стоит брать этот FS.



Так-же не забудьте создать таблицу в базе данных.


https://pp.vk.me/c836534/v836534635/201d1/y3HzGfI4xrY.jpg





• MySQL R40+: Клик (https://github.com/pBlueG/SA-MP-MySQL/releases)
• Свежая версия FCNPC, совместимая с PathFinder: Клик (https://github.com/ziggi/FCNPC/releases)
• PathFinder: Клик (https://bitbucket.org/Pamdex/pathfinder/downloads)
| Для работы PathFinder нужен плагин MapAndreas: Клик (http://forum.sa-mp.com/showthread.php?t=275492)
• SA-MP 0.3.7: Клик (http://sa-mp.com)
• DC_CMD: Клик (https://github.com/Daniel-Cortez/DC_CMD)


Кому нужна готовая БД - нажимайте (http://rgho.st/7VtS8m8Gw)


Обновление 0.2.
Данное обновление делал неделю назад, выкладывал на другой портал, больше не хочу иметь в тем порталом ни обычных ни коммерческих целей....

1.Добавил тестовую систему для мирных ботов - такси, возможность вызвать такси из любой точки города, которая к вам приедет и довезет в любую точку города.
Она не доработана, заюзал бота не из БД , а просто нативными в моде, если хотите применить их в базу, особого труда не составит.

2.Добавлен новый вид бота - суицидник, бежит на вас, если подбегает близко взрывается, тем самым умирает сам и вас тащит за собой.

3.Теперь когда зомби подбегает к вам, он не просто тратит вам здоровье, а бьет вас кулаками , тем самым тратит хп.
4.Добавил превью текст о себе при запуске данного скрипта, просьба его не удалять, если имеете уважение к скриптеру.
5.Увеличил немного скорость таймера, для более быстрой реакции зомби.


Архив перезалит.


Удачного использования, дальнейшая его разработка в ваших руках!
Дальнейшей разработки от меня не будет!
Полностью готовый сервер к использованию(#new.pwn #test #проверка) - скачать. (https://yadi.sk/d/G9dfafYr377Bt6)
Так-же отсюда можете тоже взять все инклуды/плагины.


Огромное спасибо DeimoS and ZiGGi за помощь.

Daniel_Cortez
22.01.2017, 21:38
Так-же не забудьте создать таблицу в базе данных.


https://pp.vk.me/c836534/v836534635/201d1/y3HzGfI4xrY.jpg

Разве нельзя сделать так, чтобы скрипт сам создавал таблицу в случае её отсутствия?

Long-
22.01.2017, 21:40
Разве нельзя сделать так, чтобы скрипт сам создавал таблицу в случае её отсутствия?

Не, я не стал этого делать(не умею), но я приложил готовый файл с базой данных, который заметен невооруженным глазом.
Наверное вы так-же хотите видеть больше информации, если нужно, могу добавить.

DeimoS
22.01.2017, 22:11
Не, я не стал этого делать(не умею), но я приложил готовый файл с базой данных, который заметен невооруженным глазом.
Наверное вы так-же хотите видеть больше информации, если нужно, могу добавить.


SHOW TABLES LIKE 'table_name'
Вернуло 0 строк (cache_num_rows) - таблицы нет.
Запрос на создание БД можешь взять прямиком из phpMyAdmin, заюзав импорт и открыв получившийся файл (запрос начинается на "CREATE TABLE")

Seregamil
23.01.2017, 12:45
Это далеко не искусственный интеллект. Даже рядом с ним не стоит.

Long-
23.01.2017, 13:22
Это далеко не искусственный интеллект. Даже рядом с ним не стоит.

Верно, это его основа, сам бегает , прыгаем, ходит произвольно, это уже как интеллект, впрочем то это самый альтернативный вариант на доработку, большего я не видел.

А что ты считаешь под названием ИИ?
Если тебе так принципиально название темы, то измени на недоинтелект, или какие у вас там у профессионалов мысли в голове?

Seregamil
23.01.2017, 16:10
Верно, это его основа, сам бегает , прыгаем, ходит произвольно, это уже как интеллект, впрочем то это самый альтернативный вариант на доработку, большего я не видел.

А что ты считаешь под названием ИИ?
Если тебе так принципиально название темы, то измени на недоинтелект, или какие у вас там у профессионалов мысли в голове?
Я думаю,что интеллект способен обдумывать, выполнять логичные действия и осознавать их.
А тут простой заданный алгоритм.

Geebrox
23.01.2017, 16:17
Я думаю,что интеллект способен обдумывать, выполнять логичные действия и осознавать их.

Разве тут бот (какбэ) не обдумывает как обойти препятствие перед ним? Не осознает как игрок вошел в его зону стрима и не бежит к нему, чтобы убить его? Он же написал, что это основа. Ты ждал, что-то сверхъестественное? (увы это самп)


А тут простой заданный алгоритм.

Ну а как ты думаешь создаются ИИ? Через сложные алгоритмы, не?

Seregamil
23.01.2017, 16:24
Разве тут бот (какбэ) не обдумывает как обойти препятствие перед ним? Не осознает как игрок вошел в его зону стрима и не бежит к нему, чтобы убить его? Он же написал, что это основа. Ты ждал, что-то сверхъестественное? (увы это самп)



Ну а как ты думаешь создаются ИИ? Через сложные алгоритмы, не?
Я не ждал ничего сверхъестественного. Но и писать о ИИ - глупо. Особенно в сампе.
ИИ основывается на нейросетевом обучении.

Geebrox
23.01.2017, 16:37
Но и писать о ИИ - глупо. Особенно в сампе.
А почему же нет? Всего можно добиться, нужно всего лишь захотеть.


ИИ основывается на нейросетевом обучении.

А если глубже, нейросетевое обучение - алгоритм обучение ИИ через входящие и исходящие информации (ну конечно тут такого не увидишь).

Seregamil
23.01.2017, 18:20
А почему же нет? Всего можно добиться, нужно всего лишь захотеть.



А если глубже, нейросетевое обучение - алгоритм обучение ИИ через входящие и исходящие информации (ну конечно тут такого не увидишь).
Добейся многопоточности в сампе.

DeimoS
23.01.2017, 20:53
ИИ основывается на нейросетевом обучении.

Я просто оставлю это здесь (https://ru.wikipedia.org/wiki/%D0%98%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D1%8B%D0%B9_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82#.D0.9F.D0.BE.D0.B4.D1.85.D0.BE.D0.B4.D1.8B_.D0.BA_.D0.BF.D0.BE.D0.BD.D0.B8.D0.BC.D0.B0.D0.BD.D0.B8.D1.8E_.D0.BF.D1.80.D0.BE.D0.B1.D0.BB.D0.B5.D0.BC.D1.8B)

Long-
23.01.2017, 22:26
Я думаю,что интеллект способен обдумывать, выполнять логичные действия и осознавать их.
А тут простой заданный алгоритм.

Он и так это делает, как тебе описали пользователи выше, я так-же не понимаю, что ты хочешь добиться от меня?
Удаление темы, переименовать тему, или что?
Если одно из перечисленных действий, то объясни причины.

Seregamil
25.01.2017, 15:00
Он и так это делает, как тебе описали пользователи выше, я так-же не понимаю, что ты хочешь добиться от меня?
Удаление темы, переименовать тему, или что?
Если одно из перечисленных действий, то объясни причины.

Я просто сказал, что это не ИИ.

DeimoS
25.01.2017, 22:49
Я просто сказал, что это не ИИ.

Только вот это ИИ. "Глупый" и не имеющий возможности самообучения, но ИИ.

iWors
30.01.2017, 01:12
Не, я не стал этого делать(не умею), но я приложил готовый файл с базой данных, который заметен невооруженным глазом.
Наверное вы так-же хотите видеть больше информации, если нужно, могу добавить.


CREATE TABLE IF NOT EXISTS `название таблицы` (\
`...` int(11) NOT NULL

Long-
30.01.2017, 11:36
CREATE TABLE IF NOT EXISTS `название таблицы` (\
`...` int(11) NOT NULL

Спасибо за подсказку, но твой вариант плох некоторыми причинами, лучше сделать по другому, при запуске сервера проверить запросом SHOW TABLES LIKE есть ли данная таблица или нет, и вызвать определенный коллбэк где так-же можно прилепить и функционал к нему, а в твоем варианте мы можем только создать таблицу и превратить коллбэк OnGameModeInit в кашу.

Я так-же научился и создавать саму "базу", возможно вскоре изменю и выложу, и в скрипт .pwn заходить вообще не нужно будет, все необходимое будет уже сделано.

Mr.Dark
30.01.2017, 18:13
Ой блин ты тоже тут из себя не строй это samp детка ! А не корпорация Амбрела что бы придумывать искусственный интеллект (Красная королева). :beee: это для DeimoS'a

DeimoS
30.01.2017, 18:28
Ой блин ты тоже тут из себя не строй это samp детка ! А не корпорация Амбрела что бы придумывать искусственный интеллект (Красная королева). :beee: это для DeimoS'a

Что? Можно по-русски теперь?

А по поводу ИИ - я вам уже кинул ссылку на статью, где всё чётко описано. А заодно и с этой (https://ru.wikipedia.org/wiki/%D0%98%D0%B3%D1%80%D0%BE%D0%B2%D0%BE%D0%B9_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D1%8B%D0%B9_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82) статьёй ознакомьтесь, чтоб окончательно все сомнения отбить.

Long-
30.01.2017, 18:31
Что? Можно по-русски теперь?

А по поводу ИИ - я вам уже кинул ссылку на статью, где всё чётко описано. А заодно и с этой (https://ru.wikipedia.org/wiki/%D0%98%D0%B3%D1%80%D0%BE%D0%B2%D0%BE%D0%B9_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D1%8B%D0%B9_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82) статьёй ознакомьтесь, чтоб окончательно все сомнения отбить.

Это было все адресовано тебе? Или мне?
Mr.Dark запятые плз расставь , а так-же понятнее (SWAT_O_PLUS наверное это )Xd

Mr.Dark
31.01.2017, 14:11
Это было все адресовано тебе? Или мне?
Mr.Dark запятые плз расставь , а так-же понятнее (SWAT_O_PLUS наверное это )Xd

Ты что слепой я тебе написал для кого это !

- - - Добавлено - - -


Что? Можно по-русски теперь?

А по поводу ИИ - я вам уже кинул ссылку на статью, где всё чётко описано. А заодно и с этой (https://ru.wikipedia.org/wiki/%D0%98%D0%B3%D1%80%D0%BE%D0%B2%D0%BE%D0%B9_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D1%8B%D0%B9_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82) статьёй ознакомьтесь, чтоб окончательно все сомнения отбить.

Да спорить с тобой смысла нет ты же у нас ГЕНИЙ а все остальные тупые . Я не спорю что это ИИ ну и ты бы мог промолчать зная способности sampa для игры gta на движке GTA S это нормально!

ziggi
31.01.2017, 15:27
зная способности sampa для игры gta на движке GTA S это нормально!

Ничто не мешает создать сейчас в сампе ботов умнее, чем в любой современной игре.

Mr.Dark
31.01.2017, 17:55
Ничто не мешает создать сейчас в сампе ботов умнее, чем в любой современной игре.

Сможет бот sampa освободить заложников если соперники будут живые игроки ? или например поиск преступников и их задержания да не один бод из сампа не сможет да пустим если чел забежит в интерьер то ботд его просто напроста потеряет даже если сделать что бы он тп за ним то все равно игрок сможет за лесть на стену допустим а бот будет упираться в нее а игрок его просто напросто пристрелит и все ...

[ForD]
31.01.2017, 18:27
Сможет бот sampa освободить заложников если соперники будут живые игроки ? или например поиск преступников и их задержания да не один бод из сампа не сможет да пустим если чел забежит в интерьер то ботд его просто напроста потеряет даже если сделать что бы он тп за ним то все равно игрок сможет за лесть на стену допустим а бот будет упираться в нее а игрок его просто напросто пристрелит и все ...

Это реализуемо, если хотите и дальше утверждать обратное, то предоставляйте факты о невозможности сделать что либо.

ziggi
31.01.2017, 18:28
Сможет бот sampa освободить заложников если соперники будут живые игроки ? или например поиск преступников и их задержания да не один бод из сампа не сможет да пустим если чел забежит в интерьер то ботд его просто напроста потеряет даже если сделать что бы он тп за ним то все равно игрок сможет за лесть на стену допустим а бот будет упираться в нее а игрок его просто напросто пристрелит и все ...

Всё, что ты перечислил - реально реализовать в SA-MP уже сегодня. Именно это и можно будет назвать их игровым AI.

Geebrox
01.02.2017, 11:56
Сможет бот sampa освободить заложников если соперники будут живые игроки ? или например поиск преступников и их задержания да не один бод из сампа не сможет да пустим если чел забежит в интерьер то ботд его просто напроста потеряет даже если сделать что бы он тп за ним то все равно игрок сможет за лесть на стену допустим а бот будет упираться в нее а игрок его просто напросто пристрелит и все ...

Так все таки не понял, речь идет о "бот", "ботд" или "бод"? И где запятые? Да пустим, у меня глаза кровоточат :dash2:

Если ты не можешь это реализовать, то это не значит, что это вообще не реализуемая идея. Не отвечай за всех. Все возможно сделать, если руки растут из правильного места!

DeimoS
01.02.2017, 18:38
Да спорить с тобой смысла нет ты же у нас ГЕНИЙ а все остальные тупые.

Причём тут я? Есть статья на википедии, где всё чётко сформулировано. Есть куча примеров, типа CS и тому подобному, где всю логику работы ботов называют Искусственным Интеллектом.


Я не спорю что это ИИ ну и ты бы мог промолчать зная способности sampa для игры gta на движке GTA S это нормально!

Причём тут вообще возможности SA-MP? -_-

[ForD]
01.02.2017, 21:45
Причём тут я? Есть статья на википедии, где всё чётко сформулировано. Есть куча примеров, типа CS и тому подобному, где всю логику работы ботов называют Искусственным Интеллектом.



Причём тут вообще возможности SA-MP? -_-

Да он сам не знает че несет, тут скорее всего возможность выплескивания злобы на тебя а тема просто под руку попала)
Опять какого-то школьника своими "ГЕНИАЛЬНЫМИ" кодами в интернетах обидел? =D

Long-
01.02.2017, 22:27
;82047']Да он сам не знает че несет, тут скорее всего возможность выплескивания злобы на тебя а тема просто под руку попала)
Опять какого-то школьника своими "ГЕНИАЛЬНЫМИ" кодами в интернетах обидел? =D

Именно, на г-и срач был с ним..)
Сюда он тему выложить не осмелился.
Ну да ладно, давайте не будем разводить срач в теме.

Fallen A.
01.02.2017, 23:13
Оо, очень годно, очень. Хоть я и не старался делать ботов умнее, чем простая перестрелка, скажу, что автор молодец.

Long-
02.02.2017, 01:23
Оо, очень годно, очень. Хоть я и не старался делать ботов умнее, чем простая перестрелка, скажу, что автор молодец.

Таки автор я), если ты имел ввиду что не я автор.

Fallen A.
02.02.2017, 11:23
Таки автор я), если ты имел ввиду что не я автор.

Таки я о том, что ты, он же автор, молодец))

Fallen A.
19.05.2017, 22:03
При создании бота автор забыл добавить строку:

AI_INFO[LOADBOTS][mode_AI] = mode_bot;

Long-
21.05.2017, 20:13
При создании бота автор забыл добавить строку:

AI_INFO[LOADBOTS][mode_AI] = mode_bot;

Спасибо, дополню, думаю начать усовершенствовать скрипт, но пока нет свободного времени.

Fallen A.
21.05.2017, 23:04
Спасибо, дополню, думаю начать усовершенствовать скрипт, но пока нет свободного времени.

Покопал скрипт - нужно доводить до ума, а так, начинание хорошее.
А таксист не поедет в любую точку, а в ту, что поедет, то только с рывками. В примере скрипта есть ошибки логики.

Long-
25.05.2017, 13:33
Покопал скрипт - нужно доводить до ума, а так, начинание хорошее.
А таксист не поедет в любую точку, а в ту, что поедет, то только с рывками. В примере скрипта есть ошибки логики.

На счет таксистов? Да, она тестовая, я ее в след.версии вовсе удалю, то что там сейчас, вовсе только тест(про таксистов) и крайне неудачный, ибо там задержки большие, и едет по бардюрам и т.п, но есть одна идея у меня.