Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
  • 0
Brekai1

DayZ Editor Loader как ускорить загрузку объектов?

Всех приветствую.

Карта Deer Isle , через Dayz Editor удалено множество объектов на карте (70к-100к) в основном заборы, трава, мусор и т.п. и добавлено не большое количество объектов.

Файл сохранен в формате dze и лежат в папке Editor Files, всё сделано в одном файле. Всё работает и прогружается, но.... При заходе игрока на сервер наблюдаются фризы(у игрока) 5-10 секунд  пока объекты прогружаются. В это время пока идёт загрузка видны удаленные объекты , после прогрузки они пропадают и всё работает как было задумано. 

В принципе с этим можно жить , но если есть вариант это пофиксить то  было бы здорово...

Перелопатил гугл - ничего не нашел.

Искал в дискорде Dayz Editor - тоже не нашел решения.

Решил спросить тут.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

  • 1

Никто тебе не ответил, ну что же, лучше поздно - чем никогда.

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

 

Любой сторонний маппинг будет нагружать сервер - это нормально, но его можно оптимизировать.

1. Много объектов:

1.1. Близко

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

Чем меньше общее количество объектов - тем легче подгрузка.

Чем меньше маленьких объектов по типу амуниции, мусора и т.п. тем легче подгружать маппинг в момент.

1.2. Средняя дистанция

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

Тем самым игрок пока идет по карте в зоне видимости происходит подгрузка и выгрузка объектов на клиенте.

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

1.3. Большая дистанция

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

 

Как это оптимизировать:

1. Маппить 1 локацию (город к примеру)

Если это большой город по типу Черногорска - то разделить маппинг на 3 - 4 файла.

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

2. 1 файл не должен привышать около 300 - 400, край 500 объектов внутри 1 локации.

Иначе будет падение фпс.

 

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

Иначе будут дополнительные фризы.

 

Как можно полноценно оптимизировать маппинг - пользоваться инструментом Tirrain Builder - это оригинальный редактор карт, он оптимизирован и не требует излишних модов.
Сервер просчитывает карту 1 раз и не держит в оперативе лишние данные, что сильно разгружает карту, тем самым можно создавать все что угодно + изменять ландшафт, но инструмент сложный и по этому все пользуются Dayz Editor.

Я в будущем изучу Terrain Builder и сделаю полноценные гайды для него, ведь - это более профессиональный и качественный инструмент, который позволяет более качественно создавать маппинг.
Я 100% что-то упустил, но даже эта информация даст хорошее понимание того, как лучше создавать маппинг.

Самое главное учесть нужно:
1. Не использовать 1 файл для 2 и более локаций.
1 - 2 файла = 1 локация.
1 файл не должен содержать в себе объекты на больших расстояниях.
Не нужно сильно удалять оригинальные объекты, если это не мешает маппингу и виденью.
Чем меньше ты удалил оригинальных объектов, тем лучше.
1 файл должен содержать в себе не более 300 - 400 объектов (Край 500) но не более - иначе это будет приводить к фризам.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
MagicByte MagicByte MagicByte
  • 0
07.04.2026 в 22:54, KirrieD сказал:

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

На основании пару ваших строк выше, уважаемый ИИ....Оптимизируйте пожалуйста такой мод как ApocalipticCityChernarus
эт одна локация-один файл, по 300-400 объектов.?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
10 часов назад, paranoyk сказал:

На основании пару ваших строк выше, уважаемый ИИ....Оптимизируйте пожалуйста такой мод как ApocalipticCityChernarus
эт одна локация-один файл, по 300-400 объектов.?

на форуме копипастить это же не оптимизировать ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Пойду локации для АОД по 30-35к объектов разобью на 70 файлов по 500 объектов) 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

@imhowin ....и всё это прописать через init....хотя через строчку json...более извращённие.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

гайд мусор для набива постов / попытка апнуть репу.
на нормальном железе нет проблем с маппингом лол
dze loader не идеален из коробки, но если его чуть-чуть переписать то во 1 можно сделать динамический маппинг на сервере с загрузкой и выгрузкой.
во 2 ускорить его загрузку.
сливать вам это никто тут не будет, поэтому не **бите мозг с людям с FAKE оптимизацией на древнем железе.
если у вас маппинг тормозит сервер - забудьте за нормальные и тяжелые моды типо ботов и т.д

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Дейз сам по себе движок не сильно мощный на нагрузку, у него есть ограничения чтобы сетевой канал не забился, да и не у многих игра
установлена на SSD диске и мощным процессором, по этому подгрузка объектов фризит комп, пока найдет и закинет в ОЗУ модельку и налепит поверх нее текстурку.

70к объектов довольно много, проблемы видно и при 100 объектах, но есть несколько взаимоисключающих вариантов как можно решить такие проблемы

1. Чтобы объекты грузило моментально, а не по очереди пока прилетают пакеты с сервера, можно изначально загрузить объекты захардкодив их в моды через скрипты (CreateObject), конфиги с сервера тянуть нет смысла, будет тоже самое.
Но обязательно локально, если через CreateObject то третий параметр должен быть true, дальше можно не писать

Object CreateObject( string type, vector pos, bool create_local = false, bool init_ai = false, bool create_physics = true )

Если через CreateObjectEx будешь ставить то третий параметр ECE_LOCAL

Object CreateObjectEx( string type, vector pos, int iFlags, int iRotation = RF_DEFAULT )


Грузить лучше чанками через for какой нибудь по классам, а если хочешь чутка замедлить шайтан машину то можешь грузить через таймер по 1 мс задержки, максимум 1000 объектов в секунду выйдет, но может поможет.

Только каждая функция держит не так много строчек, не больше 1000 наверное. Раскидать можно файлы руками или просить того же chatgpt сверстать питоновский одноразовый скриптик на сортировку
Таким образом мы получаем мгновенный старт загрузки всех объектов, а сервер не срет в сетевой канал каждому клиенту. 
Вот только и минусы у такого способа есть - игрок прикольно так похавает прогруза на железке, по этому придется комбинировать и создавать волшебство.

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

2. Вариант второй это зашить его в карту, но карту я не делал, из опыта подсказать не смогу.

В целом затея такая себе, делать 70-100к объектов, понимаю что красиво, но у всего есть лимиты и приходится приземлятся на низкие уровни работы приложений.

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

GetGame().IsClient()



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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
09.04.2026 в 09:07, paranoyk сказал:

На основании пару ваших строк выше, уважаемый ИИ....Оптимизируйте пожалуйста такой мод как ApocalipticCityChernarus
эт одна локация-один файл, по 300-400 объектов.?

Пишу второй раз, так как не получилось изменить вовремя первый ответ.

 

Хз к чему тут ерничать. Я лишь описал то, что сам увидел и обкатал на собственном примере и сервере.
Конечно я не профессионал в этом и могу ошибаться, но ты реально думаешь, что я ИИ или сделал ответ на основе выводов ИИ ?
Ну так если это так, го на сервер, что мы создаем - почекай как что работает и дай ответ.)

Server name: [Die of Survive] - Alfa
Address: 212.22.93.236:2372
Мне кстати бесплатные тестеры нужны позарез ?

А ну и чтобы ты мне ответ дал, вот тебе мой Дискорд: https://discord.gg/naa8tcW2H9
Трейды заодно потести - скажешь - лагает или нет.
Трейд 1 - Солнечный
Трейд 2 - Зуб
Трейд 3 - Выбор

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

1. В нем есть как я ранее говорил разделение локаций, в моде 77 локаций и для них используются 75 файлов dze, где примерно 40 превышает то значение 300 - 400 объектов на локацию.
Но и не исключает моего виденья в ОПТИМИЗАЦИИ, так как я тестил на собственных кастомных трейдах.

Мой 1-й трейд был расчитан на 1500 объектов, рядом друг с другом, что приводило к фризам.

