Mantis

< Прошлое обращение (0003330) Следующее обращение (0003332) >
ID Категория Критичность Воспроизводимость Дата добавления Обновлено
0003331 [S.T.A.L.K.E.R.: Тень Чернобыля] незначительный всегда 22 апреля 2005 14:31 05 сентября 2005 14:56
Автор Zmey Режим доступа общедоступный
Приоритет нормальный Решение исправлен Платформа
Статус закрыт OS
Прогноз нет Версия OS
ETA 19 января 2038 05:14 Подверсия продукта
Сводка 0003331: Сталкеры иногда спавнятся с задержкой (~20 сек)
Описание Сломалось примерно неделю назад - сталкеры спавнятся со странной задержкой секунд в 20.
Шаги по воспроизведению
Дополнительная информация
Присоединенные файлы

- Связи


- Пользователи, отслеживающие обращение
Список пользователей Stohe, Sidorovich, Zmey, Chugai, Shyshkin


- Комментарии
(0003363)
Zmey
22 апреля 2005 15:33

Нужна возможность спавнить по запросу скрипта сталкера. Или выводить из онлайна.
Спавнер - механизм, который вводился именно для этого.
Сейчас сломались многие сцены на всех уровнях.

Если опрос съедает столько CPU - можно сделать подспавнивание командой.
(0003364)
Zmey
22 апреля 2005 15:35

Проблема не ограничивается открытыми пространствами - вот пример: игрок когда попадает в тюрьму, спавнится тюремщик, который запирает его на ключ.
Подспавнивается в нужное время грузовик, которые едет на станцию с подмогой и т.п.
Они должны спавниться в точное время и по команде.
Их нельзя все время держать в онлайне, поскольку их не должно быть в это время на уровне.
(0003367)
Dima
22 апреля 2005 15:56

"Нужна возможность спавнить по запросу скрипта сталкера."
зачем?

"Или выводить из онлайна."
эта возможность у вас есть

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

"Если опрос съедает столько CPU - можно сделать подспавнивание командой."
суть проблемы заключается не в этом

"Проблема не ограничивается открытыми пространствами - вот пример: игрок когда попадает в тюрьму, спавнится тюремщик, который запирает его на ключ."

а почему тюремщик должен спониться отдельно, а не как все объекты? чем он особенный?

"Подспавнивается в нужное время грузовик, которые едет на станцию с подмогой и т.п."

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

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

А как вы тогда будете обяснять, каким образом персонаж оказался в том месте? вы же сами создаёте все условия для нарушения целостности симуляции. Если пойти дальше - давайте делать игру для одного прохождения, только тогда она будет называться не S.T.A.L.K.E.R.

А если вы напридумывали сцены, которые не рассчитаны на то, что игрок всё может делать по-своему, значит в этом и есть проблема. Змей, тебе дай волю, так ты бы у игрока вообще управление персонажем забрал, чтобы было всё всегда чётко и по расписанию :) Люди покупают игру, чтобы поиграть в неё, а не смотреть скриптованные сцены. Для этого есть фильмы. Наша игра предусматривает практически неограниченную свободу для игрока, вы же в скриптах этого даже не предусматривали.
(0003368)
Zmey
22 апреля 2005 16:09

Не надо закрывать эту проблему, она не решена.
(0003369)
Zmey
22 апреля 2005 16:21

>"Нужна возможность спавнить по запросу скрипта сталкера."
>зачем?

Для создания скриптованных сцен.

>"Или выводить из онлайна."
>эта возможность у вас есть

С появившейся 20-секундной задержкой она бесполезна.

>"Сейчас сломались многие сцены на всех уровнях."
>так, может быть, проблемы как раз в сценах?

Нет, проблемы в несогласованных с нами изменениях в движке.

>а почему тюремщик должен спониться отдельно, а не как все объекты? чем он
>особенный?
>А как вы тогда будете обяснять, каким образом персонаж оказался в том месте?

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

