Devblog 99.1: много изменений (девблог 100 будет растянут)

Очередной сюрприз от разработчиков постиг нас выживальщики!( Девблог 100 растянут на несколько частей… Поэтому сегодня юбилейного Devblog 100 не будет, в данный момент я готовлю перевод девблога 99.1, в ближайшие пару часов вы сможете прочитать его полностью.

А пока что можно посмотреть мой краткий видеообзор:

Это обновление за странным номером 99.1 (Да ладно, ребята, скажите честно, что вам влом продолжать работать над Rust! — прим. переводчика). В нём мы побольше расскажем о системе набора (прокачки) опыта и дереве технологий. Мы добавили обновлённые тоннели, сделали некоторые изменения в процедурной генерации карт, уменьшили размер мира по умолчанию, и ещё чуток разных изменений. Также это обновление принесёт вайп на все сервера.

Система прокачки опыта (Maurino Berry/Garry Newman)

Helk на этой неделе закончил с первым приближением дерева рецептов. Это — порядок, в котором по мере набора опыта будут разблокироваться рецепты, причём исключительно последовательно, в несколько отдельных цепочек. Это лишь первое приближение, призванное показать, какого результата мы в итоге добиваемся. Для того, чтобы сбалансировать данное дерево рецептов, нужно будет ещё немало потестировать его в деле.

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

Также я потратил некоторое время на работу над интерфейсом. Я добавил систему подсказок, Которая на данный момент выглядит достаточно полезной. Теперь меню крафтинга вынесено в отдельное окно и не захламляет окно инвентаря. (Врёт, зараза, сегодня заходил, проверял, всё по-старому — прим. переводчика)

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

Был разговор на неделе о системе навыков и беспокойстве, что люди собираются прокачаться и иметь по 1000 здоровья и высоту прыжка в 500, хотя мы вообще-то говорили о трёхступенчатой системе прокачки опыта, как указано в дорожной карте.

Изменения замка (Garry Newman)

Знаете, в чём вся боль? Когда вы открываете дверь и случайно попадаете взглядом на замок, соответственно, вы его отмыкаете. Потом вы забываете его закрыть. А потом люди попадают в ваш дом. И потом вы пишете нам, что страшные хакеры залетают к вам в дома, притом, что других путей, кроме как с читами, нет.

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

Протокол Websocket RCON (Garry Newman)

Некоторые люди не совсем правильно интерпретировали новость про протокол websocket RCON, о котором я рассказал. Им показалось, что это новый пользовательский интерфейс для взаимодействия с консолью сервера. Всё не так, это лишь новый способ общения с сервером, вплоть до взаимодействие через страницу в браузере.

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

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

Озвучка предметов в инвентаре (Alex Rehberg)

Я добавил несколько новых звуков для поднятия/выбрасывания предметов на экране инвентаря. Лут, это одна из самых важных частей игры, поэтому мне хотелось сделать обращение с лутом  несколько более весёлым и реалистичным, и добавить больше различий к предметам. Теперь все звуки материально-базированы, но пока ещё одинаковы для всех предметов, хотя, возможно, я сделаю индивидуальные звуки для оружия.

Я буду продолжать добавлять звуки там, где текущей озвучки попросту недостаточно (Пока что имеется только сильно ускоренный металлическмй звук, который звучит неправильно в сочетании с такими предметами, как базука, например).

Текстуры в данжах Vincent Mayeur

Остаток недели я провёл, работая над дизайном очистных сооружений и железнодорожной станции. Как по мне, они имели те же недостатки, что и электростанция (которую я тоже переработал), если не больше: длинные, просматриваемые прямые с практически отсутствующими укрытиями. Поверьте, дизайн на этой итерации всё ещё остаётся неидеальным, поскольку есть ещё довольно длинная прямая без укрытий на очистных сооружениях, но я пытался придумать, как предоставить укрытие при переходе с одного края данжа на другой. Большую часть этой проблемы удалось разрешить с помощью создания «карманов», в которых вы будете чувствовать себя более защищёнными, пока не решите бежать к следующему такому укрытию. Пока ещё остаётся большое преимущество у тех, кто может добраться до точек, откуда более-менее можно наблюдать, что творится вокруг. Я просматриваю всё это на предмет необходимости нерфа и балнсировки.

Так же я закончил первую итерацию работы над коллекторами — после прошлой недели у меня оставалась ещё пара больших помещений, которые требовали завершения. Они были более уникальными, чем всё остальное, поэтому я решил их сохранить.

Исправления величины повреждений от зажигательных боеприпасов (Maurino Berry)

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

Исправления распада (Maurino Berry)

Позвольте объяснить для начала, как работает система распада (для объектов, к которым она применима): есть два базовых параметра — Время Распада и Задержка Распада. Пусть, скажем,  задержка распада равна 8 часам, а время распада — 24 часам. Это значит, что после 8 часов, начинается распад и за следующие 24 часа уровень хитпойнтов объекта достигает нуля. Открытие или закрытие дверей сбрасывает задержку распада в радиусе 40 метров вокруг. Таким образом, часто используемый фундамент не будет подвергаться распаду. К сожалению, этого недостаточно и распад реально нуждается в срочной переделке, но сейчас я добавил сброс задержки распада, когда вы полностью восстанавливаете строительный блок, так же, как это происходит при открытии дверей. Это должно упростить поддержание наружных стен в рабочем состоянии.

Проблемы с лагами оружия (Maurino Berry)

Долгое времяб когда чьё-либо соединение прерывалось (иногда из-за обрывов, иногда аз за зависания CPU) и снова восстанавливалось, сервер «забегал вперёд» и обрабатывал все данные за один заход. Это значило, что вы могли видеть, как кто-то бежит и стреляет, подвисает на секунду, а затем следует взрывоподобный выброс пуль с того же, например, дробовика, когда соединение восстанавливается. Сегодня этому положен конец! Теперь мы отслеживаем значения скорострельности оружия на сервере и если вы «пытаетесь» стрелять быстрее, чем следовало бы,сервер проигнорирует ошибочные пакеты.

Модель игрока (Taylor Reynolds)

One of the biggest issues with the current character is no-one really feels like a living, breathing person. A big step towards that is having some believable facial animation, even just having some subtle eye movement can go a long way. I had to make some amendments to all the heads this week to account for the new teeth meshes, so I took the opportunity to throw in some eyelid bones and properly align the old eye bones. The result of this means the eyelids will follow any eye movement in a realistic manner. I’m no animator, but some quick tests already look quite convincing, and give some indication of what a more fleshed out facial rig could achieve.

Smaller Default Map SizeAndré Straubmeier

I reduced the default world size from 16km2 to 9km2. Server owners can of course still set the world size on their end and go back to the bigger maps if they prefer those. The reason for this change is that we ran a few official servers with 4km2 maps and quite liked the gameplay they offered. I think with the old map size most people never actually got to see all parts of the server they played on within one wipe cycle, and the smaller maps feel a lot more engaging due to the higher frequency of player encounters. Anyhow, this isn’t set in stone and will probably be tweaked some more in the future, but let’s give it a shot and see shall we?

Rock ImprovementsAndré Straubmeier

I took another stab at our procedural rock group spawns. They’re now more clustered and spawn small clutter rocks around the bigger ones.

Procedural Map FixesAndré Straubmeier

I fixed a decent amount of bugs in the procedural maps.

  • Fixed floaty arid/beach trees
  • Fixed rocks sometimes spawning on warehouse
  • Fixed rivers sometimes intersecting warehouse
  • Fixed occasional sawtooth terrain glitch around monuments
  • Fixed rivers sometimes starting at insane slopes
  • Fixed a number of rock formation prefab issues
  • Fixed missing icebergs
  • Fixed small static rocks occasionally spawning midair

Invisible Forcefields at DungeonsMaurino BerryVincent MayeurAndré Straubmeier

We had some reports of people being able to take out the helicopter by staying in the dips and valleys at the dungeons without taking fire. Turns out the trigger that is used to let players go beneath the terrain was on the wrong layer and was blocking all server projectiles. This also meant that rockets would not pass through these layers. This is now fixed.

Water 2.9Diogo Teixeira

We’ve had some issues related with ocean tessellation for over sometime now: fog mismatch with the rest of the environment, lack of wave displacement further away and z-fighting. To support all kinds of hardware our mesh tessellation had to be static, which is fine for what we need. The problem is that we weren’t getting the most of it due to our simplified model.

To address those issues I decided to switch to a better mesh distribution that uses camera as reference. All detail is now concentrated within the visible area and better laid out across the frustum so we can now get displacement all the way from beginning to the end of the camera view. I also toned down the simulation to reduce single direction waves.

Unfortunately, it didn’t do as much for z-fighting as I hoped for and we’ll have to take more drastic measures to solve this problem.

Rad Boar ConceptPaul Bradley

Tom’s begun work on sculpting up the rad boar. This week I took his starting base model and painted over it, developing the idea a bit further as to how the skin should look and overall anatomy of the thing. We don’t want these looking like cartoony MMO mobs; we want realistic tumours/skin diseases and warped skeletons/bones. I like the idea of creepy, expressionless eyes. We’ll probably bounce back and forth on this solving problems until we get an awesome (disgusting) end result.

Next WeekGarry Newman

You might not see much from us next week. We’ve decided to start doing 20% time studio wide. We’re starting this with a week-long break from our main projects to experiment on anything we want. This will probably turn into a day every week in the future.

Some people are using this to make prototype games they’ve had idea debt over for a while, some of them are using it to sharpen their tools by learning new skills. These are previously things that people have been doing secretly at night or on weekends, to avoid the guilt of abandoning their main project. Which is bullshit.

Either way this shouldn’t be seen by the community as something that is done to the detriment of Rust, as I’m sure it will be regardless of what I say here. This is us making ourselves better.

Oh also, the week after we’re all going to GDC, so we probably won’t get anything done in that week either. But don’t worry: I’ll post about why you shouldn’t freak out about that in next week’s otherwise empty devblog.

Changelog

Fixed fuel not being refunded when overspill when dropping on items
Now force disconnects from server when trying to join another from UI
Lock inherits door options
Default option on lock is to open/close the door it is attached to
Fixed ragdoll head stretching
Linux dedicated server creates log files properly
Rcon responses aren't printed to the console/log files
Added admin.bans (returns json list of bans)
console.log, console.search respond with json
Asserts show up red in the server console, have a log file
Updated to Unity 5.3.3p1
Added Impact sounds for chain link fence building parts
Overflowed large furnaces shoot items out of the chimney
Tweaked volume of bush/tree ambient sounds
Fixed building privilege sometimes staying after death/server restart
Added item specific pickup/drop inventory ui sounds
Conditional colliders once again update on server restart
Dungeon art and design update
Reduced default map size to 3000 (from 4000)
Improved procedurally generated rock clusters
Tweaked road and powerline generation
Fixed floaty arid / beach trees
Fixed rocks sometimes spawning on warehouse
Fixed rivers sometimes intersecting warehouse
Fixed occasional sawtooth terrain glitch around monuments
Fixed rivers sometimes starting at insane slopes
Fixed a number of rock formation prefab issues
Fixed missing icebergs
Fixed small static rocks occasionally spawning midair
Updated HapisIsland

Читайте также