# Подготовка производительной, удобной, простой и полноценной платформы для будущих проектов нашей команды, а так же, для энтузиастов, которые уже взяли или возьмут нашу платформу для разработки собственных проектов
# Более открытая платформа, свежую версию которой, можно получить в нашем репозитории. Так же, будет возможно предоставление исходного кода серьезным разработчикам и друзьям нашей команды
# Это Движок LA 1.5.0, только он уже не будет афишироваться как разработка команды Dezowave, соответственно маркировка LA 1.5.0 - это техническое название
Примечания
# Некоторые из важных, но простых правок можно будет увидеть и в патче STALKER LA:DC 1.4.7, так как они были необходимы и там, чтобы решить некоторые проблемы.
# Этот проект, всего лишь, является платформой, поэтому, о целостности и проходимости старого сюжета STALKER LA:DC обсуждений не может быть ни каких(но попробовать его пройти, все так и, можно. Его пока что не вырезали). Старый сюжет не учитывался в подготовки платформы для нового сюжетного проекта
# Проект выкладывается для разработчиков и для общего теста стабильности технической части и для испытаний правок по производительности на различных системах, а так же, для привлечения новых участников в нашу команду
# Отчеты о не рабочем сюжете или сторонних заданиях, а так же, об озвучивании или о графических не стыковках на локациях - не рассматриваются
Список наиболее заметных и важных изменений
Расширение игрового процесса и функционала
# Исправлено влияние степени освещенности на ГГ и игровых персонажей, используемое для вычислений видимости ИИ
# В корне переделаны менеджеры игровой погоды (Движковый и скриптовый обработчик погоды).
1) Движок сам сохраняет свои внутренние параметры, связанные с погодой. Больше ни каких костылей, когда скрипт сохраняет\загружает то, что движок сам должен делать 2) Стабильное сохранение погоды 3) Сохранение FX эффекта погоды 4) Плавный переход от FX эффекта погоды в обычную погоду и наоборот 5) Исправлено применение погоды для закрытых, открытых и подземных помещений 6) Движок вызывает функцию level_weathers.select_weather только тогда, когда уже нужно приготовить следующий погодный цикл для произведения смены погоды
# В физ движок добавлен индивидуальный для объекта коэффициент гравитации. Пока используется только в гравитационной аномалии.
# Фикс неконтролируемого выбора типа гранаты при нажатии на Y. Список гранат нужно прописывать в weapons.ltx
# У вспл. подсказок меток на карте теперь есть параметр приоритета для контроля перекрытия других меток. Поможет исправить те моменты, когда метка ГГ или метка Области перекрывает другую метку и невозможно увидеть подсказку к нужной для игрока метке
# В сообщение о тайнике вернули название локации, где находится тайник
# Отдельный пояс для артефактов. Оба пояса теперь ограничены по вместимости и эта зависимость прописывается в настройках костюмов
# Шлем, ночное видение и костюмы блокируют друг друга, в зависимости от настроек у предметов. Блокированные слоты закрываются текстурой
# Фиксы по сохранению различных параметров у предметов, которые раньше сохранялись только при присутствии ИО в радиусе A-Life онлайна или вообще не сохранялись(Примеры: Кол-во патронов или тип патронов в рожке. Состояние предметов. Кол-во порций предметов)
# Гранаты теперь тоже должны вешаться на пояс чтобы их можно было использовать
# Добавлены быстрые слоты в инвентарь. Они заменяют быструю аптечку и бинт. Можно вернуть обратно как в СТАЛКЕР:ТЧ(для разработчиков)
# Различные исправления или изменения параметров состояний ГГ
# У аномалий min_start_power переименован в hit_power и теперь считывается из конфигурации аномалии а не из собранного .spawn
# Исправлена одна из ситуаций, когда игровой персонаж не реагировал на выстрел в спину или на звуки за спиной, пока он не увидел цель.
# Внедрена зависимость сложности ИИ игрового персонажа от его ранга.
# В движок внедрено считывание индивидуального файла настройки (ltx) для текстуры
# Исправления улучшений прицелов
# В LUA добавлен аналог функции math.random, которую не удалось починить. Добавлены Random.I и Random.F, которые используют движковые функции
# Добавлен полноценный респавн артефактов.
1) Аномалии теперь ограничены в количестве артефактов, которые она может заспавнить. Если же заспавненые артефакты подобраны - то аномалия может опять спавнить артефактов 2) Аномалии теперь не спавнят арты безперебойно, когда в нее попадают монстры. Таймер ограничивает такой спавн и, по умолчанию, он равен одному часу 3) Внедрен настраиваемый лимит на кол-во артефактов, которые одновременно лежат на всех локациях, но при этом они еще не были никем подобраны. Данный лимит вынесен в конфигурационный файл alife.ltx 4) Аномалии спавнят артефактов после выброса. Так же, можно включить и спавн артефактов по таймеру. Для этого надо настроить LTX нужной аномалии
# Контроль time_factor пуль через консоль
# ГГ блокирует флары от солнца в камере от третьего лица
# Фиксы звука дыхания ГГ и его улучшения
# Более 50 новых скриптовых функций, для облегчения получения свойств игрового и серверного объекта, а так же для различных менеджеров в движке
# В скрипты вынесено событие TRACK_MOVE для определения изменения положения UI ползунков
# Подсветка и патронов, и подствольных гранат в инвентаре для оружия с ПГ
# Полноценно сделаны порции для съедобных предметов
# Ограничения дистанции участия в бою для игрового персонажа. Теперь если два игровых персонажа состоят в одном скваде, но один из них сражается, в более, чем n метрах от него, второй ИП не переходит в состояние боя
# Доделан UI инвентаря под новые игровые фишки
# Добавлена настройка в главное меню, для ограничения максимального К/С
# Тестовый ребаланс параметров ИИ у игрового персонажа
# Возможность указать случайные количество патронов, порций и состояние предметов в тайниках и суплаях игровых персонажей и торговцев.
# Фиксы для некоторых реплик игровых персонажей. Добавлены новые реплики из СТАЛКЕР:ЗП, но адаптированны под наши скриптовые схемы
--upd 1118
# Во время боя - более опытные НПС реже произносят боевые реплики, чтобы не палить себя во время боя
# Если НПС не видит врага - то НПС будет стрелять по последней запомненной позиции, вместо стрельбы по реальному месту врага, так же стрельба будет с разбросом, чтобы увеличить шанс попадания по врагу в кустах
# Двойная проверка линии прострела на наличие союзных НПС, чтобы уменьшить шанс попадания по своим
# НПС будет стрелять по позиции услышанного врага, даже если его не видно, чтобы не давать врагу высунутся
# Различные фиксы, дабы избавится от бага "бесконечный дэнжер" у НПС после боя
# Фикс конфликта логик xr_kamper и xr_artefact_hunter
# Порезан групповой менеджер памяти для НПС. Взамен НПС реагирует на союзного НПС более детально(Например входит в денжер, если видит или слышит союзного НПС в дэнжере)
# В движке есть баг - когда НПС внезапно начинает видеть врага, даже если тот спрятался и не издает и звука. Пока в корне починить это не получилось но отдельно для проверки видимости ГГ используется отдельная проверку, подавляющая этот баг, что позволяет не портить стелс-прохождение
# Вылечен баг, когда после сохр\загр НПС сражу же обнаруживает своих врагов
# Портирована логика НПС "xr_help_wounded" и "post_combat_idle" из ЗП
# Небольшая правка для того, чтобы НПС предпочитал врага, находящегося на той же высоте, что и сам НПС.
# Если НПС услышал вражеский звук и нынешний выбранный враг не видим и дальше, чем новый враг - сконцентрироваться на новом врагу
# Убрана зависимость используемого профиля "реакции НПС на врага" от mental state этого НПС. Теперь это зависит от того, есть ли у НПС выбранный враг в его памяти - если враг не выбран - значит НПС на самом деле не в режиме денжера и профиль реакции должен быть "В покое". (mental state довольно так и не надежен, так как даже если НПС сидит у костра и рассказывает шутки - у него может быть бесконечный денжерный mental state из-за какой то поломки в скриптовой логике НПС) (Для фикса возможности прохождения в "стелс" режиме)
# Фикс метания гранат для НПС. Меньше ситуаций, когда нпс кидает гранату себе под нос
# Логическая обвязка шейдеров капелек и стекла шлема. Так же солнечные блики привязаны для отрисовки только при одетом шлеме
# Переделана логика хита у аномалии Тополиный Пух(Одна из особенностей - если идти сквозь него очень медленно - то хит не наносится)
# Трупы монстров (для нпс тоже можно настроить) обыскиваются без открытия инвентаря и части монстров требуют наличия ножа
# Во время бега - нельзя перезаряжаться
# Здоровье физических ламп теперь сохраняется на сервере и лампы не восстанавливаются после сохр\загр. Восстановление ламп настраивается в секции [alife]
# Скорость кровотечения ограничена до максимального значения 3.0
upd 0219
# Сохранение статуса включения ПНВ
# Фикс обрывания анимаций у оружия
# При открытом рюкзаке - игрок не может использовать бег и спринт
# Особые мап-споты для пометок важных мест на карте в КПК. Может быть прописано в инфопоршне. В конфигах есть пример
# Консольные команды hud_npc_detection и hud_npc_counter
# Тени травы от световых источников
Оптимизация и техническая часть
# Полностью рабочий префетч уи текстур + движковые репорты о просадках, при загрузке UI текстуры (Выводит список в лог при закрытии приложения). Теперь кешированные UI текстуры не удаляются из памяти при перезагрузки уровня Команда для консоли - prefetch_ui_textures- для включения кеширования UI текстур Команда для консоли - dump_ui_textures_for_prefetching- чтобы получить список проблемных UI текстур
# Движковый репорт о моделях - которые вызвали просадки при создании игрового объекта (Выводит список в лог при закрытии приложения) Команда для консоли - dump_visuals_for_prefetching - для получения списка
# Теперь движок выдает окно ошибки при вылете. Можно пропустить некоторые ошибки и продолжить играть\тестировать
# Консольная команда для грубой генерации списка текстур, у которых будет меньшее качество при изменения настройки "Качество текстур"
# Исправлен вылет при скрытии уже скрытого диалогового окна
# Возвращен скриптовый call stack. Теперь синтаксические и др. ошибки в скриптах получают расширенное описание в логе
# В консоле можно включить дисплей замеров самых основных функций подготовки кадра. Команды для консолиrs_updatecl_times; rs_sc_update_times; rs_mt_work_times; Позволяет наблюдать слабые, связанные с производительностью, места
# Команда для консоли для отображения нагрузки на ЦП от приложения rs_display_cpu_usage
# Своего рода фикс скриншота глобальной карты для DX 10\11
# Фикс не работающего мода -screnshot_tga
# Можно включить вывод id потока, который отправил сообщение в лог. Команда для консоли - rs_log_sending_thread_ID
# Отключили сохранение лога после каждого LUA сообщения(Это явно не правильный подход, из-за этого получаются просадки в режиме разработчика и напрягается диск)
# LUA сообщения теперь логируют номер кадра, в котором оно было отправлено и реальное время движка - для удобства замера времени работы скриптовых функций
# Новый счетчик используемой памяти приложением. Команда для консоли - rs_display_ram_usage. Отображает то же самое что "Working set" в диспетчере задач->монитор ресурсов
# В консоле теперь отображается позиция выделенной строчки ( _ ) в логе, так как возникает путаница, когда листаешь лог с большим кол-ом записей
# В консоле с помощью Shift+up\down можно листать по одной странице лога
# Исправлены различные отчеты движка в логе. Некоторые стали более информативными
# Команды для консоли - rs_engine_timers и rs_render_timers теперь более опрятно отображают информацию по производительности
# Исправлена команда для консоли - rs_fps. Теперь она использует свой таймер в коде, чтобы замерить время кадра и посчитать ориентировочное количество К/С (Теперь time_factor не влияет на просчет кол-ва К/С)
# Исправлен вылет при уничтожении еще играющего скриптового звука(Бывал при загрузке уровня во время различных скриптовых схем)
# Фикс зависимости управления от частоты кадров в Demo Record режиме. Теперь скорость полета и скорость поворота камеры не зависит от кол-ва К/С
# Ограничение К/С в главном меню до 144, так же, после загрузки уровня, сцена не отрисовывается пока игрок не нажал "Любую Клавишу"
# Новый ограничитель К/С в игре. Команда для консоли - rs_cap_frame_rate
# Переделан скрипт sound_theme. Теперь он грузит звуки только тогда - когда их надо воспроизвести. Время вхождение нпс в онлайн уменьшилось до минимума(Просадки времени кадра)
# Стандартные реплики персонажей теперь загружаются в отдельном потоке. Команда для консоли - mt_load_sounds_in_aux_thread- для вкл/откл
# Исправлена синхронизация потоков загрузки текстур с основным потоком (Случайный вылет при кешировании больше не возникает)
# Количество потоков загрузки текстур теперь зависит от кол-во потоков процессора.
# Код создание окна игры перенесен из СТАЛКЕР:ЗП
# Рабочий костыль для сброса просчета отсечения света. Когда движок больше не может считать отсечение - выполняется автоматический сброс. Лечит одну из проблем постепенной просадки времени кадра.
# Убрали эксклюзивность использования клавиатуры для нашего приложения. Лечит проблему с неработающими клавишами мультимедии на клавиатуре с мультимедийными клавишами input_exclusive_mouse и input_exclusive_keyboard для вкл\выкл эксклюзивности ввода.
# Важно! Отключена поддержка Shader Model 5 на DX11, до лучших времен(Тесселляция при этом работает)
# Пересозданы списки кешируемых объектов, так как старые списки могут включали в себя не используемые в игре модели
# Способ защиты критических мест в коде, где используется много-поток, переделан. Пропал вылет при загрузке игры связанный с многопоточными пред расчетами травы и HOM
# Теперь, запрос на сохранения лога приводит к созданию лог файла с индексом потока, который сделал вызов. Это позволяет исправить одну из ситуаций, когда лог после вылета остается пустым.
# Во время вылета - повторно сохраняется лог либо выдается сообщение о том, что "stack trace" был скопирован в буфер и может быть вставлен в текстовом редакторе. Это тоже позволяет исправить одну из ситуаций, когда лог после вылета остается пустым.
# Добавлено 3 новых вспомогательных потока, чтобы разгрузить дополнительный поток, который создали еще программисты GCS
1) Отдельный поток под MT_AI_VISION 2) Отдельный поток под MT_HOM и MT_DETAILS 3) Обработка инверсной кинематики вынесена в отдельный, четвертый, поток. Позволяет сократить время кадра в тяжелых сценах на 3-4 мс (+ 5-12 К/С)
# Восстановлен конфигурационный файл для оптимизации MT_ALIFE обновлений. Теперь он обновляет только определенное кол-во серверных объектов за кадр и, так же, ограничен по времени чтобы не тормозить своими вычислениями основной поток
# Фиксы по окну ошибок и поведению движка при возникновении ошибки
# Исправление вылета после того, как в окно ошибки не влезла вся информация об ошибке
# Оптимизация применения тесселляции на модели. Качество тесселляции теперь зависит от расстояния от тесселлироваемой модели до камеры вида игрока (Снижает нагрузку на ГП)
# Тест однопоточной производительности процессора. Команда для консоли - run_single_thread_test
upd 1118
# При необходимости загрузки текстуры непосредственно во время рендеринга кадра - эта текстура может быть загружена в дополнительном потоке. Консольная команда "mt_dyn_texture_load"
# Возможность выдавать и проверять незарегистрированные инфо-порции (Как в ЗП)
# Возможность указать story_id в xml-профиле персонажа
# Скриптовые ошибки теперь выдают окно ошибки и могут быть пропущены
# Разделение консольной команды r__geometry_lod на пять разных подкоманд, для возможности оптимизировать дальность ухудшения качества геометрии "r__lod_sprite_dist_f" "r__geom_quality_dist_f" "r__geom_discard_dist_f" "r__dtexture_dist_f" "r__ntexture_dist_f
# Возможность сбора имен отсутствующих текстур("monitor_missing_textures" "dump_missing_textures")
# LightTrack расчеты вынесены во вторичный поток
# Восстановлен и включен способ просчета партиклов во вторичных потоках.
# Пространственные тесты (RayTest, RayQuery and RayPick) переделаны под возможность доступа к ним сразу несколькими потоками. Без этого два потока одновременно делающие пространственные тесты получали очень сильные задержки, вплоть до падения фпс до минимального уровня
# Немного больше кода АИ вынесено в просчет во вторичном потоке
# Возможность вкл\выкл сразу всех многопоточных фишек по команде "mt_global_switch"
# В целом, используется более совершенный и в то же время прямолинейный способ наполнение менеджеров визуальной, звуковой и хит-памяти НПС. Так же НПС теперь крайне мало зависит от группового менеджера памяти, что делает его более индивидуальным и натуральным в плане поведения во время боя. Используется более простой и логичный способ выбора врага из этих трех менеджеров памяти
# Система очистки менеджеров памяти НПС от старых, давно не актуальных объектов
# Обход вылета по solutions.empty в логике боя НПС при загрузке сохранения(Происходил при сохранении и загрузке во время интенсивного боя)
# Консольная команда "hud_info_cname" для отображения cName при наведении на предмет или НПС
# Фикс краша связанный с менеджером визуальной памяти НПС
# Оптимизирован пакет сохранений памяти НПС, дабы избежать сохранения в файл через чур большого количество запомненных НПС-ом объектов
# Перед кешированием объектов проверяется список кешируемых моделей и наличие их в папке с ресурсами
# Для разработчиков шейдерных программ в консоле вынесены 4 переменных, которые экспортируются в шейдеры. r__test_shader_float_1-4
# В название скриншота записывается имя секции погоды
# В рендер введена схема оптимизации отрисовки нужной и важной геометрии. Теперь если геометрия достаточно мала и далеко от точки вида камеры - она не рисуется. (КК r__optimize_static_geom и r__optimize_dynamic_geom)
# Фикс неправильного уровня громкости звука дождя после загрузки сохранения
# Дождь и эффекты молнии теперь начинаются после половины пройденного времени между началом и концом цикла погоды. Например это важно для перехода из солнечной погоды в грозу
# Консольная команда "set_next_weather_to_choose"
# У многих элементов инвентаря теперь есть впл. подсказки (По сути они есть у прогрессбаров и dragdrop слотов)
# Параметр в xml профиле НПС <is_trader>1</is_trader>". Так же скриптовая функция для нпс "is_trader", для проверки этого состояния. Нужно для особой ценовой политики торговцев. Так же для того, чтобы НПС не выставлял на показ дорогие предметы в окне торговли (Все подвержено настройки для разработчика)
# Оптимизация отрисовки теней геометрии(на подобе оптимизации отрисовки геометрии) (r__high_optimize_sun_shad) # Оптимизация отрисовки теней травы # Фикс недостаточного радиуса far_plane по отношению к fog_distance. Вызывало глитчи с обрезкой геометрии в сильный туман
# Оптимизация использования текстур неба и других текстур используемых в менеджере погоды. Теперь погода не прогружает сразу все имеющиеся текстуры неба, а только те, что сейчас нужны (Сокращает использование ОЗУ)
# Фикс постепенной просадки ФПС на локациях с большим количеством св. источников
# Оптимизация обновления костей и волмарков на дин объектах, если они не попадают в отрисовку, но отбрасывают тень
# Actor Editor поддерживает "перетаскивание" файла из окна Windows Explorer в окно AE (он открывает модели напрямую)
# Если xrAI не нашел необходимых файлов из папки "level", он сообщает путь к файлу
# У LE немного улучшена обработка ошибок для ситуаций с ASSERTION FAILED. Больше контролируемых ошибок и меньше сбоев без лога - Отчет о дублировании спавн профилей в секциях a-life объектов - Некоторые действия теперь просто игнорируются, заместо ошибок без лога (в ситуации, когда действие не может быть выполнено) - Копия / Вставка объекта игнорируется, если что то не так
# Селектор цвета починен и обновлен
# Тесселляция может быть выбрана для Model shader в Shader Editor (Fix)
# LE получил обновление внешнего вида. Кнопки имеют промежутки между друг другом. Некоторые подсказки исправлены на понятные.
# Новый функционал:
# Новые кнопки, такие как, отмена выбора всех объектов в текущем режиме редактирования или во всех режимах редактирования; перенос камеры по координате и т.д
# Кнопка Авто-генерации ЛОД текстур.
# Пред просмотр модели объекта или спавн элемента
# Копировать / Вырезать / Вставить исправлен вылет в LE
# Небольшая оптимизация при групповом выборе в режиме Object. Теперь выбираются только видимые объекты, за место проверки абсолютно всех. В итоге, лаг при выборе уменьшился
# Код для Групповых объектов переделан, так как они не работают должным образом в SDK после 2014 года
# Исправлены ошибки видимости
# Исправления выбора
# Исправления группового поведения объектов и самого объекта группы
# Исправления для копирования / вставки групп
# движок LE наблюдает за количеством объектов на сцене при создании и уничтожении их блоков памяти, чтобы зарепортить об утечке памяти
# Кнопки ZoomExtend (в настоящее время Jump to object и View whole Edit scene) фиксированы и позволяют прыгать камере без вылетов и с правильным положением камеры
# Удалено Sleep for 1 ms которое делалось каждый кадр, поскольку он не имеет смысла и просто замедляет fps в редакторах
# У источника звука есть свой собственный собственный значок, который виден и позволяет разработчику легко найти его
# Mixed бины имеют включенную оптимизацию в Visual Studio, что может ускорить работу редакторов и компиляторов
# Компиляторы теперь читают fs.ltx из корневой папки тоже
# Selection Box отображается поверх всего, чтобы его можно было видеть всегда
# Добавлены режимы YZ, YX и Free Axis. Режим Free Axis использует направление камеры для преобразования позиции объектов
# Добавлена возможность перемещения объектов путем вытягивания края одной из осей(Как во многих современных 3д Редакторах)
# Изменено изображение для некоторых кнопок. Изменены подсказки для некоторых кнопок (Никаких Parent CS toggle, Non-Uniform Scale и т. д. Только понятные слова в подсказках!)
# Переосмыслили эффект от Parent CS toggle (ныне Global Transform Orientation) на перемещение объекта. Теперь разработчик может перемещать объект, используя локальную или глобальную ориентацию трансформирования
# Добавлена возможность нажатия клавиши «Alt» при перемещении объекта для лучшей точности(Замедление перемещения)
# Отображение кол-ва вершин и треугольников для статических мешей на нижней панели
# Список объектов статики теперь грузится в отдельном потоке, что позволило заметно ускорить запуск ЛЕ
# Внедрена таблица соответствий статических объектов для быстрой замены одних не хватающих на новые, которые есть в базе данных. Данная таблица настраивается через missing_objects_comp_table.ltx
# Лог SE_factory теперь тоже сохраняется при нажатии на "Flush" в окне лога в редакторах
# Общее расширение информации об ошибке при компиляции или при сборке карты в ЛЕ. Расширенная инфа по некоторым непонятным ошибкам в xrAI
# Исправлен баг с переносом камеры после применения "Undo" или "Redo". Теперь она переносится туда, где она была при выполнении предыдущего места
# Возможность двигать камеру по нажатию на настроенные в "Prefferences" клавиши.
# ВСЕ РЕДАКТОРЫ bugfixes: Теперь каждый редактор может использовать более 2048Mb памяти
# LE Добавлен флаг HQ Geometry, как в ЗП SDK
# LE Снято ограничение на количество воллмарков на уровне (увеличено с 500 до 5000)
# LE bugfixes: Исправление вылета при построении уровня на стадии Merge LOD textures Ошибка возникала из-за большого количества лод-объектов на локации (>128). Они просто не вмещались на текстуру 2048х2048. Теперь максимальный размер текстуры 4096х4096
# LE bugfixes: Исправлен краш при <invalid face(s). Removed>
# xrLC Добавлены новые ключи запуска -norgb, -notessellation и -lmap_quality
# xrLC bugfixes: Исправлен краш при отсутствии файлов *.thm и *.tga
# xrLC bugfixes: Убран вылет при нахождении инвалидных треугольников (invalid faces), теперь окно с ошибкой не появляется
uod 1118
# При расположении объекта без инструмента привязки - объект будет поставлен в точки относительного центре от камеры(за место полного отказа на расположение объекта)
# Если флаг "Use AI Locations" отключен и НПС мертв - не переносить его на АИ сетку при компиле спавна(Раньше переносил)
# Возможность создания прямоугольных погодных рестрикторов
# Добавлены ключи запуска для компиляторов, например для xrAI '-s_name' для указания имени файла спавна('-s_name all') или "-no_ok_message" для самозакрытия компилятора по окончанию работы без показа окна "OK". В целом, все параметры были переименованы. Запускайте -help
# Кнопка синхронизовать выделенное в редакторе текстур в СДК(для оптимизации работы с image editor)
# Фиксы различных отловленных крашей в Редакторах и Компиляторах
# Подсветка всех совпадений в поиске в обжект листе
# Добавлены кнопки "Reset Rotation", "Reset Scaling", "Delete", "Undo", "Redo" в контекстное меню в ЛЕ
# Различные мелкие правки для улучшения пользования компиляторами
# Исправлен баг с неработающими лодами для деревьев и др объектов статика(нужен перекомпил локаций)
# Фикс сломанной фазы создания карт теней в xrLC
# Повышен лимит для атлас-текстуры деталей и лодов (до 8192х8192)
# Размер лод-текстуры повышен до 128х128
# Поворот объекта в СДК на позицию курсора, если нажать ЛКМ и ctrl
# Зажатая клав. Alt замедляет скорость увеличения и поворота в СДК ЛЕ
Для программистов
# Вырезания мультиплеера
# Вычистка проверок Мультиплеера(сингл или мулти, сервер или клиент, тип игры, dedicated server, net_direct_connect)
# Вычистка различных уи окон специфичных для МПлеера. Удаление части классов нужны только для МП
# Объединение классов одиночной игры с общим классом игры. Удаление многопользовательских классов игры
# Частичное удаление сетевых ивентов и месаджей
# Удаление Battleeye кода
# Вычистка кода для авторизации клиента для МП. И прочие легкие вырезания типа списка карт для МП и тд.
# Рефактор стадий загрузки уровня с целью небольшого ускорения и белее "информативной" ловли крашей при загрузки уровня
# Где успел, в подпапках, добавил ссылку на физическое расположение sdtafx.h и pch_script.h
# Некоторые мелкие дебаг фитчи перенесены в релиз
# Некоторые функции переименованы, некоторые файлы вынесены в корень проектов для быстрого доступа и некоторые расфасованы по более логичным фильтрам
# Замена xrCriticalSection на Event из OpenXRay в местах синхронизации потоков. Более железобетонный способ синхронизации основного потока со вспомогательными.
# По удаляли незаюзанные инклуды из некоторых .cpp
# Удален GameSpy
# Возвращены вызовы xr_new, чтобы восстановить целостность менеджера памяти и избавится от неконтролируемых багов.
# Процесс выделения памяти, на всякий случай, защищен критической секцией, чтобы избежать неопределенное поведение в моменты многопоточного вызова xr_new и xr_delete
# Вывод сообщения в лог с именем потока, когда создается новый поток.
# Организованы вызовы на доступ к различным переменным, связанным с движковым или игровым временем
# Для ночного виденья ГГ создан отдельный обработчик. Теперь ночное виденье не связано с фонариком в плане кода
# Удален код Stalker-Net
# Исходный код xrAI, xrSE_Server и xrGame объедение по мере возможности. Удалено куча копипастных файлов. Теперь заметно проще вносить правки в Сервер(А-лайф), так как не надо копипастить три раза в каждый проект
# Удален BugTrap. Мы не используем его основное предназначение
# Некоторые Event заменены на прямой вызов функций
# Вырезан все рендеры, кроме r4 (DX 11)
# Рендер СДК отделен от игрового из-за не совместимости с dx 11 api и общей устарелости кода
# Код для r4 отформатирован и отчищен от кода для предыдущих рендеров и редактора
О команде и наборе в команду
Наша команда - это выходцы из русского сегмента разработчиков dezowave. Так как иностранная часть команды более не имеет интерес к разработки модификаций для Трилогии, мы решили создать свою команду (EMS-Team) для работы над следующим проектом. В данный момент у нас есть около 5-7 постоянных и еще нескольких временных разработчиков и все же нам всегда нужны еще руки. Разных профессий.
Крайне нужны: #Моделеры и Аниматоры, умеющие делать модели и анимации для игры Сталкер #Программисты по движку или скриптам
Всегда приветствуем: #Текстурщиков #Квестеров второстепенки #Человека, для оперативного балансирования новых конфигов #1-2 Тестера, готового тестировать не полноценный, на стадии разработки, проект.