>вы же сами создаёте все условия для нарушения целостности симуляции. Если
>пойти дальше - давайте делать игру для одного прохождения, только тогда она
>будет называться не S.T.A.L.K.E.R.

Почитай диздок (а точнее сборник идей) от Профа, прошедший по рассылке. Как я понимаю - сейчас 100% геймплея в Сталкере будет жестко скриптованным. Симуляцией никто не занимался и не занимается (если не считать симуляцией брождение сталкеров по уровням).
Что ты подразумеваешь под "практически неограниченной свободой"?
(0003370)
Zmey
22 апреля 2005 16:25

Если имеются ввиду разветвления сюжета - такое есть. В ту же тюрьму можно попасть не в качестве пленника. Если требуется ПОЛНОЕ отсутствие скриптованных сцен, то почему никто не занимался симуляцией?
(0003371)
Sidorovich
22 апреля 2005 16:29

>>Симуляцией никто не занимался и не занимается (если не считать симуляцией >>брождение сталкеров по уровням).
А это нельзя назвать полноценной симуляцией. Если подходить к этому серьезно, то в понятие "симуляция" должны были включаться различные (не зависящие от игрока) события.
(0003372)
Chugai
22 апреля 2005 16:40

Я здесь уже больше года и не помню, чтоб идее симуляции (классной идее, которая меня и привлекла к СТАЛКЕРУ) было уделено хоть какое-то время для развития. До сих пор я не видел в документах чёткого отражения идеи симуляции и планов по её реализации.
(0003373)
Dima
22 апреля 2005 18:09

«Для создания скриптованных сцен.»
т.е. сделать без этого невозможно?

«Нет, проблемы в несогласованных с нами изменениях в движке. Нет, проблемы в несогласованных с нами изменениях в движке.»
1. Система перевода объектов в онлайн/оффлайн не менялась значительное время.
2. Я хоть когда-нибудь обещал вам, что персонаж проспониться сразу же после того, как вы разрешите ему выйти в онлайн???

«В данном случае - игрока туда переносят во сне. Если он не попал туда - персонаж этот не нужен. Сейчас получается, что игрок проснулся, а персонаж появился через пол минуты из воздуха. Проблема не только с этой сценой.»
Так, может быть, ему стоило там быть заранее??

«Почитай диздок (а точнее сборник идей) от Профа, прошедший по рассылке. Как я понимаю - сейчас 100% геймплея в Сталкере будет жестко скриптованным.»
Может быть, _ты_ это там хотел прочитать?

«Что ты подразумеваешь под "практически неограниченной свободой"?»
то, что игрока никто никуда не гонит, он – сам по себе.

Zmey:
«Симуляцией никто не занимался и не занимается (если не считать симуляцией брождение сталкеров по уровням).»

Zmey:
«Если имеются ввиду разветвления сюжета - такое есть. В ту же тюрьму можно попасть не в качестве пленника. Если требуется ПОЛНОЕ отсутствие скриптованных сцен, то почему никто не занимался симуляцией?»
Sidorovich:
«А это нельзя назвать полноценной симуляцией. Если подходить к этому серьезно, то в понятие "симуляция" должны были включаться различные (не зависящие от игрока) события.»
Chugai:
«Я здесь уже больше года и не помню, чтоб идее симуляции (классной идее, которая меня и привлекла к СТАЛКЕРУ) было уделено хоть какое-то время для развития. До сих пор я не видел в документах чёткого отражения идеи симуляции и планов по её реализации.»

А что должно быть в симуляции? Что отсутствует в её текущей реализации? Что вы сделали на скриптах, что не противоречит концепции симуляции и добавляет ей разнообразия и непредсказуемости, оставляя её логичность и следование своим простым законам?

По поводу того, что никто не занимался симуляцией.

1. Для того, чтобы персонажи могли бродить между уровнями, для них строится game.graph, который собирается из отдельных графов уровней, соединяя их connection-point-ами.

