Клавиатуры и дизайн

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

Я типа into клавиатуры. Не совсем помешался, но что называется темой заинтересовался. Что меня зацепило так это что стандартный массовый «дефолтный» дизайн клавиатуры содержит ряд эргономических изъянов, которые очень легко логически объясняются и даже в принципе решаются. А я, как известно, люблю когда что-то не такое сложное, непонятное и необъяснимое как мона лиза, а наоборот простое, логичное и объяснимое: вот проблема, вот решение. Я огромное удовольствие получаю от проблем, у которых нашлось решение, в общем.

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

Первое: смещенные ряды.

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

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

Четыря ряда — смещение на четверть. Вот и вся формула, блядь, как сказал бы Артемий.

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

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

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

А из плеч. Поэтому для работы на традиционной клавиатуре их приходится неестественно изгибать:

У всех, кто так работает, в старости руки превращаются вот в это:

Если рассудок и жизнь дороги вам, не гуглите “Ulnar Deviation”
Если рассудок и жизнь дороги вам, не гуглите “Ulnar Deviation”

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

Решается проблема довольно просто: делаем клавиатуру изогнутой. Вуаля:

И ваши руки теперь ну хотя бы не изгибаются в противоестественных местах.

Но тут кродеться проблема №3: люди-то оказывается разные. Я как человек ростом значительно выше среднего, остро это ощущаю, например. А у других людей вообще разная там ширина плеч, длина рук, глубина стола (глубина стола у меня как у человека довольно-таки средняя, надо признаться). Короче, угол входа рук в клавиатуру у всех разный. Поэтому если этот угол захардкодить, то он может просто не подойти. Как всегда случается, у некоторых производителей уже все формы отлиты, картинки на сайт поставлены, а человек такой взял и вырос больше, чем расчитывали! Проблема.

Что делать? Ну а что делать? Надо вынести угол в конфиг, конечно. Такие клавиатуры есть, называется эта фича «split», выглядит так примерно:

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

Следующая проблема это цифровой блок. Короче, основное эргономическое наблюдение насчет работы с устройствами ввода такое: чем меньше надо двигать рукой, тем быстее и эффективнее ощущается работа (да и связкам полезнее, ну вроде — я ж не врач). Почему некоторые программисты яро не любят мышь? Да потому что за ней тянуться надо. А это далеко. Особенно если через цифровой блок.

Я вообще-то готов объявить цифровой блок в принципе бесполезным. Выкидываешь его и всем легчает. Мышь рядом, все счастливы.

И поверьте, в мелких движениях кистью даже лишних два сантиметра это разница между жизнью и смертью.

Ну а если цифровой блок прям нужен-нужен, ну поставьте вы его налево, где он и присутствовать будет, и мешать не станет. Microsoft, кстати, это осознала и сделала блок в Sculpt автономным. Клади куда хочешь (хотеть надо слева, а не там куда обычно — просто уточняю):

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

Продолжая тему коротких пальчиков, которые не хотят далеко ходить. На клавиатуре есть так называемый home row — это дефолтное положение, где предполагается что будут лежать ваши пальцы, прежде чем что-то начать печатать, «стартовая» позиция. 

Ну как стартовая — она же и конечная, и промежуточная, как зона комфорта короче — выбежал, сделал че-то и скорей-скорей вернулся. Под эту позицию на кнопках F и J даже делают пупырышки, чтобы ты %username% мог с закрытыми глазами среди ночи найти этот самый home row. Скандалы интриги расследования. Не рассказывайте артемию.

Одна беда — home row в середине, а кнопки управления курсором далеко. А у программиста какое любимое занятие? Правильно, курсор туда-сюда гонять. Тут тоже решение довольно простое — управление курсором надо вынести на home row, с модификатором, тогда пальцы никуда далеко таскать не нужно будет. И вот тогда заживем! (п-с-с! Как это сделать написано тут).

Ну а раз курсор мы перенесли, можно еще место справа освободить, и мышь станет еще ближе, а клавиатура еще компактнее. Это все называется 60%. Типа, всего 60% клавиш от full-size клавиатуры, а так же удобно и ничем не уступает.

В жизни:

Можно пойти еще дальше и сказать, что пальцы штука короткая и двигаются они комфортно в лучшем случае на расстояние одной соседней кнопки от home row, дальше уже связки растягиваются, а там и сколиоз, и артрит, и геморрой с могилой. И если избавиться от четвертого и пятого рядок кнопок (цифры и F-кнопки), станет еще удобнее.

Так мы придем к идее 40% клавиатуры: у тебя есть несколько модификаторов, которые полностью меняют назначение кнопок. Таким образом какая-нибудь буква G это не только G, но и цифра 5, и процент, и какая-нибудь там открывающая скобка, в зависимости от нажатого сейчас модификатора. Пальцы далеко от home row не уходят, всё рядом, сплошные профиты.

Сколько модификаторов нужно? Вообще хватает двух, как ни странно. Вроде кажется, как же так, кнопок же дофига, не влезет же ничего! Но если раскидать, оказывается, что влезает очень даже комфортно. Да там еще и место свободное остается! (40% * 3 = 120% для математиков в треде)

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

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

Так вот, большой палец недонагружен. Он мог бы нажимать пять-шесть разных клавиш, а сейчас у него в лучшем случае пробел (причем дублируется на оба пальца, опять же — зачем?) и command. А чего на клавиатуре всегда не хватает, так это модификаторов. Точнее так — не хватает модификаторов, да и обычных кнопок тоже, которые было бы удобно нажимать. Мы уже выяснили, что все что вокруг home row на одну кнопку нажимать более-менее удобно.

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

Так мы приходим к раскладке называемой kinesis advantage, ну или ergodox: нагрузить большие пальцы по самое нехочу.

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

Я пропустил про смещенные по вертикали ряды еще — ну тут довольно просто, пальцы у нас разной длины, и кнопки это учитывают.

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

