AAAAKKK
В твоем варианте мордобития в баре есть один существенный изъян - нет самой анимации удара от NPC, есть только эффект камеры, а NPC остается пассивным.
------------------------------
Выложил в журнал небольшую аи-схемку для бара - по следам предложений AAAAKKK и Artos'a
В общем сделал так, как это примерно должно выглядеть в жизни.
Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
erlik
А не плохо получилось! Хотя еще подрихтовать следует, но уже применимо.
Чтобы взглянуть в игре, подправил немного под Симбион и ... :
1. Основной недостаток - схема вывернута наизнанку, т.е. объект (НПС) обрабатывается не в своей схеме, а будучи вытащенным 'наружу', может обрабатываться апдейтами не из своей 'родной' схемы (рассинхронизирован запуск).
СтОит (ИМХО) передавать в схему соответствующего НПС критерий запуска, а не запускать от первого попавшегося ...
Корректный запуск позволит и расширять схему хоть сейчас - 'стырил из под носа' у группы неписей (радиус проверки) - так и гонять/тумаки давать могут толпою ...
2. Вероятно ты ошибся при определении дистанции. СтОит измерять от НПС до предмета (взятого ГГ), а не от НПС до ГГ. Иначе ГГ запросто утягивает из-под носа, находясь от НПС за дистанцией проверки (2м).
...
В общем погляди вчерне подправленное (тут), может и сгодятся отдельные правки ...
Artos
Действительно ошибся - хотел проверять именно дистанцию между предметом и NPC, но забыл передать в функцию проверки объект предмета.
Должно было быть вот так:
function GetNpcForAction(npc, oItem)
if not IsNpc(npc) then return false end
if sPattern then
return string.match(npc:name(), sPattern) and distance_between(npc, oItem)
end
return distance_between(npc, oItem)
end
function GetDistance(oItem)
local if_true = false
for k, v in pairs(db.storage) do
if_true = GetNpcForAction(level.object_by_id(k),oItem)
if if_true then
gNpc = if_true
break
end
end
return if_true
end
Твои правки обязательно гляну - так как схему все равно собираюсь развивать дальше.
--------------------------------------------------------------------------------------------------------------------
Посмотрел - правки очень хорошие, спасибо, есть над чем подумать для развития схемы.
Некоторые вещи приятно удивили в плане оптимизации.:-cool)
отредактировал(а) erlik: 06-03-2011 11:59 GMT3 час. Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
#Ma$ter :
А за что отвечает переменная gulag.state в файле gulag_***.script? Мне говори что она отвечает за то, активен гулаг или нет. Но как может быть гулаг не активен?
Лехко просто если нет подходяшего состояния..... гулага(смарта) гулага нет не существует отключен
мастер переменная gulag.state отвечает лиш за состояния гулага
состояние 1 день
состояние 3 ночь....
.....ну и т.д
все состояния опредеяются функцией
if type == "esc_lager" then return function(gulag)
if db.actor ~= nil then
if ( level.get_time_hours() >= 6 and level.get_time_hours() <= 22 ) then
return 0 -- день
else
return 1 -- ночь
end
else
return gulag.state
end
end
end
функция может быть любая лиш бы она возврашала нужные состояния
отредактировал(а) AAAAKKK: 06-03-2011 11:48 GMT3 час. Зацикленный лагерь в журнале.
Ma$ter , AAAAKKK
Не нужно смешивать/подменять одни понятия на другие.
Активный гулаг - имеются работы для обработки их неписями.
Активное состояние гулага - состояние при котором все работы переключаются в соответствующее состояние(секцию) в зависимости от некоторого(ых) условия(ий).
'gulag.state' - это переменная, которая хранит текущее (активное!) состояние гулага после периодической проверки соответствующих условий. Как правило, это числовой флаг (0,1,...), соответствующий некоему, одному из возможных (активному!) состоянию гулага.
Т.о. более правильно говорить, что 'gulag.state' отображает активное состояние гулага, а не отвечает за него. Отвечают за активность условия, которые прописаны в соответствующем методе для каждого гулага (ну или некий дефолтный флаг, при отсутствии спец.условий). Ma$ter
Если гулаг есть (как объект в игре) - от всегда 'включен'. Про отключение можно говорить только условно ...
Гулаг 'отключен' тогда, когда в нем возможное кол-во населения = 0, ну или имеются работы, заведомо никому НЕ подходящие и т.п.
Artos
Но я все рано не могу п**5001001a66cf24ce67c0** return 0
end
[/code]
Получается что здесь написано:
Если гулаг не активен и есть инфопоршень, то возвращаем 1, а если поршня нет, то возвращаем 0. В зависимости от того что возвращается, активны различные работы. Но вот пример - пришел в гулаг какой нибудь НПС, и взял работу. Гулаг становится активным (в нем же есть работающий НПС) и если посмотреть код скрипта дальше то после того как гулаг стал активным будет возвращается 1 или 2. И НПС будет занимать уже другую работу. Получается что работа с state = {0} никогда не используется?
Ma$ter
У этого гулага (agr_factory_assault) 3 (три) состояния:
0 - идут к обороняющимся
1 - сражаются на улице
2 - идут к Кроту
Дефолтное 0 (это как правило у всех гулагов).
Т.о. в дефолтном состоянии неписи подтягиваются (идут от мест спавна иль иных) к месту сражения.
Если в этом состоянии будет получен упомянутый инфопоршень - состояние переключается в 1, т.е. неписи начинают сражаться где есть (обычно у ворот), а не продолжать подтягиваться ...
При дальнейшем развитии событий будут получены другие инфопоршни и ... закончив сражаться неписи пойдут к Кроту (во внутренний дворик).
Т.о. состояние 0 - это начальная фаза сценки, которая используется ДО начала сражения. Игрок может находится на другой локации - а неписи двигаться к своим местам, которые определены работами в состоянии 0.
В конкретном примере состояния не обратимы (сценка однократна и инфопоршни НЕ удаляются). В иных происходит постоянное переключение. Например в деревне новичков на Кордоне (условно): 0 - все спокойно/отдыхаем, 1 - опасность/обороняемся, 2 - готовимся к нападению наемников, ...
Как видишь, 0 - основное активное состояние гулага.
erlik
Если интересно, то добавил твою схему в основную сборку Симбиона, подрихтовав конечно :-). Ссылка на минификс со схемой есть в топике симбиона (разработка).
Основное:
- сделал нормальное (активное) включение схемы, заменив пассивное ожидание ...;
- исходя из исходных фильтров (зоны/рестрикторы, маски имен, ...) схема обрабатывает минимально необходимое кол-во неписей, экономя ресурсы;
- ну и др.правки, которые могут быть интересными для тебя в дальнейшей работе над нею.
Спасибо за схему! :-)
В общем у меня при открытии модельки она не вся белая как на картинках, а состоит из белых точек.
Это вертексы. Отключи режим Wireframe и будит как на картинках.
Когда я ее выделю путем нажатия контрала и какой то там буквы то эти точки становятся красными.
После этого я делаю Vertex - Weld Together и ничего не происходит.
Происходит! Модель сглаживается.
Смотри журнал Черт бы побрал эту Зону, нигде от нее спасения нет. Куда ни
пойдешь, с кем ни заговоришь - Зона, Зона, Зона...
win win насколько знаю нет. Только если на сервере будет это-же дополнение (ТОЗ-34) и у всех остальных играющих тоже.
1. Вы сейчас в интернете
2. Вы на сайте stalker-portal
3. Вы читаете
5. Вы не заметили, что отсутствует пункт 4
6. Вы это проверили
7. Вы улыбаетесь
8. Поставь себе в подпись и нас будет больше
Помогите, как сварганить такое:
1 Freeplay start (чтоб по желанию включить)
2 Вырезанные монстры
3 Мод типо "Напарники"
4 Новые оружия, костюмы, артефакты(можно и без артефактов)
5 Alife, чтоб все свободными были
Вовка_Снайпер
1. Скачай Freeplay start mod.
2. Модов с вырезанными монстрами дофига. Скачай вырежи.
3. Схема "Компаньоны"
4. Сталкер-вики в помощь.
5. Погугли на эту тему. Есть мод для свободного шатания НПС.
Народ какой параметр у нпс отвечает за дальность с которого они видят гг и еще с которого они стреляют по нему?
Horrible area modВидео в журнале
--------------------------------------------------------------------
Важнейшая задача цивилизации - научить человека мыслить
1. Как сделать динамичную погоду в мультиплеере?
2. Как нацепить очки на модель?
3. Как убрать следы от выстрелов?
4. Как сделать так, чтоб травы было на максимуме и нельзя было поменять это количество?
добавлено спустя 16 минут
5. Почему редактирования ттх оружия не затрагивают мультиплеер и как сделать, чтоб затрагивали?
отредактировал(а) STALKER-DRUZIA: 08-03-2011 13:16 GMT3 час.
Всем привет... Люди я в разочаровании.... Помогите по SDK 0.4. При добавлении лестницы (прозрачной, что бы лестница работала) выдает ошибку: error scene has 2 non associated face. Что делать? Помогите очень прошу...
Люди может кто подсказать название camera_effects сильного головокружения?
Который отыгрывается перед показом "снов" в лабораториях.
1. Вы сейчас в интернете
2. Вы на сайте stalker-portal
3. Вы читаете
5. Вы не заметили, что отсутствует пункт 4
6. Вы это проверили
7. Вы улыбаетесь
8. Поставь себе в подпись и нас будет больше
Всем привет... Люди я в разочаровании.... Помогите по SDK 0.4. При добавлении лестницы (прозрачной, что бы лестница работала) выдает ошибку: error scene has 2 non associated face. Что делать? Помогите очень прошу...
verter12356, после того, как добавил объект, в разделе Edit Mode выбери Sector, потом в разделе Command выбери Remove Default, подтверди удаление, после чего здесь же нажми Create Default. Потом в разделе Edit Mode выбери Portal и в разделе Command выбери Compute All Portals. Подожди пока выполнится операция, это может занять от нескольких секунд до нескольких минут. Сохрани сцену и проверь Scene --> Validate.
Не знаешь случаем как бороться с вылетами в Мертвом городе. Вылеты происходят если некоторые объекты заспавнены, неважно какие, как будто бы там есть лимит на объекты.
Сталкивался кто-нибудь с такой проблемой, что в Particle Editor-е не работал "модификатор" kill old. Если знаете в чём причина подскажите.
З.Ы. версия СДК 0.4
S.T.A.L.K.E.R. Secret of the Zone: Gunslinger's Story. Prologue - разработка.
Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.