Логин:
Пароль:
Настройки
http://lfforever.ru/design/black.css http://lfforever.ru/design/ds_dw.css http://lfforever.ru/design/xmas.css
Присоединяйся к каналу LFF в Discord!
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Фан Форум для LF'айтеров » Игрострой » Модострой LF2 » ИИ программирование (Тема находится в стадии заполнения)
ИИ программирование
11.08.12 20:14 | #1

Репутация: 14
Постов: 691
Итак наконец решил сделать урок по ИИ программированию, который сделал легендарный Сильва.

УСТАНОВКА.

Сперва скачиваем отладочную версию отсюда. Кидаем dll в папку lf2. lf2.exe будет включаться по консоли, на консоли будет видна информация об ошибке и т.п. В папке с игрой создаем новую папку "ai", и создаем в нем файлы с форматом ".as" именем файла будет ID персонажа.

УРОК 1.

Файлы лучше редактировать программой Notepad++. Все скрипты написаны на Angel Script, основной синтаксис C.
Каждый ИИ скрипт должен вмещать в себя, по меньшей мере, одну из данных функций: id() или ego()
Если вы хотите сделать обычный ИИ приемов, или специальные движения с интеллектом, то вам необходимо использовать ego().
Все скрипты должны быть написаны между этими скриптами:
Code
int ego(){
return 0;
}

Сделаем к примеру маленький ИИ для Генри:
Code
int ego(){
       if (self.mp > 300){
        DuJ();
       }
       return 0;
}

Это значит что Генри будет использовать флейту когда его MP больше 300.

Итак разберем все по частям. Условия это главная вещь для ИИ с их помощью можно сделать то что вам нужно, но есть и другие особенности их мы разберем позже.
Code
    if (self.mp > 300){   //Выполнения условия    
        DuJ();                    //Выполнение команды
       }


Также можно соединять сразу несколько условий через "else", примерно так:
Code
if (condition1){  //Ваша условие 1
command1()             //Ваша команда 1
}
else if (condition2){  //Ваша условие 2    
command2()             //Ваша команда 2     
}
else {
command3()   //Ваша команда 3
}

Для ваших условий нужны Операторы, ну или как я их называю Статусы.
*Операторы разберем в следующем уроке.

[ Маленький Фриз говорит: это сообщение было отредактировано!]

---------------------------
Мой Блог!

http://thedeathmask.forum2x2.ru/
11.08.12 20:59 | #2

Репутация: 33
Постов: 305
Quote (EXtraBender)
и создаем в нем файлы ".as" именем файла будет ID персонажа.

и создаем файлы формата ".as"(которые в дальнейшем редактируем с помощью блокнота) с названием, которое соответствует ID нужного нам перса(для тех кто не знает: ID персонажа прописано в "data.txt").
Решил уточнить. Ну и так же жду дальнейших уроков) (хотя они есть и на ЛФЕ...хотя я нихрена и не накодил с этих уроков...)

Наша жизнь — одна бродячая тень;
жалкий актер, который кичится какой-нибудь час на сцене,
а там пропадает без вести; сказка, рассказанная безумцем,
полная звуков и ярости и не имеющая никакого смысла.
Уильям Шекспир

Жизнь — это добрая сказка со счастливым концом.
Другое дело, что я в ней — отрицательный персонаж.
Автор неизвестен
12.08.12 10:03 | #3

Репутация: 14
Постов: 691
Первый пост обновлен

---------------------------
Мой Блог!

http://thedeathmask.forum2x2.ru/
12.08.12 10:10 | #4

Репутация: 66
Постов: 1020
Короче это обычный язык программирования с условиями и т д
Думаю, если ты напишешь сюда все теги, что есть в этом языке или хотя-бы большинство, то я прям ща напишу какой-нибудь норм ai beer

[ Маленький Фриз говорит: это сообщение было отредактировано!]
12.08.12 10:57 | #5

Репутация: 33
Постов: 305
BJIAJL, http://www.lf-empire.de/forum/thread-7946.html -_-(уроки на инглише)
[ Маленький Фриз говорит: это сообщение было отредактировано!]
Наша жизнь — одна бродячая тень;
жалкий актер, который кичится какой-нибудь час на сцене,
а там пропадает без вести; сказка, рассказанная безумцем,
полная звуков и ярости и не имеющая никакого смысла.
Уильям Шекспир

Жизнь — это добрая сказка со счастливым концом.
Другое дело, что я в ней — отрицательный персонаж.
Автор неизвестен
12.08.12 11:23 | #6

Репутация: 66
Постов: 1020
Написал небольшой аи скрипт, включил игру, увидел консоль, потрящую весь вид, удалил дллку.
Если черный экран это цена за аи, то мне такого и даром не надо, давай до свидания)

12.08.12 11:40 | #7

Репутация: 33
Постов: 305
BJIAJL, мдя....Скачать нужно DDrawRelease! DDrawDebug.dll нужен что бы увидеть ошибки в "чуде нерукотворном"! При использовании DDrawRelease.dll не выдает никакой консоли, чувак. den_lol
Наша жизнь — одна бродячая тень;
жалкий актер, который кичится какой-нибудь час на сцене,
а там пропадает без вести; сказка, рассказанная безумцем,
полная звуков и ярости и не имеющая никакого смысла.
Уильям Шекспир

Жизнь — это добрая сказка со счастливым концом.
Другое дело, что я в ней — отрицательный персонаж.
Автор неизвестен
12.08.12 11:47 | #8

Репутация: 66
Постов: 1020
Так с этого нужно было начинать den_lol
12.08.12 13:08 | #9

Репутация: 33
Постов: 305
Наверное Бэндэр просто забыл или это должно было стать сюрпризом! den_lol
Наша жизнь — одна бродячая тень;
жалкий актер, который кичится какой-нибудь час на сцене,
а там пропадает без вести; сказка, рассказанная безумцем,
полная звуков и ярости и не имеющая никакого смысла.
Уильям Шекспир

Жизнь — это добрая сказка со счастливым концом.
Другое дело, что я в ней — отрицательный персонаж.
Автор неизвестен
12.08.12 13:22 | #10

Репутация: 66
Постов: 1020
А че, эта штука с ии полезная, но я думаю сейчас мне еще рановато ии писать, персонажи даже на половину не готовы
12.08.12 14:33 | #11

Репутация: 14
Постов: 691
Так продолжать делать тутор или всем по барабану?

---------------------------
Мой Блог!

http://thedeathmask.forum2x2.ru/
12.08.12 14:51 | #12

Репутация: 416
Постов: 8072
предпочитаю AkelPad
но это не важно в принципе, и так, и так будет хорошо.

Что до урока, я его проверю, когда сам переведу все записи Силвы)
пока что ничего не скажу, но начало вменяемое.

Quote
Так продолжать делать тутор или всем по барабану?

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

12.08.12 16:21 | #13

Репутация: 14
Постов: 691
Ура ты мне дал силы продолжить!)

Добавлено (12/08/2012, 16:21)
---------------------------------------------
Первый урок закончен


---------------------------
Мой Блог!

http://thedeathmask.forum2x2.ru/
28.12.12 18:14 | #14

Репутация: 169
Постов: 1658
хм, надо будет редактор кода дляя AI добавить в LFStudio, автозаполнение, шаблоны кусков кода, может ещё что.... посмотрем вообщем....


Щёлкните на дракончика, он должен рости!!!
Никто не знает столько, сколько не знаю Я
Фан Форум для LF'айтеров » Игрострой » Модострой LF2 » ИИ программирование (Тема находится в стадии заполнения)
  • Страница 1 из 1
  • 1
Поиск: