Среда, 24 Апреля 2024, 05:44

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
Форум игроделов » Записи участника » Psycho [976]
Результаты поиска
PsychoДата: Суббота, 10 Октября 2009, 12:02 | Сообщение # 921 | Тема: Для создания игры по-типу Max Payne или Hitman
Психоламер
Сейчас нет на сайте
PAVLOV, FPS Creator + Fenix Mod = Вид от третьего лица. Как по мне, то и геймплей на нем можно сделать а-ля Max Payne.
PsychoДата: Пятница, 09 Октября 2009, 09:29 | Сообщение # 922 | Тема: Создание ботов для FPS Creator X9
Психоламер
Сейчас нет на сайте
Quote (Vinchensoo)
это программировании ии скриптами, насколько я понял..

Да. Это так скажем перевод языка скриптов ИИ на человеческий язык biggrin

Добавлено (09.10.2009, 09:29)
---------------------------------------------
Добрался-таки своими загребущими ручёнками до озвучки ботов. В скором времени выложу скрипт с уже озвучеными ботами wink

PsychoДата: Четверг, 08 Октября 2009, 13:46 | Сообщение # 923 | Тема: Какой разработчик игр самый лучший?
Психоламер
Сейчас нет на сайте
winning eleven 100% делали они, а вот evolution soccer даже не помню...

Добавлено (08.10.2009, 13:46)
---------------------------------------------
Все-таки из футбола больше всего нравится Goal 3 от компании Nekketsu (тоже японцы кстати). Только в этом футболе можно драться на поле, ставить ЗВЕРСКИЕ подсечки и в щепки разносить ворота))) Вот за такие игры (ведь их целая серия: хоккей, футбол, баскетбол и т.п.) я уважаю Nekketsu Games happy happy happy

PsychoДата: Четверг, 08 Октября 2009, 13:33 | Сообщение # 924 | Тема: Когда вы увлеклись созданием игр?
Психоламер
Сейчас нет на сайте
Вообще 5 лет назад. Тогда делал текстовые квесты на Orc Zero Creator. Тоже какой-никакой скриптовый язык biggrin Вернулся к теме геймдева год назад и плотно занялся этим)
PsychoДата: Четверг, 08 Октября 2009, 13:30 | Сообщение # 925 | Тема: Какой разработчик игр самый лучший?
Психоламер
Сейчас нет на сайте
Quote (Vinchensoo)
японские разработчики или не они?)

Да, так точно) Японцы)) Они ваяли неплохие игры ещё для приставок Nintendo и Amiga в далёком 1988* году, когда меня ещё и в планах не было biggrin
*С точной датой могу ошибаться.


Сообщение отредактировал Psycho - Четверг, 08 Октября 2009, 13:31
PsychoДата: Четверг, 08 Октября 2009, 08:19 | Сообщение # 926 | Тема: Нужна помощь с ботами в FPS Creator X9
Психоламер
Сейчас нет на сайте
Quote (bars-profi)
appearwithheadshot.fpi

Quote (bars-profi)
На ранних версиях не тестил...

Если не ошибаюсь скрипт есть в версиях после 1.09, в более ранних его нет.
PsychoДата: Среда, 07 Октября 2009, 09:04 | Сообщение # 927 | Тема: Dark Side
Психоламер
Сейчас нет на сайте
Ну я считаю это дело вкуса. Лично мне игра понравилась. Конечно в ней громадная куча изъянов и недоработок, однако я считаю парню есть куда "расти". Уверен, что последующие его игры будут с каждым разом становиться все лучше и качественней.
Kolosus, Удачи тебе в геймдеве!
PsychoДата: Вторник, 06 Октября 2009, 18:16 | Сообщение # 928 | Тема: Идеи для конкурса 4
Психоламер
Сейчас нет на сайте
Kamskii, может я ошибаюсь, но...
Quote (GC-Vic)
Игра "Фабрика развлечений"
Ты - владелец удивительной фабрики, части огромной вселенной развлечений. Создавать новые игры, производить и продавать - вот твои главные обязанности. Наслаждаться успехом - твой удел. Азарт, риск и целеустремленность - твое кредо, а зависть - удел неприятелей. Воплоти в жизнь самые смелые желания, оставь конкурентов далеко позади, и стань самым успешным создателем игр за всю историю этой индустрии!

Особенности игры "Фабрика развлечений":

Забавная мультяшная графика;
Три различных игровых персонажа;
Одиннадцать увлекательных миссий;
Возможность заказать себе интерактивного консультанта;
Удобный и дружественный игровой интерфейс;
Реалистичная имитация экономической модели;
Интересные и веселые ролики;
Реальное отображение рыночной ситуации 80-х годов этого сектора рынка.

PsychoДата: Вторник, 06 Октября 2009, 16:56 | Сообщение # 929 | Тема: Вредные привычки
Психоламер
Сейчас нет на сайте
TrueIfrit, эм... а если этим вообще не заниматься??
PsychoДата: Вторник, 06 Октября 2009, 16:42 | Сообщение # 930 | Тема: Вредные привычки
Психоламер
Сейчас нет на сайте
Quote (Vinchensoo)
секс не вреден

Ах, да! ну разве что только секс... dry
PsychoДата: Вторник, 06 Октября 2009, 16:35 | Сообщение # 931 | Тема: Ремейк консольных игр
Психоламер
Сейчас нет на сайте
Не, извини, я в команде работать не привык, поэтому просто если будет что-то по нинтендо, то обращайся))
P.S. на нинтендо и прохождение то искать не придётся)))
PsychoДата: Вторник, 06 Октября 2009, 16:32 | Сообщение # 932 | Тема: Вредные привычки
Психоламер
Сейчас нет на сайте
Quote (TrueIfrit)
Вредно Но приятно =))

Согласен biggrin Да вообще все кайфовое вредно biggrin
PsychoДата: Вторник, 06 Октября 2009, 16:29 | Сообщение # 933 | Тема: Ремейк консольных игр
Психоламер
Сейчас нет на сайте
Ну я в Nintendo NES неплохо шарю. В своё время у меня было около трехсот игр, половину из которых я прошёл. Сейчас прохожу вторую половину happy
PsychoДата: Вторник, 06 Октября 2009, 16:20 | Сообщение # 934 | Тема: Ремейк консольных игр
Психоламер
Сейчас нет на сайте
Игры какой консоли?
PsychoДата: Вторник, 06 Октября 2009, 16:05 | Сообщение # 935 | Тема: Вредные привычки
Психоламер
Сейчас нет на сайте
TrueIfrit, к сожалению??? biggrin Это ж хорошо)))
PsychoДата: Вторник, 06 Октября 2009, 15:42 | Сообщение # 936 | Тема: Вредные привычки
Психоламер
Сейчас нет на сайте
Курю, пью по праздникам в малых количествах biggrin
PsychoДата: Вторник, 06 Октября 2009, 15:04 | Сообщение # 937 | Тема: Создание ботов для FPS Creator X9
Психоламер
Сейчас нет на сайте
Здравствуйте. "Гуляя" по форумам о конструкторе игр FPS Creator X9 я не раз лицезрел всё изобилие жалоб на (мягко говоря) глупое поведение искусственного интеллекта. Но я все же решился делать проект именно на этом движке и... столкнулся с такой же поблемой. Однако изучение языка скриптов FPI, который используется в этом движке, навело меня на мысль о том, что ситуация с откровенно тупыми ботами поправима если не полностью, то до терпимого уровня.

Возможно эта тема будет полезна новичкам даного конструктора, так как здесь я постараюсь подробно расписать процесс построения "терпимого" искусственного интеллекта.

Для начала попробуем разобрать "по болтикам" уже имеющийся скрипт, улучшающий ИИ в игре, дабы понять основные принципы его построения. Позже я планирую доработать и дополнить этот скрипт.

Добавлено (06.10.2009, 15:01)
---------------------------------------------
Итак, перед нами Stealth AI для FPSC X9!

Quote
;Triggers

:state=0:state=1
:state=1,losetarget=5:state=10
:state=1,plrcanbeseen,plrdistwithin=400:state=20
:state=1,shotdamage=1:rotate toplr,state=20
:state=1,random=20:rotateheadrandom=55
:state=1:animate=2,movefore=2.5

:state=10,random=1:state=11
:state=10:rotatey=90 ,animate=2,movefore=2.5,state=0
:state=11:rotatey=-90,animate=2,movefore=2.5,state=0

:state=20,plrcanbeseen:state=21
:state=21,plrcanbe seen:settarget
:state=21,plrcannotbeseen,losetarget=1:state=10
:state=21,healthless=31:state=40
:state=21,ifweapon=1,plrdistfurther=100:f ollowplr=1,animate=5
:state=21,plrdistwithin=101:rotatetoplr
:state=21,ifweapon=1,plrdistwithin=301,plrcanbeseen=46:animate=1,rotatetoplr, freeze,useweapon,rundecal=6
:state=21,ifweapon=0:animate=1,freeze,state=22,setframe=6
:state=21,plrdistwithin=300,random=20:state=25
:sta te=21,plrdistwithin=100:state=30
:state=22:incframe=6
:state=22,frameatend=6:state=21,reloadweapon,sound=audiobank\guns\reload.wav
:state =25,random=1:state=26,setframe=4
:state=25:state=27,setframe=3
:state=26:incframe=4,strafe=90,rotatetoplr
:state=26,frameatend=4:state=21 ,animate=1
:state=27:incframe=3,strafe=-90,rotatetoplr
:state=27,frameatend=3:state=21,animate=1
:state=30:state=31,setframe=5
:state=31 :incframe=5,strafe=180,rotatetoplr
:state=31,frameatend=5:state=21,animate=1

:state=40:state=42
:state=42,ifweapon=1,plrdistwithin=601, plrcanbeseen=46:animate=1,rotatetoplr,freeze,useweapon,rundecal=6
:state=42:rotatetotarget,rotatey=180,resethead,animate=5,state=43
:state =43:runfore=10
:state=43,random=5:rotateheadrandom=65
:state=43,losetarget=1:state=50
:state=43,plrcanbeseen:settarget,state=42

:state =50:timerstart,state=51,rotatey=180,animate=31
:state=51,timergreater=5000:state=10,animate=5
:state=51,random=5:rotateheadrandom=35

;End of Script

Добавлено (06.10.2009, 15:02)
---------------------------------------------
Начало скрипта:

Quote
;Triggers

:state=0:state=1
:state=1,losetarget=5:state=10
:state=1,plrcanbeseen,plrdistwithin=400:state=20
:state=1,shotdamage=1:rotate toplr,state=20
:state=1,random=20:rotateheadrandom=55
:state=1:animate=2,movefore=2.5


Теперь разберем этот скрипт.

:state=0:state=1 - значение :state=0 означает самое первое дейсвие, которое является началом выполнения скрипта, далее за ним идет :state=1 (где "1" - порядковый номер действия)
ЭТО ВАЖНО! Воизбежании неработоспособности скрипта не дублируйте действие :state=0 .

:state=1,losetarget=5:state=10 - здесь проверяется выполнения условия losetarget= - этот параметр означает, что ИИ потерял игрока из поля зрения, т.е. если это условие выполняется, то ИИ выполняет действия из :state=10

:state=1,plrcanbeseen,plrdistwithin=400:state=20 - Если игрок видим для ИИ (параметр plrcanbeseen) при дистанции 400 (параметр plrdistwithin=400), то ИИ выполняет действие из :state=20

:state=1,shotdamage=1:rotatetoplr,state=20 - Если игрок стреляет в ИИ (параметр shotdamage=1), то ИИ поворачивается лицом к игроку (параметр rotatetoplr), затем выполняет действие state=20

:state=1,random=20:rotateheadrandom=55 - параметр random=20:rotateheadrandom=55 означает, что ИИ будет смотреть в разные стороны в поисках игрока.

:state=1:animate=2,movefore=2.5 - Анимация ИИ при поиске игрока

ЭТО ВАЖНО! Числовое значение параметра :animate= может быть изменено в зависимости от ваших предпочтений. Числовые значения анимации: 2-шаг, 5-бег. Остальные значения при передвижении ИИ не используются. 1-неподвижность, 3,4 - шаг в сторону (вправо/влево), 6-перезарядка.

Добавлено (06.10.2009, 15:03)
---------------------------------------------
ИИ теряет игрока из поля зрения:

Quote
:state=10,random=1:state=11
:state=10:rotatey=90,animate=2,movefore=2.5,state=0
:state=11:rotatey=-90,animate=2,movefore=2.5,state=0

Разберём этот скрипт.

:state=10,random=1:state=11 - параметр random=1:state=11 означает, что будет выполнено действие либо :state=10, либо :state=11. Команда random=1 хорошо подойдет, если Вы хотите сделать несколько реакций бота на одно и то же событие.

:state=10:rotatey=90,animate=2,movefore=2.5,state=0 и :state=11:rotatey=-90,animate=2,movefore=2.5,state=0 - эти команды отличаются лишь одним значением - rotatey=, при котором ИИ поворачивается и начинает идти в одну из сторон. Если вейпоинты ИИ зациклены, т.е. путь ИИ является круговым, то он выберет одно из направлений движения.

