В этот раз без патча, т.к. мы сосредоточены над выпуском системы опыта на следующей неделе. На prerelease-ветви вы можете протестить новый интерфейс, меню быстрого крафта и анимацию поднятия уровня. Также в этом блоге есть информация об улучшении геймплея на уровне перестрелок, новой броне и т.д.
Система опыта
Сейчас мы находимся на пути к переносу всех нововведений prerelease-ветви на основной клиент и запуску системы опыта 7 июля. Это вовсе не значит, что она идеальная, это значит лишь то, что её состояние отвечает требованиям для переноса на основу. Разумеется, после переноса мы продолжим её совершенствовать.
После осуществления переноса prerelease-ветви на основу, текущая версия игры (которая без системы опыта) будет перенесена на отдельную ветвь и при желании, вы сможете на неё переключиться и поиграть. Она более не будет поддерживаться или улучшаться по аналогии с Legacy, но в будущем будет достаточно весело зайти на неё и поиграть.
Касаясь прогресса, я наконец-то добавил на PR-ветвь систему "права собственности" и это была бомба. Однако, без багов и крашей, само собой, не обошлось, но сейчас всё уже исправлено. В данный момент я приступаю к написанию кода для расширения функционала этой системы. В частности, реализацию возможности зарабатывать опыт при использовании ресурсов. Например, при выпивании воды, которую вы "добыли" или при использовании своих размещаемых предметов (печи, верстаки) и т.д. Помимо этого, я намереваюсь устранить ряд раздражающих проблем. Например, вкладывание предметов в раненных игроков, после чего поднимать их или отсутствие перенятия "права собственности" после облутывания трупов (это реально раздражает, когда вы не хотите пользоваться чужими инструментами, дабы те, у кого вы их отобрали, не получали опыта). После этой работы, буду править и фиксить недочёты по мере их поступления.
Если вам не хочется ждать следующего четверга, можете опробовать новшества перейдя на PR-ветвь.
Меню быстрого крафта
С того момента, как мы перенесли крафт в отдельное меню, справа от меню инвентаря образовалось слишком много свободного пространства. Я немного "наполнил" эту область добавив меню быстрого крафта.
В нём отображаются лишь те элементы, которые вы в состоянии скрафтить в данный момент, то есть в зависимости от содержимого вашего инвентаря и открытых чертежей. Разумеется, меню ещё нуждается в доработке, поэтому не стесняйтесь писать свои мнения.
Мгновенные попадания снарядов
Ранее, когда вы стреляли из огнестрельного оружия, пуля выходила из ствола и летела с определённой скоростью, в полёте на неё воздействовали силы гравитации и сопротивления, после чего она замедлялась. Схема примерно такая же, как и в реальной жизни, однако, в игре пули двигаются немного медленнее, дабы эффект стрельбы был заметен.
На короткой дистанции эта "фича" выглядела дерьмом, однако на дальних дистанциях напротив - очень даже ничего. Поганность этой функции проявлялась ещё и в том, что перестрелки на коротких дистанциях в некотором роде зависели от FPS клиента, что вообще по своей сути ужасно.
В общем, теперь, после того, как вы стреляете из своего оружия, пуля моментально преодолевает несколько метров (в зависимости от типа снаряда), после чего продолжает лететь по старой схеме. Итог таков, что на коротких дистанциях снаряды попадают в цель мгновенно, а на дальних дистанциях начинают придерживаться правил гравитации, как мы и планировали изначально.
Время сборки
Я потратил полтора дня на то, чтобы ускорить наше время сборки. Сейчас это занимает около часа от наших коммитов до загрузки сборки в Steam для её последующего скачивания миллионной аудиторией. Несколько лет назад, это время было просто сказкой, но в данный момент, это недостаточно приемлемый для нас результат.
Вполне реально сделать так, чтобы на всё про всё уходило 10-15 минут, для этого нам требуется компилировать все (Linux, Mac, win32, win64 и asset bundles) одновременно.
Проблема в том, что несколько инстанций Unity не в состоянии одновременно компилить с одного файла проекта, таким образом нам нужно зеркало файла проекта. Круто, каждый файл весит 20 ГБ, учитывая все платформы, всего это будет весить 100 ГБ, а если не забывать о дебаг и релиз-моде, то это 200 ГБ.
Но всё это ещё херня, ведь когда вы открываете проект, Unity любит дублить контент в свою собственную "дутую" папку библиотеки, в итоге получается по 40 ГБ на проект и соответственно, всего получается 400 ГБ. Будет хорошо, если вы сможете обойтись без бешеных трат на супер-быстрые и супер-компактные PCIE SSD харды.
Тем не менее, после всего этого выяснилось, что Unity 5.4 категорически не признаёт параллельную работу. Огромная трата времени и усилий в никуда. По какой-то непонятной мне причине, во время компилирования нескольких инстанций терялась лицензия, после чего мне приходилось заходить и активировать её. Потом начали возникать проблемы с компилированием шейдеров, что приводило к зависаниям на неопределённое время.
Конечно, было бы круто заставить всё это заработать, дабы сделать нас гибче, но, увы, сейчас оно пойдёт нахуй, т.к. я потратил на это слишком много времени.
Доработки интерфейса
В данный момент на PR-ветви наступает этап фиксов и финальной "полировки". Основа уже готова, поэтому сейчас речь пойдёт об улучшениях.
Круговое меню получило ряд изменений в пользу производительности, а также была обновлена анимация в пользу быстроты.
Помимо этого, я прошёлся по скоростям скроллинга различных панелей, которые были достаточно медленными и дополнительно улучшил внешний вид очереди крафта.
Уведомления о получении нового уровня
Ранее отсутствовало какое-либо уведомление о том, что ваш уровень повысился. Именно для этого я закодил новую HUD-систему. Теперь при лвл-апе будет выводиться уведомление и воспроизводиться звук.
Также там будет показываться всё то дерьмо, что у вас разблокировалось.
Звук достаточно весёлый, но это временный заполнитель. Я думаю Алекс сделает хороший вариант с орлиным звуком, когда сможет его поймать...
Одинокие волки
Мы слышим вас ребят и мы понимаем, что отнеслись к вам слишком грубо на прошлой неделе. Поэтому я решил удивить вас и доказать, что мы действительно задумываемся о том, что вам необходимо.
В общем, теперь урон волков от укуса был увеличен в 10 раз (медведей это не касается). Искренне надеюсь, что теперь этим дискуссиям о противостояниях одиноких волков и волчьих кланов придёт конец.
Стоимость турелей
Турели не использовались игроками столько, сколько должны были и так как мы хотим сделать так, чтобы они появлялись раньше, чем АК47, мы немного изменили параметры чертежа. Теперь для крафта турели требуется 75 МВК, вместо 50 МВК и АК47. Надеюсь теперь ситуация улучшится.
Метательное оружие
На этой неделе я приводил всё метательное оружие на PR-ветви в рабочее состояние, а также занимался лёгкой балансировкой.
Переработка аэродрома
На прошлой неделе я работал буквально на ходу и тем не менее, несмотря на поездки и полёты, некоторую работу я сделал. Прогресс по аэродрому очень даже неплох, правда у меня к сожалению нет достаточного количества скриншотов, т.к. кое-какие здания всё ещё в разработке. Тем не менее, кое-что я заскринил:
Моделирование двустволки
У меня имеется хороший прогресс по работе над моделью двуствольного ружья. Решение с отвёрткой вместо ручки было действительно отличным, вот взгляните сами:
У меня ещё есть некоторый объём работы над спусковым крючком, но с этим будет закончено в ближайшее время. Далее займусь LOD-моделями.
Как вы уже могли заметить, это оружие будет подобным SMG, то есть кастомизированным.
Как вы помните, в концепции Пола было 2 версии этого ружья, одно такое, которое я сделал, а второе было с более удлинённым стволом, прикладом и мушкой. Позже, как появится время, я займусь второй вариаций этой пушки.
Тяжёлая броня
Я закончил с текстурированием нижней части тяжёлой брони. Также, она по-прежнему нуждается в скиннинге и лоддинге, а ещё я хотел бы сделать броню менее блестящий, т.к. это не совсем соответствует стилю игры. Мне нравится финальный вариант, он выглядит громоздким, особенно сильно это видно, когда смотришь на составные части.
Переработка костяной брони
Некоторые вариации нашей брони выглядят достаточно дерьмово, а так как они являются неотъемлемой частью игры, стоит приложить усилия для их улучшения. Больше всего мы ненавидим костяную броню, т.к. она выглядит тупо и слишком кустарно. Сейчас мы решили сделать то, что будет выглядеть круче и при этом мы плевать хотели на его соответствие остальным вещам. В данный момент мы исследуем различные варианты лёгкой, средней и тяжёлой брони. Думаю, что для костяной подойдёт лёгкий тип. Кстати, выражаю благодарность da9L88 за его крутые концепты костяного шлема, некоторые из идей помогли мне найти вдохновение.
Музыка
Бета версия Unity, которую мы используем, безостановочно крашилась на OSX, поэтому на этой неделе я работал над другой игрой компании FP. Тем не менее, некоторого прогресса по системе музыки я всё же добился, а также закончил с нарезкой существующих треков. Поскольку сейчас имеются лишь несколько треков, они будут воспроизводится в любой области карты и при любом времени суток, однако по мере добавления новых композиций, я буду их разделять.
Ещё я добавил функцию разрешить или запретить резкое исчезание отдельных клипов. Это позволит избежать моментов с резким обрубанием барабанных партий, а также даст больше контроля.
Ну и в заключении, я проделал ещё больше работы по "чистке" системы и её подготовке к реализации. Вскоре, я думаю на момент прочтения вами этого блога, я солью всё на PR-ветвь для финальных тестов и если всё пройдёт успешно, система уйдёт на основу вместе с системой опыта.
Make Gunplay Great Again
Было много разговоров о том, что текущий геймплей на уровне перестрелок сейчас выглядит неудовлетворительным, вялым и в большей степени случайным. На этой неделе, мы с Хелкусом сели рассуждать, что нам требуется изменить, чтобы ситуация улучшилась и в итоге пришли к следующим пунктам:
- Предсказуемость;
- Точность;
- Ощущаемость.
Для меня сейчас основной проблемой является отсутствие постоянства. Всё связанное с перестрелками выглядит крайне случайным и каким-либо удовольствием тут просто не пахнет. Вызвано это целым рядом вещей, так что позвольте мне рассказать вам о том, над чем я сейчас работаю и о наших рассуждениях на этот счёт.
Важно сказать, что всё, о чём тут говориться ещё в процессе доработки, но я надеюсь слить это всё на PR-ветвь либо на следующей неделе, либо через неделю.
Начнём с системы повреждения и системе хитбоксов. Мы испробовали множество вариантов, но в конечном счёте ни один из них нас не устроил. В данный момент система такова, что учитывается коллайдерная сетка, то есть при попадании в железо вы наносите существенно меньше урона, нежели при попадании в щель с открытой кожей или тканью. Проблема в том, что во время перестрелок никто намеренно не целится в уязвимые места, что приводит к той самой случайности повреждения. Сейчас я установил более простую систему, которая понижает урон исходя из того, какая часть тела была повреждена. Это значит, что теперь не будет случайных ваншотов бронированных ребят при попадании в мелкую брешь в броне, а также это значит, что теперь перчатки будут добавлять некоторый процент защиты всего тела, а не только лишь рук.
Вторая беда - увеличение области поражения из-за одежды. То есть, условная зона, при попадании в которую игрок терял здоровье, увеличивалась из-за громоздкой экипировки (к примеру из-за шлема ведра). Теперь это уйдёт в небытие, ибо хитбоксы будут расчерчены исключительно по коллизии персонажа, а не одежды.
Также я добавил возможность регулировать урон конкретного оружия при попадании с него в конкретную область тела. Иначе говоря, это позволит увеличивать урон винтовки при попадании в голову (т.к. оружие ориентировано на точность) и уменьшить тот же самый урон от дробовика, т.к. тут обычно попадание в голову зачастую является случайным. В этом пункте мы ещё не решили, в каком направлении двигаться, но добавить поддержку этой системы определённо стоило, т.к. более удобного случая может и не быть.
И, наконец, я начал работать над детекцией попадания метательным оружием. То есть при попадании в руку, за которой находится голова персонажа, урон будет рассчитываться как за хедшот, т.к. игроки не могут контролировать анимации игрока. Это опять же в сторону уменьшения фактора случайности.
В целом, всё выше перечисленное поможет вернуть перестрелкам предсказуемость и точность. На очереди у нас идут изменения в оружии, но этим, вероятно, будет заниматься уже Хелкус.
Комментарии