2. Для того, чтобы события происходили на всех уровнях, собирается со всех уровней game.spawn

3. Создаётся новая игра, происходит выброс. Во время него происходит:
1. удаляются объекты, время жизни которых прошло
2. удаляются объекты, которые были убиты в время выброса
3. происходит спон аномалий и генерация артефактов, порождённых ими
4. по рождённым аномалиям, с шумом строится карта аномальной активности
5. торговцы, продают артефакты, принесённые им сталкерами, организациям, которые их заказывали
6. торговцы закупают необходимые вещи для продажи их актору и сталкерам.
7. происходит апдейт организаций, которые выбирают, какие открытия они хотят совершить, в связи с чем дают соответствующим известным им торговцам заказы на компоненты, без которых открытие невозможно и цены на них,
8. торговцы, исходя из карты аномальной активности и заказов от органзаций, генерят для сталкеров задания на конкретные локации с конкретными указаниями, что там нужно найти
9. новорождённым сталкерам присавивается соответствующий им торговец (заказчик)
10. устанавливается следующее время выброса

4. Сталкеры, управляемые универсальной логикой, выбирают задания, идут на место, указанное в задании, ищут вещь, заказанную в задании, возвращаются к заказчику задания, торгуют с ним и переходят к выбору задания снова (как в оффлайне, так и в онлайне).

5. Сталкеры, управляемые универсальной логикой, интерактируют друг с другом : торгуют, сражаются, кроме того, интерактируют с аномалиями (как в оффлайне, так и в онлайне).

6. Во время игры объекты могут переходить в оффлайн/онлайн, сталкеры и монстры могут приходить с других уровней и уходить на другие уровни

7. Система respawn-а персонажей сделана таким образом, чтобы не дать Зоне опустеть, она динамически подспонивает новые объекты и удаляет уже ненужные.

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

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

Из того, что в симуляции планировалось сделать, но не сделано:

1. Универсальная система отношений между персонажами
2. Система распространения информации по зоне
3. Статус убийцы
4. Диалоги с персонажами на других уровнях, получение от них заданий (раненый, например)

В итоге имеем: практически полностью готовый для работы симулятор и полное неиспользование его в игре.
(0003374)
Chugai
22 апреля 2005 18:25

При придумывании самой идеи прохождения принципы симуляции вытеснили на второй план, к сожалению. Теперь у нас вышло скриптованное прохождение, разбавленное малозаметной для игрока симуляцией, а не живой мир с вкраплённым в него сюжетом.

Получается, что инструменты типа "моментальное рождние" необходимы при настоящей идеологии.
(0003375)
Zmey
22 апреля 2005 18:27

Слишком длинное сообщение, буду отвечать по частям:

>«Для создания скриптованных сцен.»
>т.е. сделать без этого невозможно?

Я предлагал ограничить рестрикторами места с разыгрываемыми сценами.
Это практически единогласно забраковали, мол "ломает симуляцию - туда же никто зайти не сможет", "уровни не рассчитаны на это".
После обсуждений (в которых принимали участие _все_) договорились с этой целью использовать спавн квестовых персонажей по условию.
Пока персонаж не нужен - его нет в игре. Нужен - появился. Упрощается реализация сюжетных сценок, потому что не нужно отслеживать, чтобы с квестовым персонажем ничего не случилось до прихода игрока.
Спавнятся они таким образом, чтобы этого не видел игрок (но если спавн немгновенный - он естественно успевает прибежать на место действия и еще побегать там, а персонажи появляются ни к селу ни к городу).
С машинами отдельный разговор - она подъезжать и высаживать десант должна далеко от игрока. До этого игрок не должен с ней никак взаимодействовать (иначе он ее оттолкает так, что потом она не вырулит на дорогу). А еще он увидит, что в машине никого нет. Если бы была полноценная посадка персонажей в машину, и полноценная навигация машины (а не тот хак что сейчас) - можно было бы как-то обойтись без ее подспавнивания.
(0003376)
Zmey
22 апреля 2005 18:29

