Перейти к контенту

Cюжет "Чистое Небо" на движке 1602. Архивы ЗП для движка 1510.


Рекомендуемые сообщения

Сначала хотел использовать анимпоинты, но затем разобрался со смарткаверами, оказалось ЧН-ские работают как надо (с автоматом):

162742271abd455f0c7de0c8cd6775c51fadf028

Изменено пользователем Дизель

andreyholkin.gif

rod_cccp.gif

 

Ссылка на комментарий

Различие смарт-коверов ЧН и ЗП

Скрытый текст


CS (cse_smart_cover properties):

; cse_smart_cover properties
unk1 = cover_loophole_8_11
unk2 = 0,15,10
unk3 = 1

 

COP (se_smart_cover properties):

; cse_smart_cover properties
cse_smart_cover__unk1_sz = combat_front
cse_smart_cover__unk2_f32 = 0
enter_min_enemy_distance = 15
exit_min_enemy_distance = 10
cse_smart_cover__unk3_u8 = 1

; se_smart_cover properties
last_description = combat_front
loopholes = stand_front_left,1,crouch_front_left,0,crouch_front_right,0,stand_front_right,0,crouch_front,0

 

Общее:

unk1 = cse_smart_cover__unk1_sz

unk2 (три параметра) = enter_min_enemy_distance, exit_min_enemy_distance, cse_smart_cover__unk2_f32

unk3 = cse_smart_cover__unk3_u8

 

По ЗП:

cse_smart_cover__unk1_sz повторяет last_description

loopholes = анимация, цикл (наверно)

 

Скрипты:

В ЗП скриптах вырезаны смарт-коверы ЧН в smart_covers.script

В loopholes ЧН нет параметров (из-за их отсутствия вылет)

                danger_fov_direction  = vector():set(-1,0,0),
                danger_fov = 45.0,

 

 

 

 

 

Изменено пользователем Дизель
  • Полезно 1

andreyholkin.gif

rod_cccp.gif

 

Ссылка на комментарий

Прогресс. Впервые, наверно! Тест для ЧН на базе движка ЗП. Спавн-мод.

Реанимация смартковеров, Сидоровича, мутантов (плоти и кабанов), нпс (без особой логики), торговли, некоторых диалогов. ЗП база скриптов и конфигов. Пример смартковера ЧН у Бармена, у некоторых вместо смартковера анимпоинты (потом заменим). Движок 1602 (есть в комплекте). Читается вся база ЧН. Аллспавн пересобран под версию ЗП (спавн не весь, только для Кордона и Болот, без рестрикторов). В комплекте ACDC. Переход на Кордон с тыла здания, где рождается ГГ (точнее под ним, ниже первого этажа).

Скачать 580Мб ЯД.

 

 

 

Изменено пользователем Дизель
  • Нравится 4

andreyholkin.gif

rod_cccp.gif

 

Ссылка на комментарий

В логике [remark] ЧН и ЗП есть различие по обращению направления

Если в ЧН target = actor проканывало, то в ЗП только так target = story | actor

Заметил вылет на Кордоне под мостом-тоннелем у вояки-беглеца (он же водителя).

Просмотреть нужно все remark, воизбежания эксцессов.

 

В логике [smartcover] ЗП наблюдается баг (скорее разрабов движка ЗП), когда нпс без автомата, наступает паника или тупое прицеливание пистолетом непонятно куда. Возможно придётся делать автомат-невидимку и кидать нпсам ( не для боевых коверов конечно) в профиль.

406b539b50c81788d0c644cbaf397ab81fadf028

Изменено пользователем Дизель

andreyholkin.gif

rod_cccp.gif

 

Ссылка на комментарий
В 15.08.2017 в 23:04, Дизель сказал:

В логике [smartcover] ЗП наблюдается баг (скорее разрабов движка ЗП), когда нпс без автомата

Так юзай animpoint, в чем проблема? Зарегистрировать анимации по аналогии с существующими и профит. В ЗП как раз эта схема и нужна для таких смарт каверов.

 

Что касается target в схеме remark, то в ЗП сделали удобнее, имхо.

    if target_type == "story" then
        local story_id = parse_target(target)
        target_id = get_story_object_id(story_id)
        target_initialized = true
    elseif target_type == "path" then
        local path, point = parse_target(target)
        point = tonumber(point)
        if point then
            target_pos = patrol(path):point(point)
            target_initialized = true
        end
    elseif target_type == "job" then
        local job, gulag = parse_target(target)
        if gulag then
            gulag = xr_gulag.get_gulag_by_name(gulag)
        else
            gulag = xr_gulag.get_npc_smart(npc)
        end
        target_id = gulag:idNPCOnJob(job)
        target_initialized = (target_id ~= nil) and true
    else
        instruction(obj, target_str)
    end
target = story | actor or story_id
target = path  | patrol_path, point_id
target = job   | job_section, smart_name

 

Извините, что без спойлеров. Там код плывёт.

Изменено пользователем BoBaH_671
Добавлено Overfirst,

Что происходит с этими спойлерами? Никак не могу нормально оформить пост.

  • Полезно 1

Ранее был известен под ником BoBaH_671.

Ссылка на комментарий

@BoBaH_671, есть разница в повороте анимаций  loophole_name и avail_animations. Разница в 90 градусов.

Если loophole_name я еще знаю как скриптово повернуть, то avail_animations я пока не сильно дружу. Вариант крутить смартковеры отпадает - это нельзя делать.

Еще момент, то что вся логика боевок завязана на loophole, и менять скрипты под avail_animations не рационально.

andreyholkin.gif

rod_cccp.gif

 

Ссылка на комментарий
В 12.07.2017 в 00:32, Дизель сказал:

Исправлен движковый баг разработчиков, с рендером вокруг ГГ

Дак было предложено мной давным давно еще в Закромах Родины на Gameru.net :big_boss: ссылка на пост  позже я понял в чем причина и вот зимой вовсе на корню его вырезал в своем коде движка также нужно было просто три параметра выставить и от куба и пикселя нет.

Скрытый текст

r2_sun_far 51.

r2_sun_depth_near_scale = 1.f

r2_sun_depth_near_bias = 0.f

Интересная задумка когда то тоже пытался реализовать такое только двиг ЗП на ресурсы ЧН натянуть дальше клиент синхронизации не продвинулся ловил движковый вылет в логе нечего вразумительно написано не было потом вскоре удалил все хоть и было обидно целую неделю ковырял и тут на синхронизации движковая параша.

Может и я свои 5коп вставлю в это дело :biggrin: три скрипта для ЧН что бы выносить из спавна custom_data аномалий и смартов как это сделано в ЗП спасибо за помощь конечно naxac помог мне в свое время ссылка

  • Полезно 2
Ссылка на комментарий
В 12.07.2017 в 00:46, Дизель сказал:

Замечены первые предупреждения, не приводящие к вылету, на момент начала игры.

! attempt to use non-existent INFOPORTION [ui_talk_show]
! cant find corresponding [id] for action_name

Это лечится добавлением в info_portions.xml вот такого куска текста:

Скрытый текст

	<info_portion id="ui_talk_show">
		<disable>ui_talk_show_hide</disable>
	</info_portion>
	<info_portion id="ui_talk_show_hide">
		<disable>ui_talk_show</disable>
	</info_portion>

 

 

  • Полезно 2
Ссылка на комментарий
В 23.07.2017 в 21:49, Дизель сказал:

@Zagolski , специально сегодня смотрел ядра - одно только работает в ЧН. Смысла нет - смысл есть. Да и вообще скоро, пора валить на Юнити. Ковыряем для того, что бы ковырять. Чем бы дитя не тешилась, лижь бы ....(сами знаете).

А чем еще заняться?

За привязку к ядру отвечает всего лишь одна строка в x_ray.cpp ее можно закомментировать и тогда процесс будет разпредилятся по всем имеющимся но только без фанатизма если процессор многоядерный то бишь больше 8 потоков могут быть фризы лаги и непонятные тормоза, а если все же вы хотите это сделать то придется писать лоунчер к нему что бы двиг юзал 4 потока мысля нагрянла в виде батника с такой вот реализацией :biggrin:

Скрытый текст

start /affinity 0F bin\xrEngine.exe

Поясню, Все значения в CMD  имеют шестнадцатиричное представление чисел, и ядра процессора - CPU,  Так же имеют такую подпись. 
Значение ключа affinity
01 - CPU0  1 ядро
----2-хъядерники----
02 - CPU1  2 ядро
03 - CPU0+CPU1    нагрузка на 2 ядра для 2-хъядерников
----3-хъядерники----
04 - CPU2   3 ядро
05 - CPU0+CPU2  Нагрузка на 1 и 3 ядро - вариант для 3-хъядерников
06 - CPU1+CPU2  Нагрузка на 2 и 3 ядро - вариант для 3-хъядерников
07 - CPU0+CPU1+CPU2  Наргузка на все 3 ядра
-----4-хъядерники-----
08 - CPU3  4 ядро
09 - CPU0+CPU3  Нагрузка на 1 и 4 ядро
0a - CPU1+CPU3  Нагрузка на 2 и 4 ядро
0b - CPU0+CPU1+CPU3  Нагрузка на 1,2 и 3 ядра
0c - CPU2+CPU3  Нагрузка на 3 и 4 ядра
0d - CPU0+CPU2+CPU3 Нагрузка на 1,3 и 4 ядра
0e - CPU1+CPU2+CPU3  Нагрузка на 2,3 и 4 ядра
0f - CPU0+CPU1+CPU2+CPU3  Нагрузка на все 4 ядра

думаю пригодится

Извиняюсь что роз тянул на три поста так уж получилось.

Изменено пользователем Stalker_Monolit
  • Полезно 1
Ссылка на комментарий
4 часа назад, Stalker_Monolit сказал:

 

  Скрыть

0e - CPU1+CPU2+CPU3  Нагрузка на 2,3 и 4 ядра

0f - CPU0+CPU1+CPU2+CPU3  Нагрузка на все 4 ядра

 

Спасибо, полезная инфа для ЧН. Но максимальное количество ядер не работает.

У меня проц 4 ядра и тот ключ 0f не робит. Видимо система оставляет одно ядро себе.

0e - а вот это работает на 3 ядра.

Я думал пропадут тормоза от распределения, но по факту мало что изменилось. Оператива 8 Г.

Видимо  причина в моей видеокарте 1Гб.

Изменено пользователем Дизель

andreyholkin.gif

rod_cccp.gif

 

Ссылка на комментарий
1 час назад, Дизель сказал:

У меня проц 4 ядра и тот ключ 0f не робит. Видимо система оставляет одно ядро себе.

0e - а вот это работает на 3 ядра.

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

Нужно в x_ray.cpp найти вот эту строчку удалить или закомментировать:

Скрытый текст

SetThreadAffinityMask		(GetCurrentThread(),1);

И заново скомпилировать исполняймый файл xrEngine предварительно его очистив перед правкой.

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

Скрытый текст

Забыл сказать что /affinity это типо "Задать сходство" в диспетчере задач любой процесс можно отвязать от первого ядра нужно с начало указать второе ядро нажать ОК а потом все тогда произойдет отвязка но такие манипуляции для ленивых :laugh:

 

Изменено пользователем Stalker_Monolit
  • Полезно 1
Ссылка на комментарий

@Stalker_Monolit, отвязал в движке - заработал 0f

Скрытый текст

 

05e1750284511c556a99b6053bee278a1fadf028


 

 

Скрытый текст

 

Звезда в шоке - у меня видяха 256мб (320я). Козлы продавцы - обманули - говорили было 1Г - а потому, что она интегрированная (оператива была 4Г).

Сейчас у меня оператива новая 8Г и видяха жрёт 4Г. Я ради прикола в Биосе поставил 256 родных и ЧН вообще тупит. А вот почему ЧН тупит на 4Г не понятно.

А у кого нибудь не тупит ЧН ( по кадрам фпс)?

 

 

Изменено пользователем Дизель

andreyholkin.gif

rod_cccp.gif

 

Ссылка на комментарий
В 18.08.2017 в 19:09, Дизель сказал:

Еще момент, то что вся логика боевок завязана на loophole, и менять скрипты под avail_animations не рационально.

Ничего менять не надо. В ЗП тоже есть smartcover. Есть и отдельная схема animpoint. Тебе её надо подключить. Может, что-то переписать. И всё. Ну, а тебе виднее, конечно. :)

Ранее был известен под ником BoBaH_671.

Ссылка на комментарий

@BoBaH_671, smart_cover ЗП доработан до четырёх параметров в движке, а ЧНский всего три.  'smart_cover::cover::best_loophole'

Возможно в скриптах и можно подредактировать - мне проще в движке, так как я не скриптёр. Да и писать скрипты зачем - если есть исходники. Нафиг туда сюда гонять функции.

Я вырезал can_fire и откатил до 3х параметров best_loophole.

1602

    m_enter_min_enemy_distance    = pSettings->r_float(section, "enter_min_enemy_distance");
    m_exit_min_enemy_distance    = pSettings->r_float(section, "exit_min_enemy_distance");
    m_is_combat_cover            = pSettings->r_bool(section,  "is_combat_cover");
    m_can_fire                    = m_is_combat_cover ? true : pSettings->r_bool(section, "can_fire");

 

Короче вот патч исходников 1602 для ЧН коверов, но это не окончательный вариант, так как я хотел еще подредактировать - объединить cse_smart_cover__unk1_sz и last_description в алспавне.

 

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

Изменено пользователем Дизель

andreyholkin.gif

rod_cccp.gif

 

Ссылка на комментарий
1 час назад, Дизель сказал:

@Stalker_Monolit, отвязал в движке - заработал 0f

  Показать

 

05e1750284511c556a99b6053bee278a1fadf028


 

 

  Скрыть

 

Звезда в шоке - у меня видяха 256мб (320я). Козлы продавцы - обманули - говорили было 1Г - а потому, что она интегрированная (оператива была 4Г).

Сейчас у меня оператива новая 8Г и видяха жрёт 4Г. Я ради прикола в Биосе поставил 256 родных и ЧН вообще тупит. А вот почему ЧН тупит на 4Г не понятно.

А у кого нибудь не тупит ЧН ( по кадрам фпс)?

 

Смотря какое разрешение экрана стоит :az1000106: у меня на ноуте с интегрированой intel graphics расширений 1366х768 fps как раз под 25 на DX10 ставлю 1280х768 уже 30-35 а на 800х600 то вообще под 50к fps так что это тоже играет свою роль.

  • Полезно 1
Ссылка на комментарий

@Дизель  - А у кого нибудь не тупит ЧН ( по кадрам фпс)?

Если ты имеешь в виду просадки фпс то да, они присутствуют постоянно и даже на мощных в.картах. Зависит от того куда и на что смотреть в игре. Самый сильный просад как раз на база чистого неба, если встать у дальнего костра, чтобы было видно оба костра, и смотреть в сторону Каланчи (болот). Просад может быть и до 20 фпс. Это я про динамич. освещение. Не смог понять причину этой каки. 

  • Полезно 1
Ссылка на комментарий

Можно сказать что Блота ЧН самая тяжелая карта во всей трилогий на мой взгляд просадки идут от большого количества участков с водой :laugh: хотя я могу ошибаться.

 

  • Полезно 1
Ссылка на комментарий

Кстати о Болотах. Есть мой старенький билд локации в СДК07, собранный как раз для тестов. Нигде ранее не выставлялась - эксклюзив! Полный спавн ЧН при распаковке в СДК.

На базе есть дырка в ограде, на воде нет радиации. Билд можно использовать и в ЧН и в ЗП, при наличии соответственно алспавна - предка из ЧН.

Координаты соответствуют Болотам ЧН. Есть всё для полного счастья, кроме алспавна (брать в ЧН - он же родственник аи-сетки ЧН).

Скачать 94.3Мб Я.Диск.

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

 

Скрины

Скрытый текст

d111db33c77b27aec2e29e79e8fdcdea1fadf128

43137c1e2d959e14af6d3053a4fabcdd1fadf128

 

 

 

Изменено пользователем Дизель
  • Нравится 2

andreyholkin.gif

rod_cccp.gif

 

Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
  • Куратор(ы) темы:

×
×
  • Создать...