Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

В Steam'е появилось автообновление адресов в Избранном

, с помощью привязки адреса сервера к его аккаунту
Safety1st
сообщение 22.2.2014, 19:47
Сообщение #1
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Актуальная информация

Архив
Очень полезно читать новости обновлений ;)

20.02.2014 г. в 8:33 (по МСК) вышло обновление Steam-клиента, анонсирована новая фишка:
• Added IP tracking to game server favorites. Favorites will automatically update to new server IP addresses if the game server is using a persistent account
Добавлено отслеживание IP-адресов в Избранном. Они автоматически обновляются на новые для всех серверов, использующих серверные аккаунты

Избранное и История хранятся в файле C:\Program Files\Steam\userdata\<число>\7\remote\serverbrowser_hist.vdf (число у каждого своё), на x64-системах - в C:\Program Files (x86)\Steam\userdata\<>\7\remote\serverbrowser_hist.vdf. Вот как сейчас выглядит список:
+
Код
"Filters"
{
    "Favorites"
    {
        "1"
        {
            "name"        "127.0.0.1:27011"
            "address"        "127.0.0.1:27011"
            "LastPlayed"        "1377278320"
            "appID"        "0"
            "accountid"        "0"
        }
    }
}
Появился параметр 'accountid', у всех серверов там пока 0. На этом месте у добавленного сервера в будущем будет его SteamID.

Подробнее описано в письме Флетчера в листе рассылки hlds_announce:
+
Цитата(Fletcher Dunn)
fletcherd at valvesoftware.com
Wed Feb 5 15:52:29 PST 2014

STEAM GAMESERVER ACCOUNTS
-----------------------------------------

Gameserver accounts are now a Steam feature. The feature is currently in beta.

Using a steam gameserver account provides one important advantage right now: client favorite lists are keyed by the Steam account if present. This means that you can move your server to another IP address, and clients who have your server in their favorites or history will follow you to your new location.

CREATING AN ACCOUNT:

Creating an account is currently only possible via WebAPI. (Remember, this feature is currently in beta. We'll add a nicer interface for this soon.) Make a HTTPS POST request to the following URL:
Код
https://api.steampowered.com/IGameServersService/CreateAccount/v0001/

The POST arguments should be:
appid=440 (for Team Fortress)
key=<your WebAPIKey>

<your WebAPIKey> is the WebAPI key associated with the user account that will own the server accounts. See http://steamcommunity.com/dev for how to get one of these. (WARNING: Make sure and keep this key secret. This key is an authentication token in some respects and makes it possible to do certain actions on your behalf. Don't feed the key into anybody's nice convenient web page that automates this. With your WebAPI key they could impersonate you for some actions. If you don't want to go through the pain of making a WebAPI call, just wait until we have a nicer interface implemented.)

The output of the WebAPI will be the (permanent) SteamID of your gameserver, and a login token. The login token is a random string of text that allows you to actually login to your account.

You can view a list of the servers owned by a user account by making a HTTPS GET call to:
Код
https://api.steampowered.com/IGameServersService/GetAccountList/v0001/?key=<yourkey>&format=xml


LOGGING IN TO YOUR ACCOUNT (TF only for now):

Once you have a gameserver login token, you can specify your login credentials on a Source engine server by executing this console command sometime before it loads the first map:

sv_setsteamaccount <login token>

The server output should make it clear when you are using a Steam gameserver account and when you are logging in anonymously. (The ordinary gameserver login that has always been used.)

<...>


HOW FAVORITES MIGRATION WORKS:

In the next few days we will release an updated Steam Client beta that knows how to migrate favorites. On the client, each favorite has an IP:port and a gameserver account. The account might be empty --- that will of course be the case for all previously existing favorites. Periodically, a client will try to sync up the favorites list IP:port addresses and accounts. If there is an IP:port without an associated account, it will ask the master server for information about that address. If a server is running on that address and logged into an account, the client will record the account. Once the client has an account associated with the favorite, the account becomes the primary key and will not change. Instead, we will periodically try to refresh the address from the account. (Again, this is done by querying the master server, and it depends on your server bring logged into the account and running on the address.) The client always caches the last known IP:port of a favorite, even though the account ID is the main "key". That way, if Steam is down, or the gameserver is down, it will used the cached IP:port. All of the above applies to history as well as favorites.

In the future, when a client adds a favorite or history item, the account will be recorded immediately.

If you know you have many clients that have your server in their favorites or history, then you should not move your server yet. You need to give clients time to logon with new Steam client binaries and get their favorite entry linked up with your account. We'll let you know when you can try out migrating favorites, as well as when the feature is active in the public client and all users have it.


QUESTIONS?

Since Steam gameservers are a Steam feature, all of the above will apply to all Steam games. (Provided that the game exposes a method for the gameserver to log in to an account.)

Кратко:
Фишка в стадии бета-тестирования. Сервера в Избранном теперь сопровождаются SteamID сервера. Если сервер сменит IP - адрес у клиентов будет обновлён автоматически. Но для этого сервер при старте должен залогиниться в Steam определённым образом, указывая свой токен. Чтобы получить токен для сервера, нужно завести себе ключ для Web API на странице http://steamcommunity.com/dev , а затем специальным запросом (пока) зарегистрировать аккаунт для сервера. Ключ должен оставаться в секрете, это по сути пароль, а токен - использоваться в команде на сервере.

В данный момент бежать и регить акки смысла нет:
• привязка адресов сейчас работает только для TF2-серверов;
• интерфейса для регистрации аккаунта пока нет. обычным запросом с помощью браузера его сделать не удастся: требуется POST-запрос по HTTPS. удобный интерфейс появится в будущем.

Подробная информация по регистрации
Web API ключ состоит из 32-х символов A-F, 0-9. На http://steamcommunity.com/dev получил ключ F6****************************67.

Для специального запроса на регистрацию аккаунта проще всего воспользоваться html-файлом: Прикрепленный файл  reg_srv_acc.zip ( 517 байт ) Кол-во скачиваний: 9
Я пользовался программой cURL, дистрибутив для Windows взял тут.
Для TF2 appID 440; без понятия, какой appID нужно использовать для CS 1.6: то ли 90, как для сервера, то ли 10, как для клиента.

Готовый запрос:
Код
curl -d "appid=440&key=F6****************************67" https://api.steampowered.com/IGameServersService/CreateAccount/v0001/

Получил ответ:
Код
{
    "response": {
        "steamid": "85568392920042505",
        "login_token": "25****************************06"
    }
}

Повторные запросы приводят к регистрации новых аккаунтов серверов. Лимит - 50 аккаунтов на 1 игровой Steam-аккаунт, лимит - суммарный: для всех игр. Можно сделать сброс токена аккаунта, делать перенос аккаунта сервера на аккаунт другого пользователя в данный момент не планируется. (инфа от Флетчера из рассылки hlds).

Проверил регистрацию аккаунта для сервера по ссылке:
Код
https://api.steampowered.com/IGameServersService/GetAccountList/v0001/?key=F6****************************67&format=xml

Ответ:
Код
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE response>
<response>
    <servers>
        <message>
            <steamid>85568392920042505</steamid>
            <appid>440</appid>
            <login_token>25****************************06</login_token>
        </message>
    </servers>
</response>

Токен 25****************************06 можно было бы вставить в команду sv_setsteamaccount на TF2-сервере и выполнять, например, в cfg/autoexec.cfg )

Полный список API из 'семейства' IGameServersService
Код
"name": "IGameServersService",
"methods": [
    {
        "name": "GetAccountList",
        "version": 1,
        "httpmethod": "GET",
        "description": "Gets a list of game server accounts with their logon tokens",
        "parameters": [
            {
                "name": "key",
                "type": "string",
                "optional": false,
                "description": "Access key"
            }
        ]
        
    },
    {
        "name": "CreateAccount",
        "version": 1,
        "httpmethod": "POST",
        "description": "Creates a persistent game server account",
        "parameters": [
            {
                "name": "key",
                "type": "string",
                "optional": false,
                "description": "Access key"
            },
            {
                "name": "appid",
                "type": "uint32",
                "optional": false,
                "description": "The app to use the account for"
            },
            {
                "name": "memo",
                "type": "string",
                "optional": false,
                "description": "The memo to set on the new account"
            }
        ]
        
    },
    {
        "name": "SetMemo",
        "version": 1,
        "httpmethod": "POST",
        "description": "This method changes the memo associated with the game server account. Memos do not affect the account in any way. The memo shows up in the GetAccountList response and serves only as a reminder of what the account is used for.",
        "parameters": [
            {
                "name": "key",
                "type": "string",
                "optional": false,
                "description": "Access key"
            },
            {
                "name": "steamid",
                "type": "uint64",
                "optional": false,
                "description": "The SteamID of the game server to set the memo on"
            },
            {
                "name": "memo",
                "type": "string",
                "optional": false,
                "description": "The memo to set on the new account"
            }
        ]
        
    },
    {
        "name": "ResetLoginToken",
        "version": 1,
        "httpmethod": "POST",
        "description": "Generates a new login token for the specified game server",
        "parameters": [
            {
                "name": "key",
                "type": "string",
                "optional": false,
                "description": "Access key"
            },
            {
                "name": "steamid",
                "type": "uint64",
                "optional": false,
                "description": "The SteamID of the game server to reset the login token of"
            }
        ]
        
    },
    {
        "name": "GetAccountPublicInfo",
        "version": 1,
        "httpmethod": "GET",
        "description": "Gets public information about a given game server account",
        "parameters": [
            {
                "name": "key",
                "type": "string",
                "optional": false,
                "description": "Access key"
            },
            {
                "name": "steamid",
                "type": "uint64",
                "optional": false,
                "description": "The SteamID of the game server to get info on"
            }
        ]
        
    },
    {
        "name": "GetServerSteamIDsByIP",
        "version": 1,
        "httpmethod": "GET",
        "description": "Gets a list of server SteamIDs given a list of IPs",
        "parameters": [
            {
                "name": "key",
                "type": "string",
                "optional": false,
                "description": "Access key"
            },
            {
                "name": "server_ips",
                "type": "string",
                "optional": false
            }
        ]
        
    },
    {
        "name": "GetServerIPsBySteamID",
        "version": 1,
        "httpmethod": "GET",
        "description": "Gets a list of server IP addresses given a list of SteamIDs",
        "parameters": [
            {
                "name": "key",
                "type": "string",
                "optional": false,
                "description": "Access key"
            },
            {
                "name": "server_steamids",
                "type": "uint64",
                "optional": false
            }
        ]
        
    }
]

Не факт, что это будет доступно для серверов CS 1.6, всё возможно:
• Since Steam gameservers are a Steam feature, all of the above will apply to all Steam games. (Provided that the game exposes a method for the gameserver to log in to an account.) ... And yes, I suspect we will probably add a feature for GoldSrc engine games to signin to accounts at some point.
• Поскольку эта фишка - стим-фишка, она относится ко всем играм. При условии, что игровой сервер предоставляет метод логина в аккаунт ... Да, я подозреваю, что мы, возможно, добавим такую возможность для GoldSrc-игр.

Если будет - это весомый аргумент переходить на последний билд и при смене хостера хотя бы не терять своих Steam-игроков.


Топик на AM.


Отредактировал: Safety1st, - 12.11.2015, 2:10
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 18 раз
   Цитировать сообщение
Статус пользователя Affl
сообщение 22.2.2014, 19:51
Сообщение #2


Стаж: 15 лет

Сообщений: 1573
Благодарностей: 1182
Полезность: 1042

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


WAR3FT Пивка для Рывка 202 lvl
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 22.2.2014, 19:54
Сообщение #3
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Само собой, что для Steam-игроков: обновляет адреса Steam-клиент.


Мне говорили, что и список адресов из МС теперь Steam-клиент получает...
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 3 раз
   + Цитировать сообщение
TEROR^
сообщение 22.2.2014, 20:10
Сообщение #4
Стаж: 16 лет

Сообщений: 577
Благодарностей: 251
Полезность: 0

Полезная хрень, начали заботиться как-никак о игроках cs, в частности.
Ждём свежих новостей:)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rejiser
сообщение 22.2.2014, 20:22
Сообщение #5


Стаж: 15 лет

Сообщений: 2261
Благодарностей: 1068
Полезность: 870