>«Нет, проблемы в несогласованных с нами изменениях в движке. Нет, проблемы в
>несогласованных с нами изменениях в движке.»
>1. Система перевода объектов в онлайн/оффлайн не менялась значительное время.
>2. Я хоть когда-нибудь обещал вам, что персонаж проспониться сразу же после
>того, как вы разрешите ему выйти в онлайн???

1. Я обнаружил, что проблема появилась в одной из последних версией, и сообщил об этом. Не знаю, кто и что успел накрутить...

2. А какой смысл тогда в этом механизме?
(0003377)
Dima
22 апреля 2005 18:42

"А какой смысл тогда в этом механизме?"
смысл в том, чтобы _незаметно_ от игрока вести объекты в заданном радиусе в онлайне, чтобы не было рывков и точечных протормозов.

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

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

Вот именно из-за этого упрощения мы и имеем весь геморрой с моментальными спонами, переходами в онлайн/оффлайн, ожиданием актёра, сохранениями/загрузками и т.д. Потому что ВАМ было тогда так проще. А теперь повторим вопрос, перефразируя его : почему ВЫ не занимались симуляцией? Почему ВЫ не делали скрипты, которые нормально реагируют на ситуации, когда не всё идёт по плану? Может быть именно поэтому и сложилась существующая ситуация с симуляцией с сталкере.
(0003378)
Zmey
22 апреля 2005 18:42

>«Почитай диздок (а точнее сборник идей) от Профа, прошедший по рассылке.
>Как я понимаю - сейчас 100% геймплея в Сталкере будет жестко скриптованным.»
>Может быть, _ты_ это там хотел прочитать?

Ткни пальцем пожалуйста в описание симуляции там, я не нашел.

>«Что ты подразумеваешь под "практически неограниченной свободой"?»
>то, что игрока никто никуда не гонит, он – сам по себе.

А игрока и так никто никуда не гонит, сценки ведь не "корридорного" типа.

>А что должно быть в симуляции? Что отсутствует в её текущей реализации?

Возьмем древнюю игрушку - Elite. Там был набор миссий - item delivery, assassination, сфотографировать военную базу, найти корабль таргонов, эскортировать корабль, ограбление, добыча минералов и куча других, все работало автономно и генерилось рандомно. Также по системам летали "свободные" корабли, которые частью этих задач занимались. Вот это - симуляция.
У нас же задание сталкеры выполняют _одно_ - "найти артефакт и принести обратно". Это не полноценная симуляция жизни и служит дополнением к основному сюжету, а не наоборот, как в Элите.
Даже смарттеррейны (которые по сути костыль) до ума не доведены до сих пор.

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

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

Покажи мне пожалуйста в любом из диздоков описание того, ЧТО должно было быть сделано на скриптах, или хотя бы эту самую концепцию симуляции.
(0003379)
Zmey
22 апреля 2005 18:47

>"А какой смысл тогда в этом механизме?"
>смысл в том, чтобы _незаметно_ от игрока вести объекты в заданном радиусе в
>онлайне, чтобы не было рывков и точечных протормозов.

Я говорю не про оптимизацию (я понимаю, почему была сделана задержка), а о том, что в немгновенном спавнере нет смысла, поскольку задачу, возложенную на него он не решает, следовательно, нужно искать другой способ оптимизации.
(0003380)
Zmey
22 апреля 2005 18:56

>Вот именно из-за этого упрощения мы и имеем весь геморрой с моментальными
>спонами, переходами в онлайн/оффлайн, ожиданием актёра,
>сохранениями/загрузками и т.д. Потому что ВАМ было тогда так проще.