Такие клавиатуры действительно лучше традиционных — ими действительно удобнее пользоваться. Иначе бы мы — клавиатурные энтузиасты, нерды, — этим бы не занимались. Даже на собственном опыте, вот моя клавиатура еще не до конца по фичам «дожата», не все улучшения включает в себя. Но даже на ней эффект заметен — посадка лучше, печатать приятнее и быстрее. Называется Let’s split, а точнее ее модификация Levinson.

— Но это же ужасно! Кто будет этим пользоваться? Как на этом печатать вообще?

Согласен, выглядит непривычно. Но давайте представим, что мы не решаем задачу «как изменить status quo» в текущем доминировании традиционных клавиатур. Вместо этого мы хотим предложить новый дизайн, который исправит все проблемы, до которых мы смогли дотянуться. И этот новый дизайн например настолько всех поразит своей логичностью и преимуществами, что люди, которые только знакомятся с компьютерами и им все равно нужно научиться печатать на чем-то в первый раз, эти люди будут сразу учиться на нашей клавиатуре.

Это мысленный эксперимент. Да, да, я знаю, такого никогда не случится. Но тем не менее. Представьте, короче что барьера на переобучение нет. Просто объективно — могла бы де-факто клавиатура быть такой, если бы ее сразу такой придумали? Было бы лучше?

И вот почему я спрашиваю. Ага, наконец-то переходим к выводам, которые, как я и обещал, разочаруют. Я проделал весь этот путь. Я глубоко согласен с каждым шагом, и по отдельности, и вместе. У меня нет порога на переобучение — я уже переобучился. На меня не действует сила привычки или давление мейнстрима — я глубоко презираю все мейнстримное и люблю выделять себя из толпы, демонстрируя свободу мышления. Я люблю интересные решения и out-of-the-box thinking, в конце концов.

Но что-то не клеится. Ну да, не клеится. Есть что-то еще. Недавно Рахим рассказал мне, что он тоже купил Microsoft Sculpt и пользуется теперь эргономичной клавиатурой. Но когда я был у него в гостях, оказалось что Sculpt отодвинут в сторону, а на столе лежит обычная Apple Wireless Keyboard. Не знаю, говорит, пробую разное, но все равно возвращаюсь к эпплу. Почему?

В принципе, я и сам долго облизывался на Ergodox EZ. Она как бы логически лучше, правильнее моей let’s split. Но потом думаешь, что как-то too much. Может ли вещь быть ну слишком уж эргономичной? Чересчур? Вот посмотрите на эти ножки:

−20 к сексуальности
−20 к сексуальности

Да, с их помощью ты еще более правильно расположишь кисти рук. Но как-то наоборот, отбивает немножко желаение, а не прибавляет, да? Типа как два свитера надеть — логически вроде теплее, но на люди почему-то выйти неудобно.

Или вот недавно мне показали Jian. Это вот такой красавец:

Логично? Да! Прекрасный проект. По многим параметрам, опять же, он лучше моего текущего положения. Раскладка умнее, кнопки правильнее и в правильных местах. Однако впечатление — на меня — производит что у человека с такой клавиатурой нет друзей. Слишком много ума, слишком мало чего-то еще. Чего?

Я сам не знаю :) Я же предупреждал, что пост разочарует.

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

Но оказывается этого мало! Мало решить максимальное количество проблем максимально логичным способом. Есть еще один этап — перерешать те же проблемы так, чтобы на результат было приятно смотреть. Нет, я не знаю что значит «приятно». Does it bring joy?

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

И вот это уже сложно.

Что случилось с GUI-фреймворками?

Это третий пост в моем квесте по поиску GUI-фреймворка для десктопных приложений. Первый, второй.

Давайте немного сориентирую, что я ищу. Для многих «GUI-фреймворк» почти равно библиотека виджетов, чем больше тем лучше. Чтобы GUI собрать из кубиков лего минимальными силами. Меня это не очень возбуждает, потому что универсальных виджетов мало, а что-то более интересное надо делать под себя все равно. Поэтому для фреймворка важнее «уметь доделать свое», чем «побольше готового».

Также популярно мнение что GUI-фреймворк это look and feel, платформенно-зависимый или же просто не вырвиглазный. Типа это сложная часть, повторить лук платформы. Мне тоже пофиг. Дело в том, что сейчас самое идеальное время для GUI-фреймворка: все наигрались в игру «сделай look and feel как настоящий» и привыкли к веб-приложениям, где вообще каждый первый сайт разный. Плюс в моду вошел flat и минимализм, то есть виджеты рисовать дешево и просто, как никогда. А платформенный look and feel это иллюзия, все равно в каждом реальном приложении миллион случаев, которые не укладываются в стандартные checkbox/input/dropdown. И чем больше приложение, тем больше надо тюнить и дорисовывать самому. UI это не лего, его надо дизайнить и рисовать как целое, тогда будет гармонично.

Таким образом, от GUI фреймворка мне бы хотелось иметь базовые сложные вещи покрытыми (платформенно-зависимая обработка ввода, скроллинг, быстрый рендеринг, вывод шрифтов, dpi handling), какие-то базовые графические примитивы (прямоугольник там, линия, градиент, тенюшечки, svg) и возможность залезть под капот и все застайлить и запрогать как хочется.

Я НЕ ищу сокращения затрат на дизайнера за счет использования готовых компонент/дефолтного look and feel. Меня интересует возможность потратить много и долго, но сделать самому и хорошо, чем кое-как и из готового. Pixel-перфект и именно так, как мне нужно, а не так, как автор фреймворка сделал и сейчас уже хрен отковыряешь. Качественное вылизанное end-user приложение, а не дешево выглядящий массово производимый enterprise.

UPD: Ну и не надо учить меня программировать. Наверное навязывать там свой MVC или VDOM или что сейчас модное и свежее сильно не стоит. А то мода меняется, а фреймворк должен выжить.

То есть нужны идеально композируемые низкоуровневые примитивы без look and feel.

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

Вопросы примерно такие:

— Почему у Java не получилось AWT?