Добавлено (06.10.2009, 15:03)
---------------------------------------------
ИИ Вас заметил:

Quote
:state=20,plrcanbeseen:state=21
:state=21,plrcanbeseen:settarget
:state=21,plrcannotbeseen,losetarget=1:state=10
:state=21,healthless=31: state=40
:state=21,ifweapon=1,plrdistfurther=100:followplr=1,animate=5
:state=21,plrdistwithin=101:rotatetoplr
:state=21,ifweapon=1,plrdi stwithin=301,plrcanbeseen=46:animate=1,rotatetoplr,freeze,useweapon,rundecal=6
:state=21,ifweapon=0:animate=1,freeze,state=22,setframe=6
: state=21,plrdistwithin=300,random=20:state=25
:state=21,plrdistwithin=100:state=30
:state=22:incframe=6
:state=22,frameatend=6:state=21,r eloadweapon,sound=audiobank\guns\reload.wav
:state=25,random=1:state=26,setframe=4
:state=25:state=27,setframe=3
:state=26:incframe=4,str afe=90,rotatetoplr
:state=26,frameatend=4:state=21,animate=1
:state=27:incframe=3,strafe=-90,rotatetoplr
:state=27,frameatend=3:state=21, animate=1
:state=30:state=31,setframe=5
:state=31:incframe=5,strafe=180,rotatetoplr
:state=31,frameatend=5:state=21,animate=1

Разберем скрипт.

:state=20,plrcanbeseen:state=21 - Если ИИ Вас заметил, выполняется действие :state=21

:state=21,plrcanbeseen:settarget - Если игрок замечен, ИИ начинает атаку.
[/u]ЭТО ВАЖНО! В :state=21 команда plrcanbeseen: повторяется не случайно. В данном случае это значит, что ИИ продолжает Вас видеть, т.е. Вы не пропали из его поля зрения.

:state=21,plrcannotbeseen,losetarget=1:state=10 - Если ИИ больше не видит игрока (plrcannotbeseen,losetarget=1), то выполняется действие :state=10 (см. "ИИ теряет игрока из поля зрения")

:state=21,healthless=31:state=40 - Если здоровье ИИ будет меньше чем 31, ИИ выполнит действие :state=40