Ну вот, намешал все в кучу.
1) Моментальный спавн - для подспавнивания сюжетных персонажей: персонажей, с которыми никто не должен взаимодействовать до прибытия игрока. Спавн с задержкой = игрок видит момент спавна, в чем собственно и заключается проблема.
2) Переходы в онлайн/оффлайн - сейчас это костыль для обхода невозможности подспавнить кого-то по требованию. Ранее - как способ оптимизации, но не было продумано взаимодействий ГРУПП персонажей, из-за чего на собрании и решили держать всех в онлайне, а в оффлайне - только замороженных квестовых персонажей.

>А теперь повторим вопрос, перефразируя его : почему ВЫ не занимались
>симуляцией? Почему ВЫ не делали скрипты, которые нормально реагируют на
>ситуации, когда не всё идёт по плану?

Скрипты нормально реагируют на ситуации, где не все идет по плану. Проблема в том, что спавн сюжетных персонажей происходит с задеркой.

>Может быть именно поэтому и
>сложилась существующая ситуация с симуляцией с сталкере.

Ситуация сложилась, потому что симуляцией никто не занимался. Она и сейчас записана в каком-то абстрактном виде в планах у Andy.
(0003381)
Dima
22 апреля 2005 18:58
отредактирован: 25 апреля 2005 10:43

Цитата "Я сознательно не включал сюда симмуляцию посколку с тем же успехом
можно было включать Windows. Симмуляция это програмная возможность внести
элементы разнообразия в прохождении игры разными игроками и при повторном
прохождении. Плюс Симуляция это подпитка скриптов и обыгрышей персонажами
через механизмы смарт-тэрренйов. "

А теперь встречный вопрос : ткни пальцем, где там написано, что сталкер
100% заскриптованная игра??

"А игрока и так никто никуда не гонит, сценки ведь не "корридорного"
типа."

особенно с ударом в морду

"Возьмем древнюю игрушку - Elite. Там был набор миссий - item delivery,
assassination, сфотографировать военную базу, найти корабль таргонов,
эскортировать корабль, ограбление, добыча минералов и куча других, все
работало автономно и генерилось рандомно. Также по системам летали
"свободные" корабли, которые частью этих задач занимались. Вот это -
симуляция.
У нас же задание сталкеры выполняют _одно_ - "найти артефакт и принести
обратно". Это не полноценная симуляция жизни и служит дополнением к
основному сюжету, а не наоборот, как в Элите."

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

"Даже смарттеррейны (которые по сути костыль) до ума не доведены до сих
пор."

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

"Покажи мне пожалуйста в любом из диздоков описание того, ЧТО должно было
быть сделано на скриптах, или хотя бы эту самую концепцию симуляции."

может, я что-то пропустил, покажи мне, пожалуйста, собственно, диздок

а законы симуляции просты :
1. каждый персонаж в любой момент времени может быть переведён в
оффлайн/онлайн
2. каждый персонаж в симуляции имеет цель
3. каждый персонаж имеет набор действий, с помощью которых он может
достичь свою цель

отредактирован: 25.04.05 10:43
(0003382)
Zmey
22 апреля 2005 19:01

Напишу ответ в понедельник утром
(0003383)
Dima
22 апреля 2005 19:02

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

так, может, ты лучше знаешь, какая задача была на него возложена? может, сам и исправишь? а, может, этот механизм _не предназначен_ для спона объектов на расстоянии 1 метра от игрока, т.к. весь механизм строится на том, что таких объектов не будет, т.к. мы постоянно их подспониваем по ходу игры, а персонаж у нас не летает со скоростью 100 метров в секунду?
(0003384)
Dima
22 апреля 2005 19:19

"1) Моментальный спавн - для подспавнивания сюжетных персонажей: персонажей, с которыми никто не должен взаимодействовать до прибытия игрока. Спавн с задержкой = игрок видит момент спавна, в чем собственно и заключается проблема."

это соответсвует концепции симуляции?

"2) Переходы в онлайн/оффлайн - сейчас это костыль для обхода невозможности подспавнить кого-то по требованию. Ранее - как способ оптимизации, но не было продумано взаимодействий ГРУПП персонажей, из-за чего на собрании и решили держать всех в онлайне, а в оффлайне - только замороженных квестовых персонажей."