Замечательно
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 22.2.2014, 20:28
Сообщение #6


Иконка группы

Стаж: 15 лет

Сообщений: 7566
Благодарностей: 5437
Полезность: 1305

скорее бы уже начать угонять API ключи чужие, то то я себе сделаю стим сервер 32/32 24/7 :D


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя Nixon
сообщение 22.2.2014, 20:31
Сообщение #7


Стаж: 12 лет

Сообщений: 399
Благодарностей: 192
Полезность: 589

Полезная вещь.Safety1st, это тема так, для ознакомления или ты будешь здесь писать различные обновления кс\серверов стим?(если так, то будет весьма хорошо)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя damilurg
сообщение 8.8.2014, 6:53
Сообщение #8


Иконка группы

Стаж: 13 лет

Сообщений: 1191
Благодарностей: 1297
Полезность: 1230

Обновили клиент.
Поправили дизайн, обновили иконку. Пока мне нравится.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Kirby Magicman
сообщение 8.8.2014, 16:25
Сообщение #9


Стаж: 15 лет

Сообщений: 1083
Благодарностей: 398
Полезность: 617

Цитата(damilurg @ 8.8.2014, 6:53) *
Обновили клиент.
Поправили дизайн, обновили иконку. Пока мне нравится.

Только в бета-версии.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя WarDeN4ik
сообщение 11.11.2015, 21:33
Сообщение #10


Стаж: 12 лет

Сообщений: 451
Благодарностей: 142
Полезность: 490

Не знаю как давно оно, но только сегодня заметил в консоле сервера CSGO при запуске
Код
****************************************************
****************************************************
****************************************************
*  No Steam account token was specified.           *
*  Logging into anonymous game server account.     *
*  Support for anonymous logins will go away soon. *
*  To create a game server account go to           *
*  http://steamcommunity.com/dev/managegameservers *
****************************************************
****************************************************
****************************************************

Стоит ли все таки регать сервер? Боюсь подводных граблей, вальвы последнее время пугают... я про блокировку серверов с определенными плагинами на CSGO.
У меня Level ranks там есть, его ещё пока не детектяд вроде.
Не чревато ли, в таком случае, регистрация сервера, блокировкой стим аккаунта вместе с сервером?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя BombermaG
сообщение 11.11.2015, 23:12
Сообщение #11


Стаж: 19 лет

Сообщений: 228
Благодарностей: 123
Полезность: 789

Цитата(WarDeN4ik @ 11.11.2015, 22:29) *
Не знаю как давно оно, но только сегодня заметил в консоле сервера CSGO при запуске
Стоит ли все таки регать сервер? Боюсь подводных граблей, вальвы последнее время пугают... я про блокировку серверов с определенными плагинами на CSGO.
У меня Level ranks там есть, его ещё пока не детектяд вроде.
Не чревато ли, в таком случае, регистрация сервера, блокировкой стим аккаунта вместе с сервером?

Здесь есть небольшой FAQ на данную тему: http://forum.myarena.ru/index.php?/topic/3...ra-k-steam-akk/
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя WarDeN4ik
сообщение 11.11.2015, 23:34
Сообщение #12


Стаж: 12 лет

Сообщений: 451
Благодарностей: 142
Полезность: 490

BombermaG, Все таки стимакк может пострадать, печально...
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 11.11.2015, 23:37
Сообщение #13
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Цитата(WarDeN4ik @ 11.11.2015, 22:29) *
Стоит ли все таки регать сервер?

Что тут думать-то? Раз:
Цитата(WarDeN4ik @ 11.11.2015, 22:29) *
Код
*  Support for anonymous logins will go away soon. *

Цитата(WarDeN4ik @ 11.11.2015, 22:29) *
Боюсь подводных граблей, вальвы последнее время пугают... я про блокировку серверов с определенными плагинами на CSGO.

'Определённые плагины' нужно вырубить, и всё будет OK.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
voed
сообщение 11.11.2015, 23:42
Сообщение #14
Стаж: 11 лет

Сообщений: 2593
Благодарностей: 1760
Полезность: 405

Вангую, поддержки голдсорс можно не ждать)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 2 гостей читают эту тему: