Почему Steam не способен сделать Linux игровым
Предисловие и проблемы
Вероятно каждый слышал про такую DRM-платформу как Steam, ведь это одна из самых популярных платформ для распространения игр:
реклама
Однако далеко не каждый задумывался о том, что Steam продаёт не игры, а разрешения на запуск игр в пределах платформы (лицензии, "билеты"), что в любой момент могут отобрать у любого пользователя по щелчку пальца, именно потому Steam я называю DRM-платформой.
Конечно, разработчики могут выпустить игру без DRM (Digital Rights Management), и такие игры смогут работать независимо от Steam, но они не отмечаются в библиотеке как "DRM-Free", и пользователь не может узнать заражена ли игра DRM костылями пока не будет проверена на отдельном тестовом ПК.
реклама
Это уже само по себе большая проблема, ведь я, как игрок, не могу как минимум треть своей библиотеки Steam запустить без явного разрешения со стороны серверов Valve, даже если у меня сохранились файлы игр на HDD/SSD, ведь разрешение можно получить только через интернет после авторизации в аккаунте.
Даже взять игру 7 Days to Die, меня настолько достали эти рабские ограничения DRM-платформы, что я предпочитаю играть только в "пиратские" версии, которые могу запустить когда хочу я, а не какой-то дядька на другой стороне планеты:
Фактически DRM-платформа вынуждает меня "пиратить" игру, ибо не везде есть доступ к интернету, чтобы спросить разрешение на запуск...
реклама
Ещё добавляем проблему излишнего расхода ресурсов, на один только Steam может уходить порядка 2 ГиБ ОЗУ, это больше, чем расходуют игры Half-Life 2 (как минимум до 2014 года версии) + FarCry 1 вместе взятые:
Потом идёт проблема удалённых страниц в магазине, а так же блокировки по регионам, то есть когда-то я покупал игру, а сейчас мне запрещают даже просматривать страницу игры в магазине Steam! Хотя в основном это зависит, конечно же, от издателей игр:
Игры, что были удалены из магазина Steam закономерно превращаются в "Unknown Package", я даже не помню что там было:
реклама
Добавляем сюда отказ Valve от поддержки операционной Windows 7 в 2024 году и получаем ситуацию, когда система игрока в принципе не может удовлетворить системные требования игры, ведь для игры рекомендуется Windows Vista / 7 / 8, однако DRM-платформа Steam больше не работает на этих системах официально, что ставит игрока в сомнительное положение:
Могу ли я установить предназначенную для Windows 7 игру находясь в среде Windows 10/11? Конечно могу, хоть Windows 10/11 и не указана в системных требованиях, но это значит, что я нарушаю системные требования по вине Valve, ибо именно Valve отвечает за сам Steam...
Теоретически, я и под линуксом могу запустить игру, если поковыряюсь в настройках включив костыли под названием Proton (модифицированный Wine для Steam), но опять же, игра не предназначена для платформ, на которых Steam может официально работать:
Ну и проблема выбора версий, тут как и в вечно недоразвитых линуксах - переключение версии означает замену уже установленных файлов игры другой версией, когда в случае "пиратства" я могу играть как в игру версии 2017 года, так и в игру версии 2021 года ничего не переустанавливая, и даже делать это одновременно при желании, но DRM-платформа не позволит такое, увы:
Особенно стоит заметить тот факт, что Steam может попросту принуждать игрока использовать последние версии игр, не предоставляя доступ к старым версиям, например оригинальный Half-Life 2, в старые версии не поиграть, ибо разрешено только в самые последние версии играть:
Может это покажется несерьёзным, но увы, разница между игрой Half-Life 2 версий 2021 и 2014 года очень даже серьёзная, и она в пользу игры старой версии 2014 года выпуска:
Ретро и разгон: ASRock K8NF6G-VSTA и бюджетный король AMD Sempron: Часть 3
Учитывая вышеописанные проблемы, буду ли я "пиратить" игры, что уже куплены во всяких DRM-платформах вроде Steam? Разумеется, ведь DRM-платформы вынуждают меня это делать! Тот же GRID 2 уже не выйдет запустить на ПК под управлением Windows 7 соблюдая системные требования, просто потому что вшитый DRM будет требовать разрешение на запуск от Steam, а он не работает на Windows 7 официально, ну а в нормальные версии Half-Life 2 годов эдак 2005-2014 в принципе невозможно поиграть, только в перегруженные неадекватные самые последние версии разрешают играть.
-
Steam Deck
Кто-то спросит, а что же там с консолью Steam Deck? На самом деле сложно сказать, насколько эта поделка c Linux вместо операционной системы популярна, ведь Valve не раскрывает данные о продажах консоли...
Но консоль использует Steam OS на основе Arch Linux в качестве операционной системы, и если учесть довольно предвзятую статистику самого Steam - пользователей Steam Deck в десятки раз меньше, чем любителей красноглазого терминального пингвина (дистрибутивов Linux):
А это говорит о том, что Steam Deck далеко не так популярна, как порой пытаются выставить заядлые фанаты консоли.
Больше нечего сказать про эту консоль от Valve, по сути она просто "существует" на данный момент, у меня нет этой консоли, чтобы лично проверить её состоятельность, да и у множества других людей тоже особо не встречал, что как бы намекает на её "популярность".
Причём важно заметить, Valve до Steam Deck уже пыталась выпускать Steam Machines всё на том же Steam OS, но вряд ли многие знали про эту поделку с линуксом на борту вместо пригодной для использования операционной системы.
Теперь перейдём к Steam и Linux, и почему он не способен решить проблему игр на данной платформе...
-
Steam и Linux
Все вышеописанные проблемы DRM-платформы Steam были общими, в основном независимыми от "железа" и ОС, однако когда речь заходит про Linux - количество проблем значительно прибавляется, и обязательно найдётся кто-то кричащий о массе игр для Linux, в частности про Steam.
Насчёт "массы игр для Linux" подробнее можно почитать в отдельно статье:
Как ресурсы в интернете вводят в заблуждение людей помечая Windows игры как игры для Linux.
...
Давайте посмотрим на то, как Valve "пытается решить" проблему игр для Linux.
Они сделали "Steam Play" инструменты совместимости, по сути взяли Wine и модифицировали специально для интеграции со Steam при работе в среде Linux, так появился известный линуксоидам Proton, хотя раньше были и другие аналоги "протону", но разве это решение проблем с играми для линуксов? Кто-то скажет да, но на самом деле нет.
Ведь Proton по сути модифицированный Wine, а это ничто иное как прослойка для запуска Windows приложений в среде Linux со всеми вытекающими проблемами, и в отличие от оригинального Wine, Proton непригоден для использования за пределами DRM-платформы Steam.
Есть конечно порты оригинального Proton, и в моём дистрибутиве Chimbalix как раз используется порт "протона" в качестве прослойки для запуска Windows приложений, но проблема в том, что Proton это поломанный Wine, он буквально не выполняет многие функции, что выполняются оригинальным Wine...
Возвращаясь к Steam можно заметить, что костыли "Steam Play Compatibility" по умолчанию включены для "поддерживаемых игр", но эту функцию невозможно отключить, я не знаю, может как то неправильно нажимаю на переключатель, но он принудительно установлен во включенное состояние:
Valve буквально принуждает использовать Proton там, где посчитают необходимым, но это ещё не самое интересное, ведь если не включать "Steam Play" для всех остальных игр - игры предназначенные для Windows нельзя установить пока Proton не будет вручную включен в настройках игры:
Вот есть игра, которую могу установить, но выпускалась ли она для Linux? Или будет работать через принудительно включенные костыли "Steam Play"?
Если смотреть системные требования - игра подходит для Linux, но это системные требования в магазине Steam:
На сторонних сайтах в интернете можно и не найти поддержки Linux в системных требованиях:
Остаётся только скачивать каждую игру и смотреть на исполняемые файлы, в данном случае действительно исполняемый файл для Linux, судя по виду игра создана при использовании игрового движка Godot Engine, но это так, не будем далеко отходить от темы:
Хоть игр пригодных для установки под линуксом многократно меньше, чем игр требующих Windows или Windows + MacOS, но проверять каждую не собираюсь сейчас:
Если отфильтровать игры оставив только "запускаемые под линуксом", то у меня выходит 133 игры из 391 (один пункт стороннего приложения не учитываю), даже сотню игр досконально проверить будет сложной задачей:
Потому неизвестно наверняка, с какими играми "Steam Play" костыли применяются, и применяются ли вообще, но если таки применяются, и такая игра будет иметь совместимость с Linux в системных требованиях - это будет введением в заблуждение, ибо Windows игра + Proton не равно "игра для Linux".
По крайней мере среди нескольких проверенных игр я не выявил ничего подозрительного, но неоднозначность это определённо плохо, а Steam прямо кишит неоднозначностью.
Дальше посмотрим на работу костылей "Steam Play", а именно Proton, в общей сложности эти костыли уже занимают порядка 8.6 ГиБ места на диске без учёта зависимостей "SteamLinuxRuntime", что как бы ощутимо, особенно если место ограничено, плюс не забываем - это интернет трафик который необходимо скачивать на каждый ПК со Steam в отдельности:
Да, обычно скачивается только Proton Experimental, но почему тогда у меня так много "протонов"? Просто выявилась неожиданная проблема, игры не хотели запускаться через Proton от Steam, и я думал что дело в версии костылей, потому накачал кучу разных версий...
Дело было в том, что при запуске ничего не происходило, а спустя пару секунд кнопка "закрыть" возвращалась в стандартную "играть":
Я специально выбрал DRM-Free игру для тестов, чтобы её можно было запустить не спрашивая разрешения у Steam, и запуская через Wine Proton встроенный в Chimbalix - всё запускается и работает, а значит проблема не в версии "протона", и я зря перебирал разные версии:
Да, этот тот момент, когда мой дистрибутив Chimbalix прямо из коробки способен запустить игру, а хвалёный Steam не способен это сделать через оригинальный Proton...
Так в чём была проблема? Правильно, в расположении файлов, оригинальный Steam Proton не способен запускать игры находящиеся в библиотеке Steam на сторонних накопителях, если переместить игру в корневую файловую систему - всё заработает, но знаете, у меня не так уж и много свободного места на системном диске, чтобы растрачивать его играми:
Но есть и посерьёзнее проблема... Предлагаемый по умолчанию Proton Experimental (первый скриншот) делает самое что ни есть "мыло" из игры, откат на более старые версии Proton конечно исправляет проблему "мыла", но это означает, что игры могут работать неправильно через прослойки (как "неожиданно"):
Судя по всему предлагаемый по умолчанию Steam Proton имеет некоторые проблемы с анизотропной фильтрацией, иначе не могу объяснить такое "мыло"...
Так же у Steam бывают проблемы с отображением интерфейса, он буквально может тормозить при прокрутке больших списков, и "аппаратное ускорение" в настройках Steam проблему полностью не решает, хотя явно становится лучше, в среде Windows такого мракобесия у меня точно не было.
Ну и обратим внимание на курсор мыши, по неведомой мне причине - Steam в линуксах порой предпочитает использовать стандартные курсоры X11:
Может у меня дистрибутив не дистрибутив, система не система и всё такое, но я далеко не единственный с подобными проблемами...
Кстати, тут можно заметить довольно популярную в пределах линуксоидных форумов подмену понятий, громкие фразы вроде "РЕШЕНО" в заголовках прямо кричат о том, что проблема якобы решена, но на самом деле это означает просто закрытую тему на форуме, решена ли проблема на самом деле уже совсем другой вопрос, просто очередной способ ввести в заблуждение неопытных новичков, ещё не знакомых со всем мракобесием линуксов и сообщества:
Причём люди ругались на проблему курсоров Steam аж в далёком 2013 году, боже, да за 10 лет Valve могли бы уже что-то и сделать с этой проблемой характерной для Linux версии Steam:
Вообще курсоры можно "исправить" без танцев с терминалом, достаточно просто изменить тему оформления курсора "Default" на другую, но почему другие приложения не испытывают проблем с курсорами? Почему один только Steam весь из себя "одарённый" средь всего известного мне?
Хотя с другой стороны, это хорошо наверное, что всплывают всякие такие косяки, на которые могу повлиять при разработке новых версий дистрибутива Chimbalix, даже несмотря на то, что только Steam с такими проблемами попался...
А ещё, совершенно случайно была обнаружена проблема принудительного захвата фокуса приложением Steam при наведении на пункты меню, я не понимаю, почему эти меню вообще работают когда фокус окна находится на совершенно других приложениях:
Ладно, пора бы уже заканчивать, а то можно ещё очень долго отлавливать косяки DRM-платформы Steam...
-
Заключение
Так почему же Steam не способен решить проблему игр на Linux? Если кратко - не тот подход.
Да и кто вообще сказал, что Valve хочет решать проблемы вечно кривых линуксов? Если бы не Steam Machine и Steam Deck сомнительной успешности, я более чем уверен, что Valve не взялись бы за модификацию Wine превращая в Proton, ведь такие костыли не способны решить проблему непригодности линуксов для игр, они могут выступить лишь в качестве лекарства от симптомов проблемы, но не решением...
Если бы Valve действительно хотели сделать Linux пригодным для игр, они бы не занимались такой ерундой как модификация Wine (Proton), и не метались бы между Ubuntu (основана на Debian) и Arch Linux в попытках найти более дружелюбную для ведения бизнеса операционную систему.
Вместо этой всей ерунды, скорее всего, они бы начали разработку своего дистрибутива Linux, если так уж сильно хочется именно линукс, вероятно пришлось бы даже взять разработку ядра на себя, чтобы не терпеть постоянные проблемы поломанной обратной совместимости с каждой новой версией Linux, хотя это очень маловероятно... И да, существующая Steam OS не в счёт, ведь она предназначена для Steam Machine, а после для портативного ПК под названием Steam Deck, но не для обычных пользователей обычных ПК.
Так же начали бы явное движение в сторону разработчиков игр, и всего что связано с этой сферой, и я говорю не про "фирменные" инструменты под экосистему от Valve вроде движка Source, так или иначе привязывающих пользователя к Steam, а про инструменты вроде Blender, Godot Engine и т.п., ведь просто иметь пригодный для использования дистрибутив линукса недостаточно, чтобы он вдруг стал пригодным для игр, если для элементарных действий приходится ковыряться в терминале и плясать с бубном пользуясь посредственными инструментами, то какой смысл в линуксе? Ну кроме его бесплатности...
Конечно же пришлось бы решить и фундаментальную проблему распространения ПО для Linux отказавшись от хвалёных репозиториев, для примера, как это делаю я, и многие другие характерные для Linux косяки тоже пришлось бы исправлять, иначе какой смысл, если даже распространять софт/игры по-человечески невозможно предварительно не ублажив владельцев репозиториев? Но это всё явно не очень по нраву будет Valve, особенно возможность распространять ПО как в Windows независимыми пакетами...
Вся DRM-платформа Steam рассчитана на продажу разрешений на запуск в пределах платформы под видом игр, и последующей привязке к экосистеме, в которой любые труды и "права на запуск" можно в любой момент обнулить просто заблокировав аккаунт неугодного пользователя...
Очень сомневаюсь, что с таким подходом Valve вдруг решат сделать линукс действительно пригодным для игр и нормального использования, это будет выстрелом себе в ногу, если вдруг пользователи получат "дружелюбность" за пределами DRM-платформы Steam на том же Steam Deck.
Вообще довольно умно поступили, взяли в качестве операционной системы для консоли весьма недружелюбный линукс, и впихнули туда Steam, чтобы при любой попытке выйти за пределы Steam пользователь встречался с "дряхлым пингвином", а не дружелюбной и привычной многим Windows.
Опять же, вряд ли существовал бы Proton (и его порты), если бы Valve это делала не ради заработка за счёт Steam Deck, что за пределами Steam превращается, очень мягко говоря, в недружелюбный для пользователя линукс с терминалом и бубном, только без клавиатуры и мышки, ибо у портативного ПК есть только один USB-C порт для подключения периферии.
Так что увы, но я не вижу от Valve никакой заинтересованности в развитии линуксов как операционных систем для нормального использования и игр вместо Windows. Хотя Linux хорош тем, что отталкивает пользователей своими извечными проблемами и сложностью, от чего не хочется выходить за пределы DRM-платформы даже несмотря на то, что пользователь практически в позиции цифрового раба, из которого можно получать деньги...
Ну и конечно, вероятно найдутся любители вскрикнуть что-то вроде "да вы все офигели, захотели покупать игры вместо прав на запуск игр!"...
Так вот, предположим вы находитесь в магазине, что способен создавать бесконечные копии игровой мыши (исходный "товар"), и вместо продажи копий "товара" - продают права на использование копии "товара" в пределах магазина, выносить копию "товара" за пределы магазина запрещено, а в случае порчи копии "товара" - её заберут обратно даже несмотря на то, что уже заплатили деньги за неё, ещё и штраф выпишут сверху в качестве наказания. Ну а если вдруг что-то не понравится администрации магазина - вас в любом момент выбросят на улицу лишив всего, и даже если умудритесь прихватить с собой копию "товара" - ничего не будет работать, вшитый в копию "товара" DRM-вирус не позволит.
Если бы любителей защищать подобные принципы "продажи игр" хоть раз заставили в реальном мире действовать по таким же правилам в качестве покупателя, вероятно, они больше никогда не заикались бы на эту тему.
Благодарю за внимание, больше интересных статей в блоге Hard-Workshop.
Лента материалов
Соблюдение Правил конференции строго обязательно!
Флуд, флейм и оффтоп преследуются по всей строгости закона!
Комментарии, содержащие оскорбления, нецензурные выражения (в т.ч. замаскированный мат), экстремистские высказывания, рекламу и спам, удаляются независимо от содержимого, а к их авторам могут применяться меры вплоть до запрета написания комментариев и, в случае написания комментария через социальные сети, жалобы в администрацию данной сети.
Комментарии Правила