— Зачем понадобился Swing? Что принципиально изменилось по сравнению с AWT? Я так понимаю AWT пилился на C++, а Swing на Java? И стало лень писать по версии под платформу?

— Почему Swing плохо работает? Это косяк реализации или какая-то принципиальная проблема? И в чем именно заключается это «плохо работает»? Тормозит? Разъезжается? Что?

— Что за история с JavaFX, зачем он был нужен, зачем начинать опять новый фреймворк, какую принципиальную инновацию по сравнению со Swing хотели привнести (неужели CSS?) и что не задалось? Почему ноль интереса? Все разочаровались?

— Есть ли какой-то принципиальный затык в реализации кросс-платформенных GUI? У веба вроде бы получается, почему больше ни у кого нет?

— Почему Windows переизобретает свой тулкит в каждой версии, а macOS живет на Cocoa десятилетиями?

— Какое положение занимает QT? Я так понимаю что он C++ и bloated, то есть нацелен больше на энтерпрайз?

— Flutter подход выглядит а) разумно и б) достаточно правдоподобно в) не как говно. То есть поднять свой GUI тулкит с нуля вполне можно и можно даже достаточно убедительно сэмулировать нативный look-and-feel. Почему ни у кого больше такое не получалось?

— Если брать не только кросс-платформенные GUI, то какие есть киллер-фичи, которых больше нигде нет? Что незаменимо и неповторимо?

— UPD 2: Я читаю, что в JavaFX вводится Scene Graph, а в Swing все на JPanel. При этом разница ускользает от меня. Чем принципиально отличаются подходы? (кроме названий классов)

— UPD 3: Я ничего не знаю про tcl/tk, но многие вспоминают его с теплом. Почему?

В общем, интересует история развития мысли и инсайты. Истории вроде «взяли ту же идею и понадеялись что сделаем лучше, а получилось то же самое» — не интересуют. Ну потому что а что вы ожидали? Истории «у фреймворка Х была вООООт такая амбиция (какая?), но он разбился о такую проблему (какую?)» — интересуют очень.

Если вы работали с GUI кроме веба, расскажите, что там у вас была за история?

Пациент умер, выносите

Opera Paper Products как-бы-шутка-но-не-такая уж и шутка
Opera Paper Products как-бы-шутка-но-не-такая уж и шутка

Я занимаюсь веб программированием 15 лет. Когда я начинал работать за деньги (компьютер у меня был и раньше, конечно), IE 6 был самым передовым и инновационным браузером, Firefox должен был вот-вот появиться, разработчики верили, что будущее за XHTML, до первого драфта HTML 5 и запуска StackOverflow оставалось 4 года, а до первого Chrome – пять лет. 

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

Получается вот как. Веб хорош для быстрого прототипирования, простого delivery, но масштаб его роста сильно ограничен. Грубо говоря, он подходит только для прототипов и игрушечных задач. Что-то вроде языка Basic, вроде и программы писать на нем можно, но всерьез его никто не берет. Веб, конечно, не пропадет, но в конечном счете займет место какого-нибудь там питона, на котором будут детей в MIT учить и ученые не слишком требовательные графики рисовать.

Почему? Качество. Все, сделанное на вебе, просто не доводится до какого-то сносного качества. Да, на вебе можно начать, и это будет быстрый старт. Но веб нельзя дожать до приемлимого состояния. От слова никак. Обязательно будет смешно, плохо и стыдно, а хорошо и быстро — никогда. Все веб-программисты на самом деле верят, что это они недостаточно стараются, но если было бы время, можно было бы сделать нормально. На этом самообмане вообще вся веб-индустрия держится. Но нет. Нельзя. Ни за какие деньги. Просто физически невозможно.

Ладно, простые статические страницы с текстом — ок, может быть. С адблоком и reader mode жить можно. Хотя и тут есть умельцы, которые умудряются сто слов отрендерить в страницу в 20 мегабайт, потому что технологии, инновации и disruption.

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

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

Но если взять платформу в целом, без сверхподвигов и свехржертв, иллюзия пропадает. Если дать на нее посмотреть человеку, не укушенному веб-пропагандой, иллюзия пропадает. Как только приложение открывает кто-то, отличный от его собственного разработчика на гигабитном интернете и двенадцатиядерном аймаке про, иллюзия пропадает. Начинается бесконечный поток убогостей, шероховатостей, заусенцев, тормозов, проблем, ошибок, которые в принципе не устранить никаким образом. Даже если у разработчика есть внимание и желание возиться с такими глупостями, даже если приложить бесконенчые усилия — нет, оно не исправляется в принципе. Я знаю, я сам такой разработчик, и я пробовал много раз, и много раз обжигался. Хотя когда смотришь издалека, на бумаге, вроде все хорошо. Что может пойти не так? Да все что угодно. И не только может, но и пойдет, причем в самом неожиданном месте. Веб это такой аналог российского автопрома — издалека вроде тоже машина, вроде тоже ездит, че еще надо-то? Но, как мы все прекрасно знаем, есть нюанс.

Существует ли версия этой реальности, где веб вырастает во что-то более значимое? А как же WebAssembly?

А что WebAssebly? Эта чехарда имеет смысл только только для людей, которые думают, что компьютеров нигде кроме браузера не существует. Очнитесь, ребята, это еще один никому ненужный слой абстракции. Мы с радостью себя отбросили на N лет назад и теперь с радостью это преодолеваем. WebAssembly — это попытка запихнуть в веб то, что без веба прекрасно работало уже несколько десятков лет как — С++ приложения. Чтобы что? Я не знаю чтобы что. Чтобы условный Вася все равно качал себе Слак, завернутый в Электрон, зато теперь написаный на WebAssembly. Смотри, мам, он почти как нативный, даже иконочка есть! И почти не тормозит. Почти-почти. Еще раз — попробуйте выкинуть говно веб-пропаганды из головы и взглянуть на это трезво. В чем тут достижение-то?

Не то чтобы я НЕ хотел чтобы веб во что-то превратился. Я хотел, может, даже больше других. И был момент лет десять назад когда многие в это верили и был еще шанс. Просто пора зафиксировать (давно пора, я просто немножко тормоз, конечно) что веб это веб, не больше и не меньше. Все эти глюки, неровности, тормоза, неудобства, несовместимости, интервенции — это не временные мелкие неприятности, которые вот-вот разрешатся со следующим апдейтом Хрома. Это неотъемлемые свойства платформы, она такая сейчас и примерно такой же будет всегда. Надеяться уже в принципе не на что. И не то чтобы у меня было для вас что-то получше, или что я могу сказать, где будущее. Все что я могу сказать что оно точно не здесь.

Распродажа

Привет!

Я тут решил устроить распродажу. Все вещи хорошие, вы же знаете, что я покупаю только новое и качественное, отношусь ко всему бережно. Просто некоторыми вещами — так получилось — почти не пользуюсь. Хочу отдать в хорошие руки, чтобы приносили радость. На все скидки 30-50% от оригинальной цены. Живу в Москве, м. Марьина роща.

P.S. Ссылки ведут на подробные объявления с фотографиями и описаниями

1. Складной велосипед Shulz Krabi ПРОДАЛИ

2. Эргономичное кресло Aeron New размер C на гарантии ПРОДАЛИ

Фотки настоящие, с нашей кухни (ну кот, допустим, прифотошоплен, но и только!). Сейчас, кстати, у оф. дилера такое кресло 120 000+ ₽ стоит.

Для любопытных: погуглите Herman Miller Aeron in movies

3. Очиститель воздуха Xiaomi Mi Air Purifier 2S ПРОДАЛИ

4. Увлажнитель Xiaomi Smartmi Zhimi Air Humidifier 2 ПРОДАЛИ

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

5. Компактная беззеркальная фотокамера Nikon 1 J1

Да, именно на эту камеру сделана классическая фотка с балалайкой и макбуком

6. Беспроводные клавиатура и мышь Microsoft Sculpt ПРОДАЛ

Это лучшая из не-гиковских эргономичных клавиатур, спросите хоть @levwalkin. Служили мне верой и правдой, как и Natural Ergonomic 4000 до них. Ну я что, я гик и упоролся, сейчас моя клавиатура выглядит как-то так.

7. Медиа-плеер Boxee Box ПРОДАЛ

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

8. Игровой компьютер i5-6500 / DDR4 8 Gb / GTX970 4Gb

Хоть и покупался в 2016, игры от этого хуже идти не стали. Буквально вчера гонял на нем Ведьмака 3 в 1080p. Единственная проблема — я на нем почти не играю, запускаю раз в 2-4 недели может быть. Windows дольше обновляется, чем этот компьютер крутит игры. В остальном все прекрасно.

9. Серое пальто с объемным капюшоном

Юля не носит, мне тоже не подошло. Продаем короче. Вот еще одно:

10. Серое шерстяное пальто с рукавами ¹⁄₂

Как-то так. Пишите напрямую в телеграм @nikitonsky, если вопросы или что-то понравилось.

Тактика

Добрый день, с вами Тонский и рубрика «внезапные озарения по гейм-дизайну, о которых никто не просил».

Да, я все продолжаю залипать на стримы по Героям и делать далекоидущие выводы. Вот что меня какое-то время удивляло: герои 3 и 5 вышли давно, сообщество с тех пор их оценило, погоняло в хвост и в гриву и понаписало патчей и «турнирных» правил, которые делают игру в целом более честной и терпимой. Причем меняется многое — и баланс, и интерфейс, и сетевой код, юниты и герои вводятся и запрещаются. Но что никогда не трогают так это ИИ. И это меня удивляло — почему?

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

Это было во-первых. Во-вторых, тактический ИИ в героях, который как раз руководит этими нейтральными стеками, довольно тупой. То есть он прямолинейный, предсказуемый, не просчитывает вперед, не строит стратегии или даже плана на битву, совершает из-за этого совсем локально-как-бы-оптимальные-но-уже-на-следующем-ходу-кошмарные ходы. Если сравнить с шахматами, то это примерно уровень «на каждом ходу брать самую дорогую фигуру или двигаться к ней», все. Казалось бы, в чем интерес? Почему это не фиксят, сделать лучше такого даже стараться особо не надо. Значит оно так специально.

Ну и получается что да. Я еще один пример приведу, игра Into the Breach. Такая игра необычная, в которой ты не то что не пытаешься предсказать, как поступил бы «достаточно рациональный противник», в ней следующий ход противника прямо явно вываливается на тебя как часть ситуации. То есть на каждом ходу тебе просто показывают, что будет делать враг. А в чем тогда игра? Игра в том, чтобы обладая этой информацией, сыграть так, что бы у него ничего не вышло. Предотвратить этот самый предсказанный ход, по возможности, на 100%. То есть это такой пазл, в котором, во-первых, ситуация очень несимметричная и к противнику совсем нечестная, а во-вторых, вероятности отсутствуют как класс. Будущее просчитывается, RNG не мешает. И это вполне играбельно и очень даже интересно, зазасывает.

Ну и возвращаясь к героям, штука в том, что тактически Герои как раз такая же игра, хотя может она себя так и не осозновала. Главный шик — зная предсказуемую модель поведения противника, максимально абьюзить ее и получить с этого непропорциональное преимущество. Выманить врага из стен замка, где ему, стратегически, гораздо лучше. Заставить медленный юнит гонять по полю за быстрым, пока лучники его обстреливают. Подойти на столько, чтобы ударить первым. Подставить маленький отряд, чтобы потом безболезненно врубиться большим. Взять юнита ради права первого хода. Заманить на мины. Встать между камнями, чтобы кони не подошли. Обманом растратить ману. Это все вполне тактические задачи, искать решение которых (и находить) вполне себе особый вид удовольствия. Удачно подобранная конфигурация армии (иногда вплоть до плюс-минус одного юнита) кардинально меняет ситуацию и может разносить совсем неожиданные по размеру армии, если придумать как. Герои, как в них играют сейчас, и есть игра про это.

А если ИИ был бы умнее, битвы очень быстро перестали бы быть тактическими и скорее стали бы соревнованием у кого армия толще. Сильный нападает на слабого, слабый обходит сильных. Ну или классика геймдизайна, камень-ножницы-бумага, выбирай то что контрит врага, угадал — будешь в шоколаде, нет — извиняй, дорогой. Не то чтобы таких игр не бывает — бывает, конечно, и не то чтобы они неинтересны — очень даже интересны, но по-своему, по-другому. Если ты любишь тактику, то в стратегических героев ты бы уже не стал играть.

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

Отступаем, нас окружили!

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

Короче, прикидывая разные способы расстановки юнитов на доске, я понял, почему в героях 1-2-3 сетка была шестигранная. Дело к количестве спрайтов. Смотрите, если сетка вот такая:

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

Для позиций 4, 5 и 6 мы зеркалим спрайт. Вуаля! Нужно рисовать каждый спрайт только в одном (!!!) варианте. А юнитов в героях ого-го сколько!

Кстати, обратите внимание, что если сетку повернуть на 90°, то это свойство пропадет. То есть даже угол поворота неслучаен!

Если взять параллельную квадратную сетку, как тут (wargroove):

то напасть можно слева, сверху и снизу, а это уже три варианта каждой анимации (лево-право зеркалятся, верх-низ не). Три варианта это прям тяжеловато.

Дальше идет сорокапятиградусная изометрия. Как в Into The Breach:

Тут положения всего два — мордой вниз и мордой вверх, вариации лево-право идеально зеркалятся. Уже лучше.

В Into the Breach, кстати, решили даже этим не заморачиваться и вообще не крутят юнитов. То есть если надо напасть назад, то бьют жопой. Тоже вариант, решает кстати проблему из предыдущего поста, что не очень хочется разглядывать юнитов со спины. И не такой уж плохой, как кажется — я наиграл 26 часов и понятия не имел, что у них атаки так топорно сделаны, пока не загрузил и не начал изучать специально.

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

Молодцы, что: это позволило сделать консистентное освещение (см. тени на тиграх) и избавило от вопросов «в какой все-таки руке у призрака голова?», которые неизбежно возникли бы в случае трюка с отзеркаливанием.

Ну а в пятый уже было настоящее 3Д, и там можно крутить модели уже как хочешь. И к шестигранной сетке никто возвращаться не стал. Почему? Моя гипотеза — квадратная дает больше тактических возможностей: меньше места, сильнее толпятся юниты, проще закрыться. Правда, это если не разрешать диагональные атаки, а они в пятых были.

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

В каких героях трава зеленее?

В третьих.



...



А что, были сомнения? Давайте по порядку.

Герои Меча и Магии 3 поразили меня в детстве. Но и сейчас за просмотром стримов меня не отпускает вопрос: объективно, было ли в них что-то такое, что растеряли гораздо менее успешные следующие части? И если да, то что именно?

Приключение

Для меня третьи герои всегда были приключением. Такая странноватая РПГ, где ты набрал из болота змей, с гор гремлинов с гирями, оседлал боевого пегаса, сунул за пояс клинок Армагеддона и вперед — карабкаться на вулканы, жить в мухоморах, встречать ящеров с луками и трехголовых собак, изучать морскую навигацию на сухопутной карте, находить шапки епической силы в ровном поле, строить пещерным мишкам берлоги и планомерно истреблять население волшебного королевства. 

За каждым углом поджидал сюрприз, и сюрпризы не заканчивались ни на пятый, ни на десятый раз. Я, например, очень расстроился, когда осознал, что список существ конечен, артефакты рано или поздно начнут повторяться, хижина ведьм дает примерно одни и те же навыки, и даже ящик Пандоры — вещь предсказуемая. Все это тактическое ядро, оптимальный билд-ордер, относительная сила замков, цепочки и прочие техники «папок» меня, честно говоря, никак не греют, хотя наверняка и позволяют игре держаться на плаву до сих пор. Но до всего этого было долгое и прекрасное приключение.

Атмосфера

Итак, что нужно для приключения? Сказочный мир. Тут трудно сказать, как именно сделать мир сказочным, как это передать, но вот, пожалуйста, факт есть факт: одного взгляда на карту достаточно, чтобы воскликнуть «Приключение!»:

С такой армией это уже скорее геноцид

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

Если вам с первого взгляда не хочется это все избегать и изучить, то я даже не знаю:

Мам, еще пять минуточек!

А вот следующие серии атмосферу уже растеряли. В четвертой части пиксельную графику поменяли на низкополигональные пререндеры, и выглядело это по-икеевски квадратно и бедно. Увы, там просто не хочется находиться. При всех остальных преимуществах, их подвела... графика. Ну не было тогда еще хороших 3Д моделлеров, не готова была технология.

Конструктивизм пробрался и в Аксеот

Пятые переключились в 3Д — время диктовало. Нивал очень старался и нарисовал всех действительно классно. Но 3Д это все-таки несколько другая точка зрения, другой масштаб: ты гораздо ближе к герою, гораздо меньше видишь и теряется ощущение именно фэнтезийного царства. Скорее какие-то переулки. Тупо меньше объектов входит на экран.

Сейчас вот эпично проплыву два шага влево, а там и экран закончится уже

Плюс сама по себе летающая камера убивает тайну. Скажем, избушка ведьмы может выглядеть загадочно и устрашающе в 2Д, если правильно ее нарисовать и подать, скажем, когда она выезжает на тебя при шаге в туман войны. А в 3Д, когда ты можешь повертеть и рассмотреть ее с любой стороны в любой момент, эффект уже не тот. Это какая-то аэрофотосъемка с дрона, скучная, как репортаж новостей. В 3-х ты маленький герой, затерявшийся в таинственном лесу, в 5-х уже некая сверхсила, парящая над полем.

Широка страна моя родная...

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

Внезапные ноги чужого героя — одно из самых страшных событий за игру

Герой

Ладно, что нам еще нужно? Герой. Чтобы себя ассоциировать и прятаться от реальность, какая РПГ без этого?

Вообще формально вроде герои есть (они в названии даже, лол). У них есть биография, портрет, их можно наряжать в артефакты, качать и изучать магию. На деле же они и отличаются разве что портретом, все их специальные умения — бонус к такому-то существу/атаке/защите. То есть у каждой расы есть защитник, есть нападанец, есть герой с бонусом к существам. Так себе проработка. В HoMM 3 хотя бы портреты были ушлепские, что доставляло.

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

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

возьму в бой четырех героев, мало ли чем этих тигров кормили

Или вот еще какой момент: герой это мое альтер-эго, хочется большего контакта с ним, большей уникальности: мой, хороший, чем просто условный курсор на экране.

Дайте мне например по-настоящему навесить на него артефакты. Вот в третьих/четвертых еще было какое-то подобие куклы, poor man’s doll, но все же:

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

Хочется чтобы по-настоящему. Хочется, если подобрал красивый лук, то чтоб прям в руки ему всучить. И чтобы он прям из него красивой огненной стрелой на поле боя пулял. И чтобы стрелы именно из того колчана, что я ему давал, врагов протыкали. А не абстрактные какие-то среднестатестические «модель №5 из биржи моделей». Иначе зачем это все? Я хочу, чтобы герой именно в найденных шмотках ходил. Ладно в девяносто девятом, но в 2015-то уже можно это сделать?

Героя в Диабло 3 обычно хрен разглядишь, но в принципе это твои, индивидуальные шмотки

И чтобы модельки соответствовали герою. Если он на портрете синекожий, то и на слоне пусть сидит синекожий. Если с косичкой — я хочу в бою видеть эту косичку. Идентификация, эмпатия, вовлечение. Это все не работает, пусть у вас даже 100 героев придумано, если все они рисуются одинаково.

Согласитесь, на лошади сидит явно не мужик с разрисованным лицом, а очень даже рептилоид

Ну и вовлечение можно продолжить. Анимированные портреты? Реплики от лица героев? Пусть они комментируют происходящее. Это ведь они победили/проиграли/взяли замок/набрались опыта. Ролики, как именно твой герой покидает поле боя с армией. Или лежит побитый. По крайней мере будет ощущение, что они участвуют в происходящем.

В Into the Breach, например, герои комментируют твои тактические умения по ходу боя
В King’s Bounty каждому (!) противнику придумали уникальный портрет и историю

Замки

С замками все и просто, и сложно. Кайф замков в первых тире четвертых в том, что у каждого существа есть свой «домик». То есть в начале есть пустая поляна, потом на ней появляется несколько жилищ, ты можешь в них зайти, а там живут определенные ребята, и они «согласны присоединиться к твоей армии за определенную плату». То есть это такой нарратив, чувствуете? Постепенно ты этот замок обустраиваешь, и вот он уже не просто поляна, а большой мегаполис, в котором бурлит жизнь.

боже, что за дыра?
во, уже можно жить

В пятых как-то эту магию продолбали. То есть они придумали очень классный концепт 3Д-городов, которые надо крутить и смотреть со всех сторон, и они у них действительно классные и разные у всех шести рас, и все на 360°.

Красиво, но непонятно: еще дыра или уже не дыра?

Но два момента: ты сразу начинаешь со вполне эпичным городом, то есть нет ощущения «мне выдали поляну, а я уж ее обустроил». Он уже неплох, и особо лучше визуально не становится.

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

видишь архидьявола? а он есть...

В седьмых, кстати, нововведение с 3Д городами откатили и вернулись к классическому matte painting с домиками (правда, есть ощущение, что из-за бюджета).

деньги ушли НЕ СЮДА

А теперь пожелания.

Во-первых, можно как-то схему построек привести в чувство? В чисто интерфейсном смысле. Что ни серия, то ад кромешный, пойди пойми где что построено, что можно построить, и что для этого нужно.

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

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

я же понятно объясняю?

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

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

Войска

С войсками есть вот какой тонкий момент. В 1-2-3 ты видел свою армию лицом. Сбоку, то есть, но в принципе лицом. Вполоборота.

Каждый в лучшем ракурсе. Всех прекрасно видно

А вот в 4 ракурс такой, что ты видишь своих со спины. И это уныло.

Что там? Поверни меня! Свои снизу :(

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

А 3Д значит что? Что иногда придется разглядывать свои войска с жопы. Не придумали еще такого 3Д, чтобы ее спрятать.

Очень не мешало бы разнообразить битвы. В H3 битва на кораблях всегда была событием, так как это чуть ли не единственная «необычная» раскладка была.

Капитан! Джек Воробей

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

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

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

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

Персонализировать отряды? Было бы круто, на самом деле, в смысле именно привязанности. Имена им, наверно, не дашь, а вот боевой опыт поотрядно можно было бы и копить, наверное. Ветераны-скелеты, которые с тобой с первого хода, против новичков-личей, которые и пороху-то не нюхали. Сразу начинаешь ценить тех, с кем прошел огонь и медные трубы, «тот самый эльф, которого я чудом спас на втором ходу», а не просто «безымянное мясо». 

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

Эпичность

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

Я начну со вторых героев. Посмотрите, какая очаровательная пиксельная графика. Хоть завтра в какое-нибудь инди:

плюшевые волки, толстый мальчик-хоббит, колдун на пони и смешной кабанчик, ми-ми-ми
какой лич! какой вампир! Мумии перевязали руку! Птице наступили на лапу! Рыцарь тоже себя видно что не очень комфортно чувствует.

Помимо очарования, чувствуется еще и некая несерьезность, юмор. Но это добавляет характерности и очарования.

мы конечно некроманты но живем все равно в домиках

В третьих на войсках решили портренировать 3Д-моделлинг, и в итоге впечатление от них такое, что в битве инструмента с художником побеждал инструмент. У них у ангелов крылья растут из жопы, например!

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

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

А дальше что? Дальше юмор стал потихоньку убывать, а эпичность — прирастать. В пятых существ еще пытались сделать характерными, в шестых и седьмых это уже скучнейшие красиво-подтянутые молодцы-девицы в худших традициях обложек женских романов и безликих free-to-play мобильных игр. Все, абсолютно все существа выглядят как мутанты на анаболиках с аттитьюдом «ох щас въебу».

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

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

Циклоп должен быть велик, толст и безобразен, а не кросфиттером-переростком (то есть просто кросфиттером).

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

Блин, у них даже троглодит явно регулярно посещает спорзал.

А это, извините, мегатрон какой-то, а не некромант. Дедушка, зачем тебе такие большие доспехи?

А тут у нас что? Город с ногами? Чтоээ?

Ой, ладно, что уж, там уже худшие фэнтези-стереотипы полезли. Ресурсы уже у них не могут быть просто кристаллами или серой, это обязательно кристаллы драконьей крови и драконья сталь. Драконья, блин, сталь! Выкованная драконами, что ли? Или добытая из дракона? Из-под дракона, может?

Ладно.

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

Нарратив

И последнее, важное, это нарратив. Что это такое легче всего понять на примере King’s Bounty. Я сам не играл, но вот эти видео вполне смотрибельные. Так вот, какая там штука? Все, что происходит, оно не просто так, а описывается словами. Вы не просто приходите в замок и закупаетесь, а король устраивает вам аудиенцию. Вам не просто нужно всех вынести, а это преступники, совершившие преступления против короны. Конкретные причем, описанные, и у каждого свои. У противника в замке не просто 100 скелетов, а это известный некромант, проводивший эксперименты над людьми. Ну и так далее. Это нарратив, и это придает происходящему некий смысл. Грубо говоря, это то, что отличает сухо-формальные крестики-нолики от морского боя.

вы не просто закупаетесь в замке, а король устраивает вам аудиенцию
Разыскивается: пустил пиратов в замок. Джек?
меч, завернутый в кусок карты

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

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

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

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

Нововведения

Теперь о том, чего ни в одних героях нет, но что остро нужно серии. Как говорится, мне-то виднее, хе-хе.

Плотнее склеить происходящее. В героях три основных режима — город, карта и битва. Грубо говоря, было бы круто, если экран города отображал те же окрестности, что на самом деле окружают город на карте. И город на карте был миниатюрой, реально отображающей постройки и, может быть, войска? То же самое между битвой и картой — если я напал в лесу, покажите мне эти деревья! Если отряд защищал артефакт, я хочу видеть, за что дерусь.

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

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

В общем, уже джва года жду правильного камбека, а не вот этого графоманства, в которое все скатилось. А, ну и караваны. Но караваны еще в четвертой части ввели.

UPD: Скорость

Герои это конечно игра для неспешного вечера, что называется take your time. Все продумать, спланировать, аккуратно отыграть. Она не торопит, и торопиться некуда.

Однако. Однако. Важна не только скорость игры, но и отзывчивость интерфейса. Скажем, в третьих героях все четко и по делу — кликнул, герой метнулся, отряд подскочил, удар, ответ, смерть. Без запинок, со скоростью мысли.

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

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

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

Итого

  • Вернуть очарование и толику несерьезности,
  • фиксировать камеру (крупно бой, мелко карта) или 2Д,
  • набить карту объектами под завязку,
  • внятное строительство в городах,
  • побольше нарратива,
  • плотнее склеить происходящее,
  • разнообразить битвы тактически.

Напоследок добавлю. Я вчера сел ознакомиться с Heroes 7. И при всех ее недостатках, при всех минусах и промахах, что я тут описал, главная механика в ней прекрасно работает! В игру засасывает на несколько часов сходу, вообще на автоматизме. Если все это не расплескать, то героев вполне можно вернуть. Взялся бы кто толковый еще. Понимающий.

Дизайн для продолжающих

Пробегал тут в соцсетях совет на тему дизайна:

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

Конечно, когда совсем бардак, нехорошо. Но и когда все рассовано по квадратно-гнездовым ячейкам, возникает проблема.

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

Так и сетка, она просто есть, она ничего не означает, ничему не соответсвует, ее нет в материале (как сказали бы бюрошники — в мире клиента), зато она очень сильно коммуницируется, «фонит».

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

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

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

С системой в этом смысле ничего делать не нужно. Не хватает только следующего шага: нужно убрать швы, чтобы их не было видно. А то получается, что общая форма самолета определяется в первую очередь каким-то ГОСТом на использованные заклепки.

усы2

Впечатления от iPhone после 6 лет Android/Windows телефонов

Наконец вернулся к Apple. До этого отмотал три года на Nexus 5X, перед этим — Lumia 1520 и iPhone 4S. Последний до сих пор у меня лежит, я его даже включаю иногда, чисто поржать — современные приложения занимают примерно верхнюю половину экрана тулбарами, нижнюю — клавиатурой, а между ними остается места на 1-2 строки текста.

Так вот. iPhone 8. Пока свежи впечатления.

Очень маленький. Сильно меньше Nexus 5X, который и сам всего 5,2", мелочь по сегодняшним стандартам. iPhone 8 всего 4,7". Надо было брать плюс. И нет, десятка не спасет, потому что важна ширина экрана, а не высота (ну в кнопки я не попадаю, ну. Пальцы толстые).

Стекло и округлые формы — очень скользкий. Как обмылок. И нет, я не преувеличиваю. Чехлы я терпеть не могу, а без них телефон практически невозможно держать одной рукой, что-то нажимать и чувствовать себя уверенно, что он не выскользнет. Да что там, я даже из кармана каждый раз с опаской его достаю. Понимаю теперь людей, которые кольцо-держатель сзади клеят. Apple Pay вообще атас, по сути ты наклоняешь телефон ровно так, чтобы ему удобно было выскользнуть (от себя), и надеешься только на трение между большим пальцем и кнопкой home.

Лично у меня от одной этой картинки подкашиваются ноги

Кнопки громкости и включения с одной стороны (справа) были как-то удобнее. Наверное потому что большой палец сильнее сгиба указательного.

Приложения сильно веселее и вылизаннее. Тут никакого сравнения. Видно, что для iPhone стараются, даже одна и та же компания. Сбербанк, например, на голову красивее. Речь не о функциях, ничего принципиально нового они конечно не делают, но — анимации (да, не нужные, но приятные, satisfying, и небольшие), какие-то не знаю, переходы, взаимодействия, цвета, иконки. Твитбот, например, очень неожиданно удивил, как можно создать ощущение отзывчивости в условиях, когда Twitter API всем отвечает с одной скоростью.

1password работает прям лучше. Не знаю почему, я был уверен, что на iOS всё как раз анально огорожено и нормального менеджера паролей не сделаешь. Нет, он как раз лучше.

Интеграция с Маком, да, приятная. Сразу начинает какие-то звонки принимать, пароли шарить, использовать сеть телефона, показывать заряд телефона, наушников и т.д. AirDrop опять же.

Даже заряд показывает, лапочка. А ведь его никто этому не учил!

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

Кнопки «взад» сильно не хватает. Многие приложения реализуют «свайп слева», многие, но не все. Гугл, например, этот жест интерпретирует как листание. Плюс иногда вылезет какой-то попап без очевидной кнопки закрытия и сиди думай, как убрать. Или клаву например схлопнуть как? 

Особенно бесит несимметричность камеры. Попасть в камеру — свайп влево, а выйти — по кнопке Home. Постоянно путаюсь.

Перегруженная кнопка Home. Там есть тап, двойной тап, длинный тап, и у них еще разные действия в зависимости от того, где ты находишься. Скажем, двойной тап это либо вызов Apple Pay, либо переключение между недавними приложениями.

А. Ну и иконки наконец все одного размера и формы.

Ну да, Андроид не мог выровнять даже размеры квадратов

Сам iOS тоже не без багов. То страничка не пролистнется, то настройки зависнут. Ну бывает.

Force touch я так и не распробовал. Предполагается что если ты сильно нажимаешь на экран, то это еще одно доп. действие, на которое навешаны какие-то дополнительные интеракции. Например, на Home Screen оно вызывает контекстные меню у приложений, в Сафари приближает картинки и т.п. Ну так вот, из-за того что этот жест в принципе есть, приходится нажимать long tap очень осторожно (т.к. чуть переборщил и уже force touch). А long tap это вещь более старая, более универсальная и как следствие более полезная (перестановка иконок на Home screen например). Одно толковое применение Force Touch все-таки есть — это превращение клавиатуры в трекпад чтобы двигать текстовый курсор.

Еще не понял до конца что делать с нотификациями. На Андроиде нотификации работали четко как инбокс с задачами. То есть они копились, а потом я их разгребал. В связи с этим очень важный жест «разделаться с нотификацией, т.е. убрать ее, отметить как обработанную». Так вот, на iOS как будто чтобы их выкинуть надо ДВА раза смахивать влево, а это капец как муторно. Если смахивать вправо, то оно откроет приложение с этой нотификацией, если влево — меню. А как быстро избавиться? И когда нотификация приходит баннером сверху, тоже непонятно, как ее сразу удалить, а не просто убрать с экрана.

После свайпа нужно либо жмакать Clear, либо свайпать влево еще раз

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

Видишь нотификации? А они есть (надо потянуть снизу, чтобы увидеть)

Неоднозначная навигация. Я люблю как — каждый экран живет ровно в одном месте. А тут допустим экран с виджетами можно вытащить на заблокированном экране слева, в нотификациях сверху или на нулевом экране home screen. То есть три места. Поиск — два (виджеты и любой home screen). Нотификации — два (заблокированный и сверху). Камера снизу из контрол центра, справа на заблокированном экране, сверху из нотификаций и еще просто из иконки. То есть четыре места. Путает короче. На андроиде как было? Два раза нажал питание — камера. Я только этим шорткатом и пользовался, у меня даже иконки нигде не было.

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

скролль прицельно, %username%!

Но в целом все равно iOS приятнее Android. Приложений больше, они качественнее, Cocoa (или как он у них называется) сильно веселее Material, по совокупности всё более причесано и меньше совсем очевидной тупни. Лучше, но всё равно даже близко не «совершенный, идеальный интерфейс», вполне такой себе продукт своего века, с плюсами и минусами, насколько это вообще в человеческих силах.

усы2

Универсальная раскладка (скачать)

Выложил раскладку из предыдущего поста для Мака https://github.com/tonsky/Universal-Layout

Немного подвигал еще буквы и пунктуацию, теперь запятая, точка, восклицательный знак, вопрос, точка с запятой, двоеточие, двойная и одинарная кавычки — все на дефолтном слое (без шифта). Буквы Б, Х и Ю уехали со своих мест, но недалеко — не теряйте их.

Из фидбека к посту взял идею, что № не нужен и вместо него даже в русской раскладке лучше # (потому что хэштеги).

Также здесь включена «машинопись», т.е. цифры набираются с шифтом, а символы на цифрах — без шифта. Это жутко удобно, т.к., как показывает статистика, цифры набираются сильно реже. Тут пруфы. Я, собственно, с 2015 года так и сижу.

По Option (Alt) включается Типографская раскладка Бирмана, не пугайтесь. Это тоже очень хорошо зарекомендовавшая себя на практике штука, если привыкнуть — длинные тире, правильные «кавычки» и другая всячина набирается так же беспроблемно, как и обычный текст. Я разбавил её буквами Ё и Ъ, которые теперь тоже живут на Альте.

Картинка:

Будем считать это версией 1.0, жду звездочек на гитхабе, отзывов и советов.