Как стать автором
Обновить

Комментарии 44

Может, такое лучше выкладывать на wiki?
Можно и туда, но сперва необходимо структурировать информацию. А её очень много. Так что лучше я сперва опубликую статьи здесь и «дошлифую» их изложение.
Публикуйте весь ворох на страницу «неструктурированное», а затем оттуда уже растаскивать по целевым страницам и делать красивое.
Так, любопытства ради: у вас на рабочем столе или в корне диска есть папка «Разобрать»?
НЛО прилетело и опубликовало эту надпись здесь
Есть. Она пуста.
В KDE нельзя класть файлы на рабочий стол) только плазмиды.
Прошу прощения. Т9. плазмоиды
можно.
НЛО прилетело и опубликовало эту надпись здесь
Какой энциклопедии?
Имелась в виду Википедия.
Особенно — для bitbucket wiki, или там для github wiki.
Я первый в нашей уютной городской локалке сделал hl2:dm благодаря SPK & csmania. Как сейчас помню получасовые распаковки gfc-файлов. Старшие классы, бессонные ночи, сборки nullsoft-инсталлятора, классное было время. Помоему без лимитного интернета тогда небыло еще.
Со мной та же история, только я создавал сборник всех эпизодов хл2 в одном удобном инсталяторе и без багов с отключающимся ai, которым грешили популярные пиратки. Свою коллекцию gcfок удалил буквально пару месяцев назад — ведь с текущими скоростями инета их выкачать не проблема, если захочется. Подозреваю что каждый второй любитель пиратской халфы 2 занимался созданием своей сборки и инстала:-) Хорошие были времена.
Вот с этими «получасовыми распаковками» я и боролся в первую очередь — оптимизировал всё, что только можно. В итоге библиотека, работающая с GCF/NCF, стала монструозной, но очень даже шустрой — разницы в работе с простыми файлами и находящимися в кеше практически не было.
Шутки-шутками, а все это надо структурировать, перевести и отправить вместе со своим резюме в Valve.
Они уже не запрещают реверс-инженирить их игры? =)
Насчет реверс-инжениринга их игр, как можно выкачать нужный depot без загрузки всей игры?
Однозначно, публикуй!
Всем интересно :)
А я, как бывший модератор раздела Steam World на форуме (раздел обсуждения не крякнутого Стима), могу даже запилить небольшую ретроспективу по жизни csmania.ru :)
Могу ошибаться, но разве с приходом protobuf не стало проще? С момента существования protobuf'а есть куча инструментов позволяющих восстановить схему данных. Единственная проблема с которой вы могли столкнуться — это отсутствие нормальной (до сих пор, емнип) паблик реализации protobuf'а в Delphi, а не сложность анализа. Хорошо вас помню, спасибо вам за работу и пишите дальше, даже не спрашивайте.

PS. Если не ошибаюсь, то именно с оглядкой на ваши сырки реализовывал в свое время парсинг VDF, чтобы определять папку установки той или иной steam-игры и ряд параметров, типа автоматического обновления.
По поводу protobuf — основной косяк был в том, что тогда я в основном писал на Delphi, а все библиотеки для данного протокола были только на С++. И тогда я понял — либо изучать С++, либо писать очередной «велосипед» на Delphi — и я выбрал изучение С++. С тех пор я перевёл только серверы данного протокола на плюсы, а потом забросил всё это, поскольку куда больший коллектив к тому времени уже разобрал протокол.
Да, вроде как было дело — давал кому-то исходники и консультировал :)
Так лучше, просто фраза «что значительно затрудняло анализ сетевых пакетов» дезинформирует читателя, а на деле оказывается проблема была в дельфовом коммунити, которое к тому моменту уже настолько развалилось, что было не в состоянии породить нормальную обертку для protobuf'а. Protobuf очень удобен как для девелоперов, так и для последующего RE, все оказались в плюсе и, как мне кажется, смирились с этим.

А у вас сырки были закрытые, получается? Действительно, забыл, никто из русскоязычных пацанов, занимающихся в то время анализом Steam'а, не открывался на паблик целиком. От силы пара человек и небольшими порциями. На VDF формат поглядывал однозначно с паблик сырков, без консультаций / прошений. Возможно это был уже SteamRE (SteamKit) проект.
Нет, у меня изначально быь OpenSource-проект. Только выкладывался он на csmania.ru.
Супер! Просто фраза «давал кому-то исходники» смутила.
Просто не все исходники публиковались. Разбор VDF тогда был более чем сырым.
На csmania до сих пор одни фашисты сидят?
э?
При установке orange box в инсталлере была фотка не особо одетого impulse666)
Это же мелочь. Тем более по жизни он — человек вполне нормальный ;)
Ох, инсталлятор — тот еще кладезь угара импи.
Эээ, я не фашист! Мотороллер не мой! Я только заготовку инсталлятора сделал, а звук и фоны импи уже свои пихал :)
Снежинки в форме свастики :)
Ага, и младенцев едят.

PS: andreili, никто ничего бросать не собирается :)
Ну, форум пока что признаков жизни не подаёт. А мне уже не охота со всем этим сидеть — я окончательно ушел в автоматизацию (контроллеры как на стороне железа, так и софта) и моделирование (пластиковое, а не компьютерное :) ).
Не ожидал увидеть вас на Хабре. =) Не хватает еще $t@t!c_V()1D
Жалко форум временно помер. С серверами что-то? Надеюсь почините.
А за статьи большое спасибо. Продолжай писать.
Его здесь я ещё не видел.
А форум — админ говорит, что скоро будет работать. Там проблемы с ДЦ.
Никакие данные не потеряются? (я про форум)
И еще, раз тебе «не охота со всем этим сидеть» — может откроешь нам исходники? Давно тебя просил — но тогда так и не получил к ним доступ, а было очень интересно. Доступа к svn у меня в не было =(
В конце статьи ссылка на гитхаб для кого? Я там уже выложил основное. То, что не выложено — это уже старые версии этих же прог, вспомогательные програмы и прочая мелочь.
Статья Steam FIles. Часть 1 — GCF/NCF в процессе написания — материала там очень много. И его ещё нужно частично печатать «из кода» и оформить человеческим языком :)
Думаю, к вечеру статья будет, а завтра напишу про оставшиеся форматы…
Опубликовано.
Был бы безмерно благодарен за описание протокола общения клиент — сервер. Хотя бы первый этап — приветствие клиента.
Это будет описано после описания форматов файлов — на них многое завязано.
И да — описываться будет старый протокол, вроде бы как уже и не используемый в данное время.
Отличные новости, спасибо!
На сколько мне известно, по крайней мере HLDS на серверах обновляется очень редко и неохотно, так как непременно начинаются проблемы совместимости с софтом и железом.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории