Интерфейсы хранилища в РПГ
Давайте поговорим об интерфейсах инвентарей в РПГ играх. Об этом хотел поговорить Jerry Green, но я надеюсь успеть раньше :3
UPD : я успел раньше на 10 минут:)
Впереди нас ждет описание различных механик инвентарей в играх, и немного пофантазируем как можно было бы их реализовать.
Историческая справка
Инвентарь - это одна их самых необходимых вещей для приключений. Он встречается в кучах игр от шутеров до квестов. Но по настоящему связан RPG и cRPG-элементы-содержащих игр. В том или ином виде оно встречается в куче игр с самого появления жанра РПГ.
Появился он еще в настольной версии. Как часть анкеты персонажа.
Причем можно заметить что исторический формат записи - это список.
В таком же схожем виде они перекочевали в цифру:
Где можно было перечислить предметы в карманах персонажей.
Как показано на скриншоте выше, каждому персонажу в отряде было разрешено иметь восемь предметов в инвентаре. Порядок предметов не имеет значения, а различие между экипированными и неэкипированными предметами отмечено звездочкой. Воин, показанный на этой картинке, имеет щит, различные предметы доспехов и алебарду для атаки. Его внешний вид в окне дисплея в левом верхнем углу совершенно не зависит от того, что экипировано
Но при развитии компов и размера и возможностей к отображению графики - от списков быстро отошли когда графика позволила хранить не только свойства предметов - но и их визуальное отображение в лице иконок.
Именно игра "Данжен мастер" по ДНД системе, считается первой игрой с сетками и ячейками инвентаря, которые были вдохновлены системой Windows Icons Mice Pointers (WIMP)
Не нужно думать что слово "Виндоуз" тут означает слово "Виндоуз" товарный знак - мелкомягких. Они тут не причем. Иногда окно - это только окно, а не способ выти погулять задушившись в играх.
Данные системы старалась передать погружение игрока в игру, решить вопрос "погружения", что бы игрок мог "пощупать" предметы - путь и мышкой. Дать возможность спокойно перекладывать предметы из мира в инвентарь, и помещать их на куклу персонажа. (Запомним этот нюанс, он нам потом пригодится)
Пара слов про Windows Icons Mice Pointers
(WIMP:окна, значки, меню, указатели)
Данная идея впервые была реализована у Ксерокса Xerox Alto в далеком 1973м(!!!) году:
Если вы когда-либо задавались вопросом почему вертикальные мониторы ассоциировались с будущим - то теперь знайте - Ксерокс опередил свое время лет на 10! Хотя изобретение окошек и иконок и любил себе присваивать Джобс, чей макинтош (1984го) популяризовал WIMP.
«Ну, Стив, я думаю, что на это можно смотреть по-разному.
Я думаю, это больше похоже на то, что у нас обоих был богатый сосед по имени Xerox. И когда я ворвался в его дом, чтобы украсть телевизор, то понял, что этот телевизор из дома выносит уже твоя команда».
Именно ксерокс еще в 70х предоставил первый ЭВМ с иконным графическим интерфейсом управляемым мышью.
Но вернемся к играм. Именно эти два формата Список и Ячейки - стали определяющим для РПГ игр. Но эволюция на этом не закончилась.
Чистый Список
В чистом виде модель списков до сих пор активно используется в играх Bethesda.
Они с него начинали в TES ARENA
И если не считать аномалию в виде Даггерфола и Морровинда..но о них отдельно.
Продолжают. Маскируя список красивым стилизованным оформлением:
И продолжают, упрощая все что только можно до минимализма:
Пытаются скрестить с дигенетическим дизайном:
И возвращаются к спискам:
Создавать инвентари на списках до ужаса просто. Просто вывести имя по порядку.
Но не бетездой единой. Например, точно такой же инвентарь - реализован в клоне Обливиона (но без магии), Kingdom come deliverance:
Как правило, единственным ограничением выступает вес предметов и максимальный переносимый груз у персонажа.
И нет мы не будем тут говорить про карго менеджмент в Death Stranding. Это отдельный мир - где менеджмент распределения вещей в инвентаре серьезно так влияет на тип движения персонажа. Который сильно требует учет местности и маршрута до точки доставки.
Плюс чистого списка: Простота для разработчика в плане реализации. Адаптация под стики геймпада консоли, позволяя переключать между вкладками списка по "содержимому". Потенциально бесконечный инвентарь.
Минус чистого списка: Захламление инвентаря к концу игры. Длительность прокрутки до нужной позиции. Сложность сопоставления характеристик схожих предметов. Забывание содержимого инвентаря, результате чего игрок забывает пользоваться расходниками.
Если говорить о лично моем мнении - то как правило система списков - для любой более менее долгой игры просто не работоспособны.
Ибо ломается из-за банального накопительства у игроков. И того факта что игрок просто забывает что у него лежит в инвентаре. Особенно ситуация усугубляется наличием ограничения по весу. Из-за чего очистка инвентаря от мусора - становится тем еще квестов.
Я уже касался этого вопроса кратко в заметке "приемы ленивого геймдизайна"
Так же "списочные" инвентари как правило требуют остановки времени вне игры - так как игроку не так уж просто найти нужный предмет внутри.
При этом осознать это можно только играя. Если тестировать систему со списком заранее созданным персонажем на 1-2 квеста - то проблема просто не всплывет! Вот поэтому та же Betethda может удивляться почему им говорят что Бетезда -ничему не учится!
Система Ячеек
Говоря о ячейках стоит для удобства поделить их на два подвида:
"Простые ячейки" - где одна ячейка - это один предмет.
Иногда их мало:
Иногда их бесконечное неограниченное количество:
Часто в играх я бесконечными ячейками вес у предметов таки есть, но он учитывается только у предметов одетых на героя.
Так например реализовано в Дарк соулз. Где от степени баланса зависит длина переката:
Как правило, размер инвентаря ограничивался или ничем, или общим числом ячеек.
Так же стоит отметить гибриды со списками, где добавляли вес в качестве ограничения
Иногда простые ячейки использовались в качестве замены списка имен, через иконки и максимальное ограничение веса.
Такие механики инвентаря на порядок более понятные для игрока - так как взгляд охватывает не 5-10 позиций, а гораздо больше.
Нельзя не вспомнить о системе "Сумок" - из WOW
Даная система позволяет хранить вложенные объекты и расширять инвентарь игрока путем получения новых более ВМЕСТИТЕТЕЛЬНЫХ сумок в награду за квесты.
И "Сложные Ячейки" - где предметы могут располагаться на нескольких ячейках
Или пример из Ark Fatalis
Или пример из Ведьмака:
Сложные ячейки - где игрок может переставлять предметы местами - предлагают по сути мини игру, которую можно назвать "инвентарным тетрисом"
Благо в прей - лишний мусор или полезных предметов в можно переработать в аккуратный строительный материал.
Благо в отличие от Старфилда где есть вся таблица менделеева в различных комбинациях, в прей - строительные элементы делиться на: Метал, Органику, Пластик и Экзотическую материю.
Где игрока будет ждать небольшая задача как лучше разложить предметы, что бы использовать минимум пространства. Это задается за счет "сложной формы предметов", что было хорошо реализовано в Resident evil:
Нельзя не отметить забавную реализацию инвентаря в имерсив симе Gloom Wood -
Где инвентарь это буквально "физический "чемодан, в мире игры. И что бы в него что: то положить, то его нужно ОТКРЫТЬ в мире игры рядом с предметом - и уже потом положить предмет в инвентарь. Причем ячеек всего 24. Что заставляет игрока постоянно думать - а нужен ли ему тот или иной предмет.
Причем выкладывая из инвентаря предметы - он сразу оказывается на уровне. И неумелым броском во вне можно отправить бутылку в полет, где она разобьется и привлечет врагов.
Это создает вовлечение. Заставляет игрока решать задачи. И шевелить мозгами. Не только "как "правильно перекладывать предметы, но и "когда" перекладывать - решить для себя вопросы: "есть ли враги?" или "Не привлечет ли их шум открывающегося чемодана?
Так же стоит упомянуть Escape from Tarkov
В Таркове помимо рюкзака есть систем разгрузок, где отдельные ячейки быстрого доступа, что бы игрок мог хранить важные (и не очень) предметы, что бы не лезть каждый раз в рюкзак. Ведь автоматической до зарядки патронов в магазинах как в других играх там нет.
В финале в качестве забавной игры стоит отметить автобатлер Backpack BattlesЖ
Где вся игра строится вокруг наполнения сумок и расширяющих оных модов.
Плюсы Ячеек: ячейки просты и наглядны - хватает одного взгляда, что бы оценить инвентарь. Сколько осталось и сколько есть места. Не нужно задействовать отдел мозга отвечающий за восприятие текста.
Минусы Ячеек: Главный минус ячеек - это сложность реализации, особенно "сложных ячеек" - не каждый хочет с этим, возится.
Почему-то считается что в ячейках сложнее работать через геймпад, поэтому многие консольные игры делаются именно через список. Или же ограниченный набор ячеек. Где нельзя переставлять предметы местами.
Теперь пришло дать время фантазии !
3х- мерный инвентарь?
Если подумать и сделать размер ячеек очень маленьким, и сделать неотличимым от пикселя - то можно довольно забавный инвентарь где можно вращать по 3м осям, и упаковывать предметы вплоть до пиксель хантинга. А еще предметы будут физически перекатываться по рюкзаку.
А еще можно добавить 3ю координату и сделать по сути полноценный симулятор наполнения чемодана для отпуска.
Ну да оставим эти забавные идеи кому-то другому. Например, Кодзиме - ему такое нравится. Все равно не понятно как из этого чемодана предметы доставать. Это будет не меньший квест, чем упаковать.
Написал это... и вспомнил об еще одной игре, где был инвентарь... ну как был... он оказался совершенно незапланированный разработчиками. Но он там был...
Я говорю об Half Life Alyx.
Где можно было таскать предметы, как задумали разработчики из Valve, по одному на руку... и по 3 обоймы за спиной... или... или... можно найти себе подходящий контейнер: Кастрюлю, ведро, коробку...
И вуаля - вы получали вы уже не ограниченны инвентарь. Где предметов помещается столько сколько хочешь. И они спокойно переносятся из уровня в уровень на движке Source 2, чем предшественник похвастаться не мог.
И внезапно ранее не транспортабельный груз становится легко переносим!
Главное, не забудьте после сражения забрать ведро с собой (◕‿◕)
Концепт Инвентаря
Итак, изучив все это - настало время - как это можно все (на самом деле не все) соединить и ответить на вопрос как инвентарь будет выглядеть, в РПГ моей игру мечты?
Для начала мы постараемся не использовать систему Списков в каком либо виде. Как я показал это исторически первая возникшая система, но никак не идеальная. И сразу сосредоточимся на ячейках.
Причем сложных ячейках - поэтому система веса и груза нам не понадобится. Игроки приходят развлекаться. Перекладывать предметы по ячейкам гораздо веселее чем вычислять сколько веса осталось взять.
Например, на представленном приемере выше - мне нравится концепция маленьких ячеек.
Вопрос только в том на НАСКОЛЬКО мелких ячейках стоит остановиться? И почему? А вы что считаете правильным?
Проблема расширения инвентаря?
Для сложной игры - определенная прогрессия необходима.
Один из важных аспектов - это момент расширения инвентаря у игрока. Это для у небольшой игры некритично сделать не изменяемый небольшой инвентарь.
Классическая проблема которая видится относительно РПГ игр - что "максимальный" вес обычно привязан к СИЛЕ персонажа - из-за чего маги и воры, вынуждены таскать гораздо меньше груза. Так как "сила" им не нужна, и потому не развивается.
Как решить эту проблему?
Нужно продумать решение, которое будет полезно и для воинов и магов. Например, магам можно дать заклинание "подпространственный карман" - который будет расширяться по мере роста волшебной силы.
Так - каждое обращение к подпространственному карману может требовать затрат магии. Чем больше груза хочешь туда поместить - тем больше маны потратишь.
Или же наоборот - резервировать под себя часть максимальной силы магии - под удержание предметов в таком пространстве. Можно использовать и то и то решение - реализовав в виде разных заклинаний или ритуалов.
Другое решение которое можно предложить - это зависимость размера инвентаря героя от качества сумок у героя. И качества оных:
Так же на одежде могут быть свои небольшие карманы - которые могут дополнительно расширять инвентарь. Так перки воровского класса могут включать в себя способы упаковки хабара в существующие сумки, что игро - механически можно выразить в виде расширения ячеек у дополнительных сумок.
Как это будет выглядеть? Примерно вот так.
Важный аспект который стоит учитывать - так это тот что все ячейки инвентаря должны быть видны одновременно. Если их будет реально много - то для удобства пользователя нужны будут инструменты масштабирования итоговой картинки.
Специализированные контейнеры
Еще один способ решения давно известный в куче игр - это "специализированные сумки"
Которые будут занимать часть ячеек общего инвентаря. Но взамен - внутри себя давать еще больше ячеек под груз. Но не груз вообще - а конкретный. Например, под ингредиенты для алхимии, или под еду, ящик под зелья и т д.
PS: бесконечную сумку Геральта Белого Волка под крафтовые части не одобряю. Хотя по смыслу эти детали остается на руках у торговцев. Но все равно предметы с нулевым весом не имеют особо смысла. Если уж давать бесконечную сумку - то бесконечную для всех предметов, как в том же дарк соулз.
Разгрузка для предметов/оружия
В качестве занятной фичи - предлагаю функционал крепления оружия и снаряжения, чего-либо на персонаже.
Такая фишка обычно характерна для военных шутеров - но что может помешать ее использовать в фентези или сайфае? На самом деле ничего!
Например - это будет представлять собой набор ремней, с сокетами- креплений под сумки, колчаны, оружие, узелки под бутылки зелий для быстрого доступа как у ведьмака и так далее.
Данные перевязи могут различаться различными характеристиками, влияющими на героя - вынуждая игрока постоянно решать задачу - пора ли перекладывать предметы, или с текущим распределением еще походить? Например - определяя бонусы на скорость, штрафы на усталость, скорость доставания зелий, число бонусных ячеек. И как знать
Так - так как кажется так я сам запутаюсь - то вот схема попонятнее.
Цвет - это тип слотов.
Если оружие не влезает в ячейки по размерам - его можно крепить на пояс. Вот так:
Или на спину.
И самое главное - не забываем про ХВОСТ ! :D
Дадим нахвостные сумки для ящерок!
Кристаллизация концепции:
Немного подытожу, как это по моему должно быть в итоге: Таким образом мы получаем систему инвентаря для персонажа состоящую из следующих элементов:
Рюкзак - главный контейнер для предметов. Одетый рюкзак может быть один. Размер ячеек зависит от качества и силы персонажа. (Базовое число ячеек + бонус силы)
Если у персонажа нет никакого рюкзака - то по умолчанию можно использовать банальный мешок с минимальным числом ячеек.
Для разнообразия - в разных рюкзаках может быть разное "строение " расположения ячеек.
Разгрузка - набор ремней и перевязей для удержания малых сумок.
Разгрузка определяет типы крепления для оружия. Если крепления под оружия нет - то оружие нельзя будет убрать в ножны(привет духота!). Только выкинуть или спрятать в сумку.
Если разгрузки нет - то в качестве варианта по умолчанию можно использовать веревку вокруг пояса - на которой можно закрепить только одно малое или среднее оружие.
Некоторые варианты разгрузки могут быть совместимы между собой - если касаются разных частей тела. Некоторые будут несовместимы.
Малые контейнеры
Инновационная идея которой не было в играх. - небольшие контейнеры которые крепятся на разгрузке - и позволяющие хранить предметы определенного размера.
Если контейнеров нет - то их нет. Например, часть из них может быть рассчитана под определенные типы предметов, вроде колчана под стрелы, другая будет универсальна, главное, что бы предмет влез внутрь.
Количество контейнеров определяется количеством креплений.
Воровские навыки способны расширить количество ячеек у малых контейнеров.
Карманы на одежде - аналоги малых контейнеров, но в отличие от них их нельзя заменить. А еще нужно не забывать проверять на наличие вещей, что бы не забыть забрать предметы из карманов - если настало время поменять внешний вид.
Подпространственный карман - способность мага открывать к своему персональному хранилищу. Тип и размер определяется способом создания кармана. Вещи спрятанные в таком месте - не поддаются обнаружению.
По сути все что осталось это проработать UI, что бы все было наглядно. Впрочем, такие задачи не имеют однозначного ответа... их всегда можно решить плохим образом и замаскировать оное плохое решение артом.
А значит наиболее рациональным вариантом при реализации чего-то аналогичного - сделать все эти менюшки кастомизируемыми - что бы игрок мог настроить их под себя и свой монитор.
Как это было скажем в морровинде - где все эти менюшки персонажа можно было спокойно менять в размере и перемещать:
да-да - это все одна игра. И не нужны никакие моды с нексуса, что бы подобрать удобный для себя формат интерфейса.
На этой ноте пожалуй и закончим. Ярик вернется с новыми идеями в следующий раз
PS : небольшое продолжение
PSS: Добавлен Лонг про монеты
Отличный разбор, спасибо!)
P.S. А Xerox был сам виноват, они решили что система WIMP не достаточно серьезный продукт для такой серьезной корпорации как Xerox, поэтому позволили Apple использовать свои наработки, хоть и не без финансового интереса)
Ну погнали, ты успел на 6 минут раньше :)
https://dtf.ru/3063161
Самый лучший инвентарь в alone in the dark 2008, простой и реалистичный, карманы в куртке.
Комментарий недоступен
Нельзя не вспомнить о системе "Сумок" - из WOW
Только система сумок появилась ещё в Ультиме 6+. И это был полный пиздец, ибо вместо ячеек предметы лежали как Бог даст, а сумок и рюкзаков с этими сумками у тебя овердохера из-за большого количества нужных предметов. Особенно если ты Некромант, у которого вся магия завязана на колдовстве над сумками.
Ну и финальная ягодка это конечно дополнение для Ультимы 7 - Serpent Isle, где мало того что невероятное количество лута, так ещё и для прохождения игры тебе нужно собрать всё змеиное обмундирование, и ладно собрать, найти потом в своих сотнях сумок все предметы.
Можно резюмировать что если иконки хреново прорисованы - то читаемость резко падает
Спасибо за дополнение)
Продублируй у джерри)