Так же я не учел тот факт, что машина на которой стоит сервер не столь сильна, выдает всего 20 - 25 тыс фпс на ванильной черноруссии
При использовании достаточно обширного количества модов и собственного маппинга фпс упал до 13 - 16 тыс, что является нормой, так как юзается достаточно много скриптов и кор систем.
Мы модернизировали сервер очень сильно. По этому боимся, что сервер сильно просядет по ФПС, если я промаплю еще сильнее локации.

Так же в моде не удалялись почти оригинальные объекты, в любом случае, локации, что я глянул вообще ничего не было удалено, что дает возможность не удалять серверу каждый раз ванильные объекты - что дает так же не хилые фрисы.

2. Мод имеет возможность установки как из "коробки", так и самостоятельно через DayZ Editor Loader.

Установка из коробки заставляет владельца сервера кастомизировать init.c, что я вообще не собирался делать.

Установка в ручную заставляет использовать обычную установку через DayZ Editor Loader.

3. На основе того, что я уже описал можно сказать, что чел, который делал мод, понимал, что скорее всего из-за его подхода будут лаги и фризы, по этому сделал все возможное, чтобы упростить разработку себе и хоть как-то оптимизировать карту. Естественно она не подходит для таких серверов, где используется средняя по производительности машина - серверный фпс должен быть хотябы 30 - 40 тыс на ваниле. 

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

Вот для этого и потребуется Terrain Builder. Как я описал - это самый лучший инструмент для работы с картами, но он крайне сложен для освоения, а на это у меня нет ни времени, ни денег, ни возможности пока-что.

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

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

В целом я как-нибудь в будущем могу заюзать мод ApocalipticCityChernarus и посмотреть как он сильно (Слово удалено системой)ит фпс, но сейчас для меня это не главная задача.
По этому и делаю выводы на основе того, что знаю и что увидел.

Изменено пользователем KirrieD (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
12.04.2026 в 11:40, veonsary сказал:

гайд мусор для набива постов / попытка апнуть репу.
на нормальном железе нет проблем с маппингом лол
dze loader не идеален из коробки, но если его чуть-чуть переписать то во 1 можно сделать динамический маппинг на сервере с загрузкой и выгрузкой.
во 2 ускорить его загрузку.
сливать вам это никто тут не будет, поэтому не **бите мозг с людям с FAKE оптимизацией на древнем железе.
если у вас маппинг тормозит сервер - забудьте за нормальные и тяжелые моды типо ботов и т.д

Тут ты не прав, так как я сделал ответ тогда - когда сам как маппить и не убивать фпс сервера. (Я всегда ищу разную инфу, чтобы лучше понимать, что я делаю и как делать это более качественно).
И мне вообще нет дела до "Набивания постов" и "Аппы репы" - мне просто по(Слово удалено системой) на это.
Если бы моей целью был бы апп или набивание постов - я бы по любой хуйне писал вопросы и отвечал всем подряд, на сколько ты можешь увидеть - этого нет.

На любом железе может возникнуть проблема. Тут двояко.

По поводу редактирования кода DayZ Loader - я даже не думал об этом, но обязательно поищу инфу, может что накопаю.

Тут и никто не ебет голову с фейк оптимизациями на древнем железе.
Я лишь описал то, что сам уже на собственном примере протестировал и выяснил, конечно в будущем мне придется еще многое узнать.
Могут быть ошибки и не точности, так как я в создании серверов на DayZ не так давно.

И по поводу фризов у меня - я выяснил в чем причина была, но поверь - это моя личная ошибка и недочеты, так как я достаточно творческий человек и на 1 мелкую локацию влил более 1500 объектов.
Конечно прогрузка на стороне клиента будет фризить, так как требуется подгрузка этого всего. По этому я и выявил для себя границы для более качественного маппинга.

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

Изменено пользователем KirrieD (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

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

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

Зарегистрируйтесь для получения аккаунта. Это просто!

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

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

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

Важная информация

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

Поддержка