кем не было продумано взаимодействие ГРУПП пероснажей? то что они не имели свою логику в оффлайне - да, это я не реализовал, но ведь они могли просто никуда не ходить (для патрулей можно было что-нибудь придумать), проблема, ведь, была в другом - в том, что ВАМ неудобно было с этим работать в онлайне. В результате у нас сейчас не работает сон. Или мне теперь нужно сделать функцию really_can_switch_offline()?

"Ситуация сложилась, потому что симуляцией никто не занимался. Она и сейчас записана в каком-то абстрактном виде в планах у Andy."

что ты имеешь в виду "не занимался"? я недостаточно ответил на этот вопрос выше?
(0003388)
Zmey
25 апреля 2005 10:45

"А теперь встречный вопрос : ткни пальцем, где там написано, что сталкер 100% заскриптованная игра??"

Так смарттеррейны же все жестко заскриптованные. Упор не на задания, а на скриптовые обыгрыши мест.

"А игрока и так никто никуда не гонит, сценки ведь не "корридорного" типа."
"особенно с ударом в морду"

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

"Возьмем древнюю игрушку - Elite. Там был набор миссий - item delivery,"
т.е. проблема только в том, что сталкеры умеют выполнять один тип заданий? Да, они выполняет один тип заданий, который придумал я, так неужели _всю_ симуляцию, _все_ типы заданий должен придумывать я??

А как мы это можем сделать на скриптах?

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

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

"Покажи мне пожалуйста в любом из диздоков описание того, ЧТО должно было быть сделано на скриптах, или хотя бы эту самую концепцию симуляции."
"может, я что-то пропустил, покажи мне, пожалуйста, собственно, диздок"

Те документы, которые писал Коан, а в последнее время Проф.

"а законы симуляции просты :
1. каждый персонаж в любой момент времени может быть переведён в оффлайн/онлайн
2. каждый персонаж в симуляции имеет цель
3. каждый персонаж имеет набор действий, с помощью которых он может достичь свою цель"

И чем это мешает подспавниванию сюжетных персонажей?
(0003389)
Zmey
25 апреля 2005 10:46

"1) Моментальный спавн - для подспавнивания сюжетных персонажей: персонажей, с которыми никто не должен взаимодействовать до прибытия игрока. Спавн с задержкой = игрок видит момент спавна, в чем собственно и заключается проблема."
"это соответсвует концепции симуляции?"

Это ей не противоречит.
(0003390)
Stohe
25 апреля 2005 11:11

Ну вы, горячие финские ребята :)

Дима, симуляция хороша тогда, когда игрок ее видит, понимает, способен предугадать и на этом основывает свои действия. Точно так же как например я мог в КР засесть возле промышленной планеты и грабить транспорты, потому что я _знал_ что им нужен товар и они прилетят на эту планету. В условиях сталкера я представлял себе это так: есть некоторые центры ака базы. Поселение этих баз получает задание и выполняет их. Причем задания должны быть разные, начиная от "принеси артефакт" и кончая затяжными патрулями по нескольким уровням. Тогда бы эта симуляция была видна. Но так уж получилось, что она у нас куцая и незметная. И в этом ты никак не виноват. Просто так получилось.

Когда мы начали полноценно работать над скриптами примерно год назад все считали симуляцию готовой и было указание "считать что там все хорошо". А когда осенью глянули - поняли что там все плохо. Поэтому решили сначала ключевые эпизоды обыгрывать на скриптах, потом неключевые. А сейчас пришло все к тому, что у нас ВСЕ события обыгрываются на скриптах. Мы сами этому не рады, но это по сути единственный вариант сделать хоть что то законченное пока что.