:state=21,ifweapon=1,plrdistfurther=100:followplr=1,animate=5 - в случае, если у ИИ есть оружие и патроны (параметр ifweapon=1), и игрок находится от ИИ на расстоянии 100 (параметр plrdistfurther=100:), он преследует игрока (параметр followplr=1) с анимацией animate=5 (в данном случае - бег. Напомню: Числовые значения анимации: 2-шаг, 5-бег. Остальные значения при передвижении ИИ не используются.

:state=21,ifweapon=0:animate=1,freeze,state=22,setframe=6 - Если же у ИИ нет оружия или паронов (параметр ifweapon=0), то проигрывается анимация (animate=1), при этом он ни куда не двигается (параметр freeze), выполняет действие state=22. setframe=6 - этот параметр показывает, что анимация останавливается на 6й позиции (кадре).
ЭТО ВАЖНО! Значение setframe=6 является оптимальным, изменение его приведет к некачественной анимации.

:state=21,plrdistwithin=300,random=20:state=25 - Если игрок находится на расстоянии 300 от ИИ (параметр plrdistwithin=300), либо продолжается выполнение всех действий помеченных state=21, либо выполняется действие :state=25

:state=21,plrdistwithin=100:state=30 - Если игрок находится на расстоянии 100 от ИИ (параметр plrdistwithin=100), выполняется действие :state=30

:state=22:incframe=6 - включение анимации начиная с 6й позиции (параметр :incframe=6)

:state=22,frameatend=6:state=21,reloadweapon,sound=audiobank\guns\reload.wav - Когда анимация вновь приходит к началу, т.е. к позиции 6, выполняется действие :state=21, одновременно с этим происходит перезарядка оружия (параметр reloadweapon) и проигрывается звук audiobank\guns\reload.wav (параметр sound=)
ЭТО ВАЖНО! Процесс перезарядки представлен из стандартного скрипта ИИ, изменять его нет смысла. В этой статье он представлен для ознакомления.

Остальные команды применяются для анимации ИИ. Изменять их нет смысла, и работают они по принципу двух последнх описаных команд.

Добавлено (06.10.2009, 15:04)
---------------------------------------------
ИИ преследует игрока:

Quote
:state=40:state=42
:state=42,ifweapon=1,plrdistwithin=601,plrcanbeseen=46:animate=1,rotatetoplr,freeze,useweapon,rundecal=6
:state=42:rota tetotarget,rotatey=180,resethead,animate=5,state=43
:state=43:runfore=10
:state=43,random=5:rotateheadrandom=65
:state=43,losetarget=1:st ate=50
:state=43,plrcanbeseen:settarget,state=42

:state=50:timerstart,state=51,rotatey=180,animate=31
:state=51,timergreater=5000:state =10,animate=5
:state=51,random=5:rotateheadrandom=35

;End of Script


Что это значит.

:state=40:state=42 - переход к действию :state=42

:state=42,ifweapon=1,plrdistwithin=601,plrcanbeseen=46:animate=1,rotatetoplr,freeze,useweapon,rundecal=6 - Если у ИИ все в порядке с оружием и патронами (параметр ifweapon=1), и игрок надодится на расстоянии 601 от ИИ (параметр plrdistwithin=601) и при этом видит игрока (параметр plrcanbeseen=46), то выполняется анимация (параметр animate=1), при этом ИИ поворачивается к игроку (парамер rotatetoplr) не делая шагов с стороны (параметр freeze), и использует оружие (параметр useweapon). Параметр rundecal=6 является деколью выстрела, изменять его не имеет смысла.

:state=42:rotatetotarget,rotatey=180,resethead,animate=5,state=43 - в этой команде отображается поворот ИИ к игроку (параметр rotatetotarget), его поворотливость (параметр rotatey=180), восстановление стандартной позици головы ИИ (параметр resethead) и анимация бега ИИ (параметр animate=5). Т.е. ИИ периодически приближается к игроку.

:state=43:runfore=10 - скорость приближения ИИ

:state=43,random=5:rotateheadrandom=65 - при беге ИИ оглядывается

:state=43,losetarget=1:state=50 - Если несмотря на предидущий пункт, ИИ все же потерял игрока из поля зрения, выполняется действие :state=50

:state=43,plrcanbeseen:settarget,state=42 - Если ИИ все же увидел игрока, он возвращается к выполнению действия state=42

:state=50:timerstart,state=51,rotatey=180,animate=31
:state=51,timergreater=5000:state=10,animate=5
:state=51,random=5:rotateheadrandom=35
- Эта часть скрипта отвечает за действия ИИ при потере игрока. Параметр timergreater=5000 задает 5000 мс времени прежде чем ИИ начнет действие :state=10

Сообщение отредактировал Psycho - Вторник, 06 Октября 2009, 15:31
PsychoДата: Понедельник, 05 Октября 2009, 19:06 | Сообщение # 938 | Тема: ZombieAttack5-КровавыйДом
Психоламер
Сейчас нет на сайте
Quote (Hydk12)
я осваиваю Сцирру Конструкт.(вернее делаю на нем платформер)

Молодец! Удачи в освоении и разработке wink
PsychoДата: Понедельник, 05 Октября 2009, 17:39 | Сообщение # 939 | Тема: Нужна помощь с ботами в FPS Creator X9
Психоламер
Сейчас нет на сайте
Нажми на врага правой кнопкой мыши в редакторе, на панели слева будут отображены его свойства. Там есть вкладка здоровье (Health в англ. вер.)

Можешь попробовать сбавить им прицельность огня, в этом случае они будут чаще промахиваться. Опция находится на той же вкладке слева в свойствах персонажа.

Добавлено (05.10.2009, 17:39)
---------------------------------------------
По поводу хедшотов... идея занятная) Знаю пару строчек в коде игры, с помощью которых это можно сделать... но не знаю как их использовать, точнее знаю в теории, а на практике не получилось пока. Как-нибудь на досуге попробую сделать такой скрипт.

Сообщение отредактировал Psycho - Понедельник, 05 Октября 2009, 17:40
PsychoДата: Понедельник, 05 Октября 2009, 16:38 | Сообщение # 940 | Тема: ZombieAttack5-КровавыйДом
Психоламер
Сейчас нет на сайте
Quote (TovTripleZ)
Он очень страшный

По-моему это зависит от разработчика)
Quote (TovTripleZ)
и неудобный

С этим согласен. Ну а что поделать!? Никто не оворил что будет легко biggrin


Сообщение отредактировал Psycho - Понедельник, 05 Октября 2009, 16:38
Форум игроделов » Записи участника » Psycho [976]
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг