Подключение steam SDK и онлайн в steam в целом

Начинающий
Статус
Оффлайн
Регистрация
5 Июн 2021
Сообщения
50
Реакции[?]
9
Поинты[?]
0
Нужна помощь человека, который разбирается в онлайн составляющей для steam.
Хочу попробовать создать простенькую кооперативную игру с использование listen серверов в steam, но информации на интересующие вопросы не так много и конкретных ответов не могу найти, надеюсь тут помогут знающие ребята

1. Для чего докидывать в движок данные файлы, если достижения в steam работают и без них только с дописанными строчками в файле DefauldEngine.ini ?
  • steam_api64.dll
  • steamclient64.dll
  • tier0_s64.dll
  • vstdlib_s64.dll
  • steam_api.dll
  • steamclient.dll
  • tier0_s.dll
  • vstdlib_s.dll
2. При использовании online sub system и advanced session plugin если игру взломают, смогут ли "пираты" пользоваться кооперативной частью каким либо способом или же онлайновая часть/достижения/ таблица лидеров ему будут недоступны ?
3. Есть известная проблема, что advanced session plugin почему-то не может получить Ping со стима, как это исправить ?
 
Начинающий
Статус
Оффлайн
Регистрация
22 Авг 2021
Сообщения
23
Реакции[?]
5
Поинты[?]
0
1) Тебе этот API нужен вообще, чтобы игра со Стимом дружила, а не только для достижений.
2) Смогут, у тебя же listen сервера будут, значит хостить может каждый. Играться это дело будет либо через Spacewar, либо PAYDAY 2 Demo, поэтому достижений/таблиц и прочего не будет. Хочешь защиту - пиши защиту от эмулятора Стим, внедряй регистрацию внутри игры или хости свой мастер-сервер.
3) Давняя проблема, весь Гугл этим вопросом забит. Есть статья, которая объясняет эту проблему -
Пожалуйста, авторизуйтесь для просмотра ссылки.

В списке серверов пинг выводится 9999, но при этом в самой игре работает нормально. Не помню как делал, давно было.
 
Начинающий
Статус
Оффлайн
Регистрация
5 Июн 2021
Сообщения
50
Реакции[?]
9
Поинты[?]
0
1) Тебе этот API нужен вообще, чтобы игра со Стимом дружила, а не только для достижений.
2) Смогут, у тебя же listen сервера будут, значит хостить может каждый. Играться это дело будет либо через Spacewar, либо PAYDAY 2 Demo, поэтому достижений/таблиц и прочего не будет. Хочешь защиту - пиши защиту от эмулятора Стим, внедряй регистрацию внутри игры или хости свой мастер-сервер.
3) Давняя проблема, весь Гугл этим вопросом забит. Есть статья, которая объясняет эту проблему -
Пожалуйста, авторизуйтесь для просмотра ссылки.

В списке серверов пинг выводится 9999, но при этом в самой игре работает нормально. Не помню как делал, давно было.
Спасибо большое за ответ, подскажи пожалуйста еще раз, по поводу API, они нужны обязательно или для чего то конкретного ? Так как игру я в стим уже выкладывал и без этих API она работала отлично, как и достижения в ней, так для чего же конкретно эти файлы нужны ?
И по поводу игры на пиратке, вы имеете ввиду что пираты смогут видеть сервера пользователей стима , и так же их создавать, а пользователи стима будут видеть сервера пиратов ?
 
Начинающий
Статус
Оффлайн
Регистрация
22 Авг 2021
Сообщения
23
Реакции[?]
5
Поинты[?]
0
Спасибо большое за ответ, подскажи пожалуйста еще раз, по поводу API, они нужны обязательно или для чего то конкретного ? Так как игру я в стим уже выкладывал и без этих API она работала отлично, как и достижения в ней, так для чего же конкретно эти файлы нужны ?
И по поводу игры на пиратке, вы имеете ввиду что пираты смогут видеть сервера пользователей стима , и так же их создавать, а пользователи стима будут видеть сервера пиратов ?
Вы, наверное, одиночную игру выкладывали? API вам нужен вообще для всего, что со Стимом связано: проверка владельца игры (та же базовая защита от пиратства), создание/поиск серверов, те же достижения, статистика, инвентарь, друзья, внутриигровые покупки, DLC и так далее. Тот же Advanced Session работает на стимовском API.
По поводу пиратки: пираты смогут играть только с пиратами, лицензия с лицензией. Потому что пиратская версия игры будет запускаться под ID игры Spacewar, а так как у игры реализован стимовский API, который, соответственно, работает на стимовском нетворке, соединение у пиратов будет работать как на лицензии. Почему это так работает? Потому что приложение Spacewar создано специально для разработчиков, чтобы поковырять Steamworks SDK, протестировать мультиплеер своей игры непосредственно через стимовский нетворк.
 
Пользователь
Статус
Оффлайн
Регистрация
17 Июл 2021
Сообщения
463
Реакции[?]
119
Поинты[?]
11K
2) Смогут, у тебя же listen сервера будут, значит хостить может каждый. Играться это дело будет либо через Spacewar, либо PAYDAY 2 Demo, поэтому достижений/таблиц и прочего не будет. Хочешь защиту - пиши защиту от эмулятора Стим, внедряй регистрацию внутри игры или хости свой мастер-сервер.
Ответ неоднозначный. Можно прикрутить авторизацию по Steam Ticket (Нужно будет писать свое Rest API и хостить его) + валидацию сессии на сервера. Это уже будет спасать от эмуляции стим (если ID игры другой - тикет приниматься не будет, стим все продумал), и соответственно регистрацию никакую делать не нужно, точно так же и с мастер-сервером. Опять же, все это тоже взламывается, но не так как ты описал. Если посидеть и подумать пару часов, то можно сделать хорошую защиту от взлома.
 
Начинающий
Статус
Оффлайн
Регистрация
5 Июн 2021
Сообщения
50
Реакции[?]
9
Поинты[?]
0
Вы, наверное, одиночную игру выкладывали? API вам нужен вообще для всего, что со Стимом связано: проверка владельца игры (та же базовая защита от пиратства), создание/поиск серверов, те же достижения, статистика, инвентарь, друзья, внутриигровые покупки, DLC и так далее. Тот же Advanced Session работает на стимовском API.
По поводу пиратки: пираты смогут играть только с пиратами, лицензия с лицензией. Потому что пиратская версия игры будет запускаться под ID игры Spacewar, а так как у игры реализован стимовский API, который, соответственно, работает на стимовском нетворке, соединение у пиратов будет работать как на лицензии. Почему это так работает? Потому что приложение Spacewar создано специально для разработчиков, чтобы поковырять Steamworks SDK, протестировать мультиплеер своей игры непосредственно через стимовский нетворк.
Верно, игра одиночная, но я не совсем понимаю, вы говорите что API нужен для всего, то есть по логике работать без этих файлов ничего не должно, однако как я уже говорил достижения вполне себе работают с одним файлом steam_api.dll который в движке лежит по умолчанию, я как вы уже поняли в сетевой части вообще на разбираюсь, вот и узнаю интересующие вопросы, и всё же, кроме файла по умолчанию лежащего в движке, для чего остальные 3 файла ?
- steamclient64.dll
- tier0_s64.dll
- vstdlib_s64.dll
Я пересмотрел не мало плейлистов в ютубе, по созданию онлайн игр с помощью listen серверов, и нигде не использовались эти файлы, только изменение DefaultEngine.ini, и плагин Advanced Sessions

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

Как я понял, по вашему комментарию, по комментарию ниже да и просто почитав интернет, смысла в защите кооператива никакого нету, её все равно взломают, завтра или через неделю
 
Пользователь
Статус
Оффлайн
Регистрация
17 Июл 2021
Сообщения
463
Реакции[?]
119
Поинты[?]
11K
для чего остальные 3 файла ?
- steamclient64.dll
- tier0_s64.dll
- vstdlib_s64.dll
Дефолтные стимовские файлы. Их в игру класть не нужно, они все лежат в папке со стимом по умолчанию.

А вообще UE4 супер дырявый движок. Хотя его аналогов пока что в публичном доступе не существует (Unity - кал).
 
Начинающий
Статус
Оффлайн
Регистрация
5 Июн 2021
Сообщения
50
Реакции[?]
9
Поинты[?]
0
Ответ неоднозначный. Можно прикрутить авторизацию по Steam Ticket (Нужно будет писать свое Rest API и хостить его) + валидацию сессии на сервера. Это уже будет спасать от эмуляции стим (если ID игры другой - тикет приниматься не будет, стим все продумал), и соответственно регистрацию никакую делать не нужно, точно так же и с мастер-сервером. Опять же, все это тоже взламывается, но не так как ты описал. Если посидеть и подумать пару часов, то можно сделать хорошую защиту от взлома.
По вашему комментарию, могу предположить, что вы хорошо разбираетесь в этой области, поделитесь своим мнение, есть ли вообще смысл делать какую либо защиты для инди игры ?
Дефолтные стимовские файлы. Их в игру класть не нужно, они все лежат в папке со стимом по умолчанию.

А вообще UE4 супер дырявый движок. Хотя его аналогов пока что в публичном доступе не существует (Unity - кал).
Благодарю за пояснение. А в каком плане , дырявый ?
 
Начинающий
Статус
Оффлайн
Регистрация
22 Авг 2021
Сообщения
23
Реакции[?]
5
Поинты[?]
0
Steamworks SDK желателен, но не обязателен в случае с вашей одиночной игрой, где вы всего лишь достижения использовали. Но сейчас, когда вы делаете онлайн, он тут необходим.
 
Пользователь
Статус
Оффлайн
Регистрация
17 Июл 2021
Сообщения
463
Реакции[?]
119
Поинты[?]
11K
По вашему комментарию, могу предположить, что вы хорошо разбираетесь в этой области, поделитесь своим мнение, есть ли вообще смысл делать какую либо защиты для инди игры ?
Не могу оценить свои навыки знаний, но я достаточно хорошо разбираюсь в структуре игр UE4. Я делал моды, читы, взломы, пиратки, эксплоиты и это все на том же движке UE4.

Если ты делаешь мультиплеерную игру, то скорее нужно сделать упор на античит (EAC) + подключить проверку файлов и сделать простенькую авторизацию через Steam. Хотя бы минимальную защиту сделать нужно, потому что крякнуть игру можно через сам Steam. Ты можешь просто создать steam_appid.txt и внести туда любой ID игры, тогда игра прекрасно запустится и будет работать мультиплеер. Вот так вот.
 
Начинающий
Статус
Оффлайн
Регистрация
5 Июн 2021
Сообщения
50
Реакции[?]
9
Поинты[?]
0
Не могу оценить свои навыки знаний, но я достаточно хорошо разбираюсь в структуре игр UE4. Я делал моды, читы, взломы, пиратки, эксплоиты и это все на том же движке UE4.

Если ты делаешь мультиплеерную игру, то скорее нужно сделать упор на античит (EAC) + подключить проверку файлов и сделать простенькую авторизацию через Steam. Хотя бы минимальную защиту сделать нужно, потому что крякнуть игру можно через сам Steam. Ты можешь просто создать steam_appid.txt и внести туда любой ID игры, тогда игра прекрасно запустится и будет работать мультиплеер. Вот так вот.
Большое спасибо за пояснение, я в этом только начинаю разбираться, не подскажите видео ресурс или какой-нибудь текстовый материал, как такое сделать ?
 
Пользователь
Статус
Оффлайн
Регистрация
17 Июл 2021
Сообщения
463
Реакции[?]
119
Поинты[?]
11K
Большое спасибо за пояснение, я в этом только начинаю разбираться, не подскажите видео ресурс или какой-нибудь текстовый материал, как такое сделать ?
Честно - не знаю. Могу только подсказать хороший канал с короткими, но очень понятными гайдами по блюпринтам -
Пожалуйста, авторизуйтесь для просмотра ссылки.
 
Начинающий
Статус
Оффлайн
Регистрация
5 Июн 2021
Сообщения
50
Реакции[?]
9
Поинты[?]
0
Сверху Снизу