Теперь к спавнеру:
сейчас он используется для следующих целей: прятание либо появление сюжетный персонажей. Раньше я был сторонник того чтобы отработанных персонажей отправлять гулять в симуляцию. Но когда свободовец по симуляции начинает идти в логово Долга за артефактами - это выглядит тупо и глупо. Поэтому таких вот орлов приходится прятать назад в офлайн.

дневные-ночные персонажи. Это сделано для того чтобы разнообразить один и тот же уровень днем и ночью.

По сути эти механизмы не привязывают игру к рельсам, а создают ощущение какой то симуляции. Да, это фейки, но другого варианта нет и врядли будет.
(0003391)
Dima
25 апреля 2005 12:58

"Так смарттеррейны же все жестко заскриптованные. Упор не на задания, а на скриптовые обыгрыши мест."

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

"А как мы это можем сделать на скриптах?"

это могу сделать я в симуляторе, в приципе, можно частично дать возможность и скриптам делать свои задания, суть не в этом, а в том, что никто никогда не подходил (не считая смарт-террэйнов) и не предлагал делать какие-то задания для сталкеров, изначально всё это продумав и взвесив

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

поподробнее пожалуйста, я смарт-террэйны полностью проэкспортил в скрипты, у них есть возможность обновляться в оффлайне и захватывать персонажей, собственно, что не работает, и что, оказывается, у меня ещё в планах?

"Те документы, которые писал Коан, а в последнее время Проф."
почитай внимательно, что такое диздок, а потом говори

"И чем это мешает подспавниванию сюжетных персонажей?"
"Это ей не противоречит."

тем, что симуляция - это закрытая система, в ней ниоткуда ничего не берётся, исключением есть только организации, которые заказывают артефакты и что-то там себе разрабатывают. В той системе, которую я проектировал, всё было продумано, чтобы на любой вопрос игрока можно было дать логичный ответ (затем, между прочим, и зона аномальной активности генерится). В этой системе мы можем гарантировать, что если персонаж сейчас находится здесь, то он действительно мог бы здесь находится, и игрок никогда не сможет уличить нас в читерстве, что, мол, мы просто взяли его и перенесли. а вот в случае подспона персонажей вся эта целостность просто летит к чёртовой матери.
(0003392)
Dima
25 апреля 2005 13:20

"...есть некоторые центры ака базы. Поселение этих баз получает задание и выполняет их. Причем задания должны быть разные, начиная от "принеси артефакт" и кончая затяжными патрулями по нескольким уровням."

база - место обитания торговца, он является заказчиком заданий. О типах заданий уже говорили - да, сейчас один тип заданий, но сделать их больше не представляет проблемы. Затяжной патруль по уровням - ок, у нас нет патрульных путей между уровнями, но ведь можно динамически менять маски точек графа. Да, у нас есть проблема с тем, что в оффлайне персонажи ведутся себя индивидуально, игнорируя групповые отношения. поддержка групп сталкеров/монстров на самом деле есть, просто все они должны быть проспонены с одного спон-поинта. опять же сделать группу можно, это не нарушает концепцию симулятора, просто нужно подумать как лучше это сделать, чтобы было удобно задавать эти группы, менять распределение в них, опять же остаётся вопрос по поводу отношений оффлайновых групп к онлайновой иерархии (хотя можно сделать их полное соответствие, скажем, персонажи из одной группы ходят вместе) и т.д. Реально симулятор готов к действию, просто придумывать схемы для него сложнее, т.к. необходимо учитывать бОльшее количество вариантов, гораздо проще заспонить всех в онлайн, выбить от меня, что актёр спониться первым, выбить моментальный выход из оффлайна и т.д., чем придумать схему, которая бы работал по симуляции. Ок, я наверняка не всё учёл, но хоть кто-то походил ко мне с вопросом, что вот есть такая вот схема, рассчтана на все случае, всё очень прикольно получается, но не работает из-за вот этого? Подходили насчёт смарт-террэйнов - они вынесены вам в лучшем виде, подходили по поводу патрульных путей - сделано динамическое назначение доступных типов точек графа, подходили по поводу группового поведения в оффлайне - это я не сделал, признаю.

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

