В последнее время Рокет расщедрился подробностями о разработке и снял свое табу на общение в соцсетях.
В связи с массой личных обстоятельств и нехваткой времени я выкладываю здесь дайджест всего, что я смог нарыть на реддит, форуме и т.п. Многое здесь не является дословным переводом. Многое здесь разжевано во избежание ненужных вопросов. Многие цитаты с одного ресурса дополнены соответствующими по тематике фактами с других ресурсов.
В данном тексте нет опечаток и ошибок. Есть только компромисс между моим желанием донести вам информацию и отсутствием времени на редактуру. Исправления принимаются только в личку и в комментариях будут сноситься без объяснения. Прошу прощения за такой аляповатый подход к делу, но большое чудо, что я вообще смог все для вас собрать.
Структуры у текста нет. Каждый абзац это любопытный (на мой взгляд) факт разработки. Все факты являются переводом слов Рокета, либо пересказом его слов. Кое-где есть дополнения от меня, которые, как мне кажется, помогут лучше понять суть некоторых высказываний.
Собственно сам текст “под катом”.
PCGamer, при всем моем уважении, так переврал мои слова, что хочется навсегда воздержаться от контактов с про гейм-журналистами и уйти к вам, в соц-журнализм. Как я не пытался подчеркнуть, что релиз не задерживается в прямом смысле, потому что нет дат. Как я не пытался подчеркнуть, что оптимизация началась и работа идет полным ходом… Все равно, в статье звучит “релиз откладывается” и “плохая оптимизация игры”. Да, после моих претензий статью сняли с публикации, что похвально, но осадок остался.
Само собой я рассчитал для себя примерный период для релиза игры, но это не железная дата и может измениться в силу необходимости, так что я не стану никаких дат озвучивать, так как это породит волну бесполезных разочарований в случае изменения даты.
Ближний бой. Что мне нравится: бьешь или стреляешь в тело и соответствующие кости модели от удара смещаются (движутся от удара), кровотечение из точки попадания, повреждения рассчитываются только на сервере, у разных предметов разные виды атаки, атака разных частей тела вызывает разные комбинации повреждений и последствий. Но есть и минусы, которые нужно решать: управление, странные анимации при низком серверном фпс, звуки повреждений и неверное еще что-то, не помню.
На релиза BIS будут запускать свои сервера у одного провайдера. Сам провайдер сможет тоже запускать свои сервера. Точно не помню, но кажется была цель добиться на релизе, для начала, единовременного подключения 100 000 игроков.
Противогазы и респираторы будут в игре и будут иметь соответствующий функционал. Однако сейчас они нефункциональны, так как все силы брошены на доведение альфа-билда до ума. После релиза мы вернемся ко всем таким игровым предметам и займемся их функционалом.
Касательно ночи и освещения. Я сам приложил руку к подготовке новой системы дождя, “божественных” лучей, новых линзовых бликов и т.п. Но мы думаем сделать эту систему с нуля и поэтому хотим убрать ее из плана разработки альфа-билда, чтобы не отвлекаться от релиза.
Не ищите намеков на даты или близость релиза в наших отчетах и твитах. Мы не шифруем ничего и не прикалываемся на эту тему. Если мы постим скрин, то это просто скрин. Скрин трех патронов, например. В нем нет ничего более, чем три патрона. Но люди склонны читать между строк все, что захотят.
Размер клиента будет примерно 10гб. Сервера - около 600мб.
Системные требования? Могу пока предположить исходя из своих знаний наших технологий, что dual-core будет достаточно. Существенно поможет наличие 2 SSD: на одном ОС, а на втором игра. Более 2Гб памяти не должно потребоваться как для видео, так и для оперативки.
А серверу лучше брать самый мощный процессор. Больше мощей проца - больше зомби, лута, игроков. Оперативки ему хватит и 400Мб.
Марек, генеральный директор BIS, сказал, цитирую: “Это действительно новый дивжок.”
Каждый предмет одежды обладает своими специфическими атрибутами. Например, защита от холода, намокания, от ударов предметами ближнего боя, от баллистических повреждений и инфекций. В некоторой одежде есть спецатрибут, позволяющий использовать ее слот как кобуру для пистолета.
Мы работаем сейчас над созданием необходимых элементов клиентского функционала. Это не влияет на сроки релиза. Среди функционала такие вещи как: создание персонажа, браузер серверов, информация о текущем сервере, некоторые Steam фичи для поиска своих друзей на серверах.
Релиз задерживается в первую очередь из-за проблем с оптимизацией производительности. При 15 фпс серверной части можно держать в игровом мире 50 игроков, 2000 зомби и 25000 объектов лута. При этом у нас есть огрехи в системе синхронизации данных из-за неприспособленности движка к работе с большим количеством объектов. Беда в том, что происходит слишком много текстовых сравнений референсов и при этом сравнения происходят слишком часто во время синхронизации. Здесь у нас есть обширное поле для оптимизации и это требует времени. Есть так же другие неприятные баги, как баг со звуками некоторых действий, которые выстраиваются в очередь и затрудняют синхронизацию.
И главная проблема, задерживающая релиз - синхронизация всех подобных переменных для каждого игрока на сервере, а это на практике совершенно неэффективно и ресурсоемко. Как раз на этом сейчас фокус разработки и мы переделываем эти механизмы. Условно, раз в 1 FPS сервер проверяет 30000 предметов и пытается синхронизировать. Мы хотим разбить предметы на две категории, два массива - первый (чистый) будет содержать статичные объекты, которые ждут пока с ними начнется взаимодействие игроков и такой массив проверять серверу не нужно до контакта, второй массив (грязный) - это предметы у игрока и их будем проверять регулярно. В этом направлении уже многое достигнуто, но работа не закончена.
В данный момент у нас есть базовый функционал для 10-20 игроков. Новые зомби уже в игре и вполне хорошо себя зарекомендовали при поиске целей и выборе пути. Однако при снижении фпс сервера они начинают глючить сквозь стены и лагать в других аспектах. Они все еще нуждаются в существенной доработке. Например, симуляция для игроков происходит 20 раз в секунду, а симуляция зомби 10 раз в секунду. Если фпс сервера падает ниже 20, то есть задержка синхронизации игроков. Если падает ниже 10 - проблемы с зомби. Неделю назад у нас на тесте был замер фпс сервера и при 5 фпс все было вполне достойно, за исключениям варпающих сквозь стен зомби.
Не ищите здесь никаких маркетинговых стратегий и уловок. Мы не выпускаем альфу, потому что добиваемся стабильной производительности сервера и клиента. В первую очередь серверной оптимизации будет достаточно для релиза. На это и брошены все силы.
Поверьте, я (Рокет) не страдаю перфекционизмом. Выйдет игра и вы это поймете. Сейчас не решены проблемы с проивзодительностью мультиплеера, а DayZ - это мультиплеер. Так что без стабильного мультика выпускать игру нельзя. Дело не в идеальности, а в функциональности и только это наша цель. Людям придется заплатить за новую игру, а многие чувствуют, что уже вложились в DayZ после покупки ArmA2 для игры в мод и я это понимаю. Многие вложили массу времени и сил в сообщество и нашу поддержку. От нашей игры все ожидают определенный уровень функциональной стабильности, которая оправдает и затраты и вложения и вообще подтвердит ценность проекта. И даже при недоделках в дизайне и деталях, игра, которая стабильна в мультиплеерной части и функционале будет достойна внимания и оправдает ожидания.
Производительность игры в лесах и полях очень очень достойная. Однако в городах есть проблема критического падения фпс. Особенно если направить взгляд к центру города. Этого быть не должно и мы решим эту проблему в любой случае. Проблема кроется как минимум в некоторых текстурах зданий. В целом же, не учитывая эту недоработку, тестеры единогласно признают прирост производительности и комфорта\плавности в игре по сравнению с модом.
Серверная архитектура изменена в корне. Теперь количество игроков будет зависеть только от мощности серверной машины. Теперь главный серверный ресурс - процессор. И увы, на тестах не замечен был прирост от наличия нескольких ядер. Решала все мощность основного ядра. В сервере DayZ критически снижен сетевой трафик и даже пинг, однако процессор будет “решать”. Мы ориентируемся на машины, которые могли держать типичный выделенный сервак ArmA2 с модом. К релизу планируем начать с 50 игроков на сервере. Максимальное количество игроков для Чернаруси уже было определено - 150 игроков и мы после релиза будет постепенно расширяться к этой цифре. И мы обязательно сделаем linux сервер, когда завершим Windows сервер. Мы бы конечно хотели бы и клиент поставить на linux, но это пока большой вопрос.
Очень прошу не путать сетевую архитектуру и производительность. Это разные аспекты. У нас два ведущих программиста, которые полностью заняты производительностью. У нас есть два старших программиста, которые работают по мере надобности над “багофиксами”, сетевым кодом или производительностью. И есть два программиста для менее срочных задач. Один работает исключительно над физикой и регдоллом, а второй занимается рендером. Отдельный программист занимается спавном лута и центральной серверной архитектурой. И еще в штат добавится 1 внештатник и 2 штатника на разные другие аспекты игры.
Так что, проще говоря, над оптимизацией могут работать несколько человек, даже дизайнеры умудряются оптимизировать ресурсы и даже я кое-что исправлял.
Новая система инвентаря сейчас представляет из себя эдакую беспорядочную сумку. Мы допустили некоторые небольшие ошибки в логике инвентаря, которые решить можно будет либо задержав релиз, либо уже после релиза. Однако в любом случае это шаг вперед, хотя бы из-за реализации таких механизмов инвентаря как: группирование предметов, намокание, крафт, контейнеры, повреждения, одежда, оружие, кобуры для пистолетов, сумки, оружие ближнего боя, бензопилы, маски, перчатки, ботинки. Все, что вы только хотели и даже износ и шумность обуви, зависящие от типа покрытия.
Что дальше?
Мы продолжаем оптимизацию билда. Вам же рекомендуем обратить внимание на вышедший в Steam Project Zomboid, который является отличной игрой, а так же стал большим источником вдохновения для DayZ в плане дизайне и функционала. Рекомендуется всем неравнодушным к DayZ.
Далее подборка изображений в рубрике “Для провтыкавших” !!!!!ТРАФИК!!!!!
(с)[свернуть]