А вы посмотрите в папку с Uplay и увидите, что он тоже использует SteamApi.Получается такой вот интересный цикл, но все минуется, если запускать главный эксе игры.Мой комментарий свелся к тому, что, как суть, для запуска игр Ubisoft нужен только Uplay и аккаунт от него соответственно.Сам стим, в данном случае, выступает только доставщиком контента.
В стиме продается в коллекции Tomb Raider, доступной с прошлого года, первый Tomb Raider (1) с конфиженным досбоксом для его запуска, а помимо этого в корне есть некий gogwrap.exe.Интересно, откуда он там взялся? А ответ прост — сотрудничество.
Они действительно святые, а знаете почему? У меня вот есть коробочная версия второго ведьмака, купленная в мае 2011 года.Я тогда зашарил и ввел рег.код в стим и игра появилась в моей библиотеке, при этом я зарегистрировал ключ игры во время регистрации на их форуме.В общем внутренняя процедура.Далее поляки выпустили патч и уже можно было боксовый ключ использовать в GOG, т.е. они давали возможность этот ключ использовать уже в своем сервисе, если юзер хотел резервную цифровую копию.В итоге — имеем физическую копию, копию с дрм и без.Вот такие вот неочевидные приколы они делали еще с выхода второго ведьмака.
И здесь тоже не совсем верно.И имеет дело быть контекст.Один эксе стартует другой.Если запускать игру через юплей, то игра стартанет в контексте стима, а если посмотреть, какой в конечном итоге запускается процесс, то запускать стим больше не придется.Например в far cry 3 — Запустите farcry3_d3d11.exe и, если вы поставили автовход в юплей, то игра запустится без каких-либо проблем.Из самого юплей стартуется FC3UpdaterSteam.exe, если не запущен стим, то он запускается, а сам стим в свою очередь запустит вышеописанный эксе.Вот такие дела.Все предельно просто.Ну и пара минут реверсинженерии без патчей помогут дернуть кипу команд для запуска в оффлайн режиме и тд.
Не совсем так.На самом деле в стиме 4 уровня DRM:
-SteamStub, по сути оверлей стима, код, стартующий игру в контексте стима.SFX секция .bind.Таблицу импорта не портит и после выхода на OEP получаем рабочий эксе, соответственно и секцию можно срезать.После этого игра будет работать без стима. Пример — Devil May Cry 3.
-SteamApi — тут экзешник компилится с импортами стимапи и в коде, соответственно, содержатся проверки на запуск и их вызовы; Пример — любая AAA игра после 2011 года выпуска.
-SteamApi+SteamStub — юзают некоторые разрабы, дабы сэкономить место на диске, но опять же в памяти все анпачится; Пример — Dying Light
-Steam Context. Пример — The Witcher 3.Игра не защищена никаким DRM, хоть и куплена в стиме, и только, если вы ее стартанете через библиотеку в стиме, то в память будет подгружен steam_api64.dll и станут доступны стимовские плюшки — достижения, оверлей, отображение вашего имени справа от главного меню в игре etc.
-SteamStub, по сути оверлей стима, код, стартующий игру в контексте стима.SFX секция .bind.Таблицу импорта не портит и после выхода на OEP получаем рабочий эксе, соответственно и секцию можно срезать.После этого игра будет работать без стима. Пример — Devil May Cry 3.
-SteamApi — тут экзешник компилится с импортами стимапи и в коде, соответственно, содержатся проверки на запуск и их вызовы; Пример — любая AAA игра после 2011 года выпуска.
-SteamApi+SteamStub — юзают некоторые разрабы, дабы сэкономить место на диске, но опять же в памяти все анпачится; Пример — Dying Light
-Steam Context. Пример — The Witcher 3.Игра не защищена никаким DRM, хоть и куплена в стиме, и только, если вы ее стартанете через библиотеку в стиме, то в память будет подгружен steam_api64.dll и станут доступны стимовские плюшки — достижения, оверлей, отображение вашего имени справа от главного меню в игре etc.