Ведь то, что Змей назвал костылём - это отличный помощник для того, чтобы учитывать конкретную геометрию на уровнях, не меняя ни строки кода, при этом не губя симуляцию - персонаж А не обязан всю свою жизнь ходить по одному и тому же патрульному пути (я немного сутрировал, но суть ясна).

- История
Дата изменения Имя пользователя Поле Изменение
22 апреля 2005 14:31 Zmey Новое обращение
22 апреля 2005 14:41 Dima Статус назначен => решен
22 апреля 2005 14:41 Dima Решение открыт => не баг
22 апреля 2005 14:41 Dima Категория PRG - AI Core, ALife, Stalkers => -Unknown-
22 апреля 2005 14:41 Dima Описание обновлено
22 апреля 2005 15:33 Zmey Статус решен => информация
22 апреля 2005 15:33 Zmey Решение не баг => открыт снова
22 апреля 2005 15:33 Zmey Комментарий добавлен: 3363
22 апреля 2005 15:35 Zmey Комментарий добавлен: 3364
22 апреля 2005 15:35 Zmey Следить: Chugai
22 апреля 2005 15:35 Zmey Следить: Stohe
22 апреля 2005 15:36 Zmey Следить: Zmey
22 апреля 2005 15:36 Zmey Следить: Sidorovich
22 апреля 2005 15:56 Dima Комментарий добавлен: 3367
22 апреля 2005 15:57 Dima Статус информация => решен
22 апреля 2005 15:57 Dima Решение открыт снова => не баг
22 апреля 2005 15:57 Dima Описание обновлено
22 апреля 2005 16:09 Zmey Статус решен => информация
22 апреля 2005 16:09 Zmey Решение не баг => открыт снова
22 апреля 2005 16:09 Zmey Комментарий добавлен: 3368
22 апреля 2005 16:21 Zmey Комментарий добавлен: 3369
22 апреля 2005 16:23 Zmey Следить: Shyshkin
22 апреля 2005 16:25 Zmey Комментарий добавлен: 3370
22 апреля 2005 16:29 Sidorovich Комментарий добавлен: 3371
22 апреля 2005 16:40 Chugai Комментарий добавлен: 3372
22 апреля 2005 18:09 Dima Комментарий добавлен: 3373
22 апреля 2005 18:25 Chugai Комментарий добавлен: 3374
22 апреля 2005 18:27 Zmey Комментарий добавлен: 3375
22 апреля 2005 18:29 Zmey Комментарий добавлен: 3376
22 апреля 2005 18:42 Dima Комментарий добавлен: 3377
22 апреля 2005 18:42 Zmey Комментарий добавлен: 3378
22 апреля 2005 18:47 Zmey Комментарий добавлен: 3379
22 апреля 2005 18:56 Zmey Комментарий добавлен: 3380
22 апреля 2005 18:58 Dima Комментарий добавлен: 3381
22 апреля 2005 19:01 Zmey Комментарий добавлен: 3382
22 апреля 2005 19:02 Dima Комментарий добавлен: 3383
22 апреля 2005 19:19 Dima Комментарий добавлен: 3384
25 апреля 2005 10:41 Zmey Комментарий отредактирован: 3381
25 апреля 2005 10:43 Zmey Комментарий отредактирован: 3381
25 апреля 2005 10:45 Zmey Комментарий добавлен: 3388
25 апреля 2005 10:46 Zmey Комментарий добавлен: 3389
25 апреля 2005 11:11 Stohe Комментарий добавлен: 3390
25 апреля 2005 12:58 Dima Комментарий добавлен: 3391
25 апреля 2005 13:20 Dima Комментарий добавлен: 3392
05 сентября 2005 14:56 Dima Статус информация => решен
05 сентября 2005 14:56 Dima Решение открыт снова => исправлен