Улучшения хранилищ предметов в Retribution

Привет, капсулиры!

Команда Game of Drones усердно работала над улучшениями инвентаря, и сегодня мы хотим рассказать вам об изменениях, которые будут введены 4 декабря, когда мы выпустим Retribution— восемнадцатое дополнение для EVE Online.

За последние несколько недель мы собрали вместе все улучшения и изменения хранилища предметов, над которым мы работали, и провели многочисленные тест-сессии на тестовых серверах, в которых приняли участие как ветераны игры, так и новые игроки. Мы сконцентрировались на тестировании тех моментов игры, на которые нам указывали игроки: управление ПОСом, пилотирование Орки, лутание вреков, управление ангаром корпорации и каждодневная работа с хранилищем предметов.

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

Итак, вот, что над чем мы работали и что мы собираемся ввести 4 декабря.

Постоянство

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

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

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

«Хлебные крошки» в окне хранилища также будут поддерживать возможность перехода к родительскому элементу по нажатию на него. Это может быть полезно, когда у вас свернут список хранилищ. Однако это не будет работать в тех случаях, когда вы открыли какую-либо вкладку в новом окне, в котором отсутствует древовидный список.

Сохранение фильтра

Для тех из вас, кто хотел бы, чтобы можно было ввести слово в поле фильтра и этот фильтр сохранялся при переключении с одной вкладки на другую, мы добавили новую опцию «Сохранять настройки фильтра между хранилищами» (Keep filter value between inventories). По умолчанию она будет выключена и фильтр будет очищаться при переключении хранилищ, пока вы не включите эту опцию.

Производительность

Производительность работы хранилищ стала настоящей проблемой для вас и для нас после объединения инвентарей в Инкаре. В итоге мы решили приложить усилия к тому, чтобы решить как можно больше проблем с производительностью. Мы обсуждали эти проблемы с игроками в твиттере, на форумах EVE Online, в офисе CCP и в игре. Это дало дало нам несколько зацепок и указало нам на ряд проблемных областей. И теперь мы с гордостью можем заявить, что мы уже исправили большинство проблем, а оставшуюся часть исправим ближе к выпуску Retribution.

Вот проблемы, которые мы обнаружили и с которыми на сегодняшний день справились:

  • Высокая вероятность падения производительности во время быстрой серии активаций кораблей или контейнеров
  • Обновление древовидного списка хранилищ сразу в нескольких окнах клиентов приводило к снижению производительности, а в самых сложных случаях к зависанию. Проблема возникала при обновлении списка хранилищ сразу несколькими игроками, когда игроки перемещали предметы в совместных инвентарях или тех, которые можно было сделать совместными (например, корпоративный ангар на станции или на ПОСе)
  • Окно инвентаря очень долго открывалось (иногда минуту или дольше), когда в списке хранилищ было большое количество вкладок. Мы исправили это сделав загрузку только той вкладки, которая у вас открыта, и это существенно меняет дело!

Проблемы, которые были обнаружены и которые мы собираемся исправить:

  • Закладки! У нас есть пара узких мест в коде, доставшиеся нам по наследству, которые создают задержку в 1 секунду для каждой закладки. Если мы рассмотрим ситуацию, когда у нас есть 100 закладок в контейнере, то станет понятно, что это настоящая проблема. Мы ищем пути как решить эту проблему с наименьшими усилиями и не убить при этом сервер.
  • Ещё одной причиной появления задержки при открытии инвентаря являются «пластичные обертки» (plastic wraps). Всё из-за того, что их содержимое загружается ещё до того, как вы их открыли. Над решением этой проблемы работают наши самые лучшие специалисты. САМЫЕ ЛУЧШИЕ!
  • Ну и в заключении, само раскрытие и сворачивание древовидного списка, которые при большом количестве папок существенно снижают производительность. Мы также собираемся исправить это в Retribution.

В дополнение ко всему вышесказанному, мы усердно работали над тем, чтобы сделать хранилище более удобным в использовании и в частности над тем, как клиент обменивается данными с сервером. Мы благодарим всех людей, которые потратили свое время на выкладывание видео на YouTube, подробное описание их проблем и на то, чтобы помочь нам решить их. И мы надеемся, что вы сможете нас простить за то, что мы так долго решали все эти проблемы. Мы продолжим работать над производительностью хранилища и после релиза по мере обнаружения новых проблем. И мы постараемся сделать его настолько быстрым и удобным, насколько это возможно.

Способы открытия и использования хранилищ предметов

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

В EVE-меню, кнопка которого находится в левом верхнем углу, теперь появилась новая категория «Хранилище» (Inventory). Из неё вы сможете напрямую открыть следующие окна: Хранилище (Inventory), Отсек корабля (Active Ship), Склад (Item hangar), Ангар (Ship hangar), Ангар корпорации (Corporate hangar), Предметы, доставленные с маркета (Market deliveries) и Имущество (Assets). Вы можете переместить любой из этих пунктов на панель Неокома, чтобы получить быстрый доступ к нему. Иконка общего хранилища по прежнему будет присутствовать на панели Неокома по умолчанию.

Если вы хотите открыть какой-нибудь инвентарь в отдельном окне, то вы сможете сделать это тремя способами:

1. Вынесите вкладку инвентаря за пределы окна

  • Это итак можно сейчас сделать, но во время тестовых сессий мы заметили, что не многие игроки догадываются об этом, т.к. при переносе вкладки не было никакой подсказки.
  • Теперь, как только вы начнете перенос вкладки, вы увидите иконку вкладки, которую вы переносите. И как только вы перенесете её за пределы окна инвентаря, она сразу же превратиться в отдельное окно.
  • Если вы хотите объединить несколько окон в одном окне (сделать несколько табов в одном окне) во время выноса отдельной вкладки, то для этого вам не придется отпускать кнопку мышки. Просто перенесите иконку вкладки за пределы окна, чтобы она превратилась в другое окно и после перенесите на заголовок первого окна, с которым вы хотите его объединить.

2. Нажмите правой кнопкой на вкладке в инвентаре и выберите «Открыть в новом окне» (Open in new window)
3. Зажав Shift кликните один раз на вкладке

Многие игроки хотят использовать оба способа: открыть какое-нибудь хранилище в отдельном окне и одновременно с ним держать открытым общее окно хранилищ. Такие игроки могут использовать три способа описанные выше. Если вы хотите, чтобы окно хранилища всегда открывалось отдельно, то опция «Всегда открывать в отдельном окне» (Always open in separate window), которую можно найти кликнув по иконке настроек, удовлетворит эту вашу нужду. С включенной этой опцией для открытия инвентаря в отдельном окне вам достаточно будет кликнуть дважды по любой вкладе в древовидном списке хранилищ.

Горячие клавиши также могут быть полезны для открытия и закрытия хранилищ. Например, чтобы открыть общее окно хранилищ достаточно нажать Alt-C, а чтобы открыть Склад — Alt-G.

Простота использования и последовательность

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

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

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

Улучшения древовидного списка хранилищ

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

Изоляция древовидного списка хранилищ

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

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

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

Ещё мы добавили подсветку градиентом родительской вкладки, когда открыта дочерняя вкладка. Это дает вам понять, что внутри вкладки что-то выбрано в случае, когда сама вкладка свернута.

Хотите сохранить настройки?

Если вы хотите, чтобы в списке хранилищ отображались все вкладки как раньше, то можете включить опцию «Всегда показывать полный список» (Always show full tree). По умолчанию она выключена. Как вы можете видеть на скриншоте, мы переместили иконку настроек ниже и теперь она находится не в заголовке окна. Это сделано для того, чтобы вы не путались в настройках когда у вас под одним окном объединены несколько окон.

Залутать все вреки

Мы поработали над процессом лута вреков, и теперь на экране будет присутствовать больше индикаторов и сообщений о том, что происходит и куда был помещен лут.

Во время проведения тестовых сессий мы заметили, что есть два способа, которыми игроки собирают лут. Первый — это открывать врек через древовидный список хранилищ и забирать лут с помощью кнопки «Забрать все» (Loot all). Второй — это постоянно открывать вреки в новом окне и оно само будет закрываться, когда лут будет собран.

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

Если вы не хотите, чтобы окно врека каждый раз открывалось где попало, то вы можете объединить его с окном хранилища вашего корабля и оно всё время будет там. Потом, просто кликая в одном и том же месте на «Забрать все» (Loot all), таба врека будет закрываться, а окно хранилища корабля отображаться. Но если у вас включена опция «Всегда открывать в отдельном окне» (Always open in separate window), то эти правила действовать не будут не смотря ни на что.

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

Режим компактного отображения

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

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

Инструменты для продвинутых пользователей

Для тех игроков, кто выполняет очень много операций в инвентаре, мы подготовили несколько приятных инструментов.

Прежде всего, если вы до сих пор не пробовали функцию Копировать и Вставить, то вам стоит это сделать:

  1. Выберите предметы, которые вы хотите переместить или нажмите Ctrl-A чтобы выбрать все предметы
  2. Нажмите Ctrl-X чтобы «вырезать» выделенные предметы
  3. Откройте хранилище, куда вы собираетесь переместить предметы
  4. Нажмите Ctrl-V чтобы «вставить» их туда

Извините, но мы не сделали функцию Ctrl-C (копировать) 🙂

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

Улучшение ответной реакции

Мы улучшили ответную реакции на некоторые действия в инвентаре. Мы обратились к парням из команды Klang, которая занимается звуковыми эффектами, и попросили их добавить звуковые информирования для некоторых ключевых действий. Звуковой эффект будет звучать когда вы открываете врек и когда собираете все его содержимое кнопкой «Забрать всё» (Loot all).

После перемещения лута в хранилище корабля, вы также увидите мигание вкладки отсека корабля. Точно также мы сообщаем об успешном перемещении предмета между хранилищами. И для согласованности мы добавили точно такое же мигание при успешном перемещении предмета в контейнер или другое хранилище при перемещении его из области отображения содержимого.

Информирование об ограничении доступа

Не всегда понятно к какому контейнеру или отделу корпоративного ангара вы имеете доступ. Часто это выясняется только опытным путем. Именно поэтому мы добавили информирующие иконки ко все отделам корпоративного ангара и ко всем контейнерам, которые и показывают имеете ли вы к ним доступ.

Ограниченный доступ будет обозначаться желтой иконкой

  • Ограниченный доступ означает, что вы можете просматривать хранилище, но не можете ничего из него забрать.

Отсутствие доступа будет обозначаться иконкой красного цвета

  • Отсутствие доступа означает, что вы не можете ни просматривать содержимого хранилища, ни забирать из него предметы.

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

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

Просто затемнить предмет не достаточно, т.к. он также затемняется при «вырезании» с помощью Ctrl-x.

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

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

Улучшение скроллбаров

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

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

Приятных полетов!

Перевод © Jeiwan  Источник: CCP Arrow