Страницы

Поиск по вопросам

пятница, 7 февраля 2020 г.

CS:GO получить сылку на файл .dem

#php #nodejs #steam_web_api


Нужно получить ссылку файл в формате .dem по коду демо (как пример код CSGO-OyjY3-pPKCF-cmpHJ-wdohh-CY5dK) 

Нужная ссылка выглядит так http://replay124.valve.net/730/003072985384448163905_0699089210.dem.bz2
, но как по коду  демо получить значения:


003072985384448163905
0699089210
124


Хотелось бы сделать на PHP но можно и на NodeJS, но не нашёл ничего на эту тему в
интернете.

Up:
 В самой игре демо можно скачать по внутреней консоли игры командой csgo_download_match
код демо например csgo_download_match CSGO-pj5MV-zyzpa-PaHVb-tFUwV-HGXbD, но всеравно
как оно расшифровывет в ссылку остаётся загадкой
    


Ответы

Ответ 1



Ваша проблема уже решена, более того, есть библиотека для nodejs https://www.npmjs.com/package/csgo А вот и код, который расшифровывает ваш код: var scDecoder = new csgo.SharecodeDecoder("CSGO-U6MWi-hYFWJ-opPwD-JciHm-qOijD"); console.log(scDecoder.decode()); В репе есть более полный пример, используйте его. -- Внутриигровой загрузчик использует функцию CMsgGCCStrike15_v2_MatchListRequestFullGameInfo из внутренней библиотеки NetHook2.dll UPD: Вот метод,который использует эти функции, даже называется также https://github.com/joshuaferrara/node-csgo/blob/master/handlers/match.js#L77

Ответ 2



Можно поглядеть тут (c#) Функция generatematchlist https://github.com/akiver/CSGO-Demos-Manager/blob/04b44968a4d3c70664e1b3c85c93f5e68ca9a5d2/src/ViewModel/HomeViewModel.cs

Ответ 3



Ну кто так задаёт вопросы?! Какую именно ссылку нужно создать? Но, если как я понимаю, нужно отдать файл по определенному запросу, то примерно так когда то давно делал. if($_GET['code'] == 'CSGO-OyjY3-pPKCF-cmpHJ-wdohh-CY5dK') { Header("HTTP/1.1 200 OK"); Header("Connection: close"); Header("Content-Type: application/pdf"); Header("Accept-Ranges: bytes"); Header("Content-Disposition: Attachment; filename=new_filename.pdf"); Header("Content-Length: 50000"); readfile('test_file.pdf'); }

Комментариев нет:

Отправить комментарий