[Util] ACF Toolkit v1.0 (beta)

Всё для взлома и эмуляции Steam.

0
Голосов нет
 
Всего голосов: 0

Сообщение
Автор
weinstreizeR
Эксперты no-Steam
Эксперты no-Steam
Сообщения: 2105
Зарегистрирован: 30.08.2011
Благодарил (а): 32 раза
Поблагодарили: 756 раз

#31 Сообщение 15.08.2013, 16:11

gfox1964
Мы вроде бы решили проблему в ЛС. Тем более игра была устаревшей.

Glukovich
Нович0к
Нович0к
Сообщения: 5
Зарегистрирован: 13.10.2013
Поблагодарили: 2 раза

#32 Сообщение 14.10.2013, 02:03

Плюха неверно определяет папку с acf, если в системе несколько папок с хранящимися играми ( у меня все игры не на системном диске, а на отдельном G:\ ), поэтому пришлось кое-где ручками исправить код батч-файла. Советую учесть эту ошибку при следующих обновлениях.

Добавлено спустя 1 час 4 минуты 11 секунд:
ещё неверно работает с точками в названии игр (например, BIT.TRIP BEAT)

Добавлено спустя 59 минут 42 секунды:
со скобками тоже беда.
да и вообще беда, у меня так и не удалось запустить хотя бы проверку игры, а копаться в чужом коде лень.
Изображение

Win7 Ult x64

Добавлено спустя 15 минут 30 секунд:
со скобками (т.е. не меняя имя игры):
Изображение

без скобок, но с пробелами:
Изображение

для ясности, что за цифры COUNT: я добавил счётчик в loop for, чтобы посмотреть на какой строчке вылетает.

Аватара пользователя
Psycho-A
Эксперты no-Steam
Эксперты no-Steam
Сообщения: 424
Зарегистрирован: 28.09.2009
Благодарил (а): 15 раз
Поблагодарили: 81 раз

#33 Сообщение 14.10.2013, 08:25

Glukovich
Выложил тестовую версию. Пробуйте.
- Добавлено автоудаление нового параметра "LastOwner" из ACF-файла после недавних изменений в Steam.
- Исправлен баг "cannot read file status ..." в операции "3b".
- Архивы с итоговым размером более 2 ГБ теперь разбиваются на многотомные для лучшей совместимости.
- Значительное ускорение работы при создании .update для игр с большим (от 20к и выше) числом файлов (спасибо Unit#0).
- Обновления (.update) при их применении теперь не только обновляют и добавляют контент, но и удаляют неиспользуемый от прошлых версий [beta].
- Исправлена ошибка, при которой названия папок, содержащие "точки" обрезались и приводили к сбою программы.
- Исправлена ошибка определения папки Steam в случае, если используется альтернативное, непрописанное в реестре расположение.

Glukovich
Нович0к
Нович0к
Сообщения: 5
Зарегистрирован: 13.10.2013
Поблагодарили: 2 раза

#34 Сообщение 14.10.2013, 17:35

Спасибо за оперативность!))

Но проблемы остаются:
по поводу альтернативных папок библиотеки:
Изображение
ну и всё та же проблема:
Изображение
(это я решил проверить на игре без знаков)

Аватара пользователя
Psycho-A
Эксперты no-Steam
Эксперты no-Steam
Сообщения: 424
Зарегистрирован: 28.09.2009
Благодарил (а): 15 раз
Поблагодарили: 81 раз

#35 Сообщение 14.10.2013, 22:26

Glukovich
В последней версии я улучшил работу с несколькими папками Steam. Поддержка библиотек в рамках одного Steam-клиента не поддерживается в силу технических ограничений, об этом я писал в шапке этой темы.

Проблему #2 воспроизвести у себя не удалось ни при каких обстоятельствах, с путями со скобками и пробелами программа работает не хуже обычных. Возможно, проблема на стороне твоей ОС.

Glukovich
Нович0к
Нович0к
Сообщения: 5
Зарегистрирован: 13.10.2013
Поблагодарили: 2 раза

#36 Сообщение 15.10.2013, 02:10

эмм... ну конечно проще всего свалить всю вину на ось юзера, особенно когда косяк в батнике. ну ладно, придётся всё-таки самому копаться.

так просто, FYI, косячный кусок с включённым эхом (19 круг цикла строки 1359):

Код: Выделить всё

call :ProcAcf1 "appinstalldir" "C:\\Program Files (x86)\\Steam\\steamapps\\common\\Antichamber"
)
C:\Program Files (x86)\Steam\steamapps>if "appinstalldir" == "}" (set "Block=" )
C:\Program Files (x86)\Steam\steamapps>if "appinstalldir" == "}" (exit /b )
C:\Program Files (x86)\Steam\steamapps>if "appinstalldir" == "{" (exit /b )
C:\Program Files (x86)\Steam\steamapps>if /I "appinstalldir" == "MountedDepots"
(
"C:\Program Files (x86)\Steam\steamapps\Resources\Tools\Sfk.exe" echo -spat "  [yellow]MountedDepots:[def] (C:\\Program Files (x86)\\Steam\\depotcache\\)
 set "Block=MD"
)
Непредвиденное появление: \\Steam\\steamapps\\common\\Antichamber.manifest.

C:\Program Files (x86)\Steam\steamapps>                 echo depotcache\appinstalldir_C:\\Program Files (x86)\\Steam\\steamapps\\common\\Antichamber.manifest>>"C:\Program Files (x86)\Steam\steamapps\Resources\Temp\appmanifest_219890.depots"
в том вызове (ProcAcf1) перед появлением ошибки переменная %~2 равняется "C:\\Program Files (x86)\\Steam\\steamapps\\common\\Antichamber"
нетрудно заметить, что скобки играют в условиях, иной причины я не вижу.

Как итог, элементарно поставив кавычки в эхе на строчке 1431 скрипт сработал:

Изображение

Изображение

только вот теперь я уже в целом начинаю сомневаться в правильности работы скрипта (под сомнением компетентность автора как программиста) :/
не хочу никого оскорбить, но можно было бы и разобраться до конца, а не валить всё на юзер-сайд.
приятно, конечно, когда по техническим трудностям быстро отвечают, только вот неприятно, что в итоге решать проблему пришлось самому.

Giza
Полковник
Полковник
Сообщения: 1525
Зарегистрирован: 06.02.2008
Благодарил (а): 9 раз
Поблагодарили: 310 раз

#37 Сообщение 15.10.2013, 02:34

Glukovich
последнею версию не смотрел, но попробуйте запустить не от админа.

А насчет программы можно написать и на шелл. Там то он будет работать без заикания на кавычки и прочее)

Glukovich
Нович0к
Нович0к
Сообщения: 5
Зарегистрирован: 13.10.2013
Поблагодарили: 2 раза

#38 Сообщение 15.10.2013, 03:59

Giza
не могу запустить не от админа, т.к. это мой дефолтный профиль с полными правами)

Аватара пользователя
Psycho-A
Эксперты no-Steam
Эксперты no-Steam
Сообщения: 424
Зарегистрирован: 28.09.2009
Благодарил (а): 15 раз
Поблагодарили: 81 раз

#39 Сообщение 15.10.2013, 21:09

Glukovich
Ни в коем случае не хотел перекладывать проблемы на пользователей – скорее, просто, вопрос личной невнимательности (как гласит пословица "на каждые 1000 строк кода как минимум 5 будут дефектными" :)). А за баг-репорт отдельное спасибо – ни столько плюс себе, сколько на благо всему комьюнити :) Вскоре выложу исправленную версию.
-
UPD: Архив с программой перезалит.
В ближайшей перспективе (версия 1.0) - реализация многозадачности, поддержка обновленного формата AppInfo и возможность скачивания обновлений и недостающего контента (при их доступности на серверах Стима).

Аватара пользователя
Psycho-A
Эксперты no-Steam
Эксперты no-Steam
Сообщения: 424
Зарегистрирован: 28.09.2009
Благодарил (а): 15 раз
Поблагодарили: 81 раз

#40 Сообщение 21.10.2013, 03:32

0.99.6-beta:
  • Добавлена функция вывода статуса по всем установленным играм/приложениям. Для вызова необходимо запустить программу без аргументов и ввести "status".
  • Добавлена начальная поддержка многозадачности (Внимание: не запускайте вторую копию, когда идет проверка контента!).
  • Доработана операция удаления неиспользуемого контента при применении .update-патчей.
  • Разблокировано выполнение операций 1a, 1d, 2b, 3b, 4b при параметре "StateFlags" не равном "4" (неполная установка).

wim95
Нович0к
Нович0к
Сообщения: 15
Зарегистрирован: 03.12.2009
Поблагодарили: 1 раз

#41 Сообщение 26.10.2013, 14:11

Где то проблемы с кодировкой.
Скрытый текст
Getting AppManifest data...
AppID: "38400"
StateFlags: "4"
Install Dir: "d:\Games\Steam\SteamApps\common\Fallout"
Language: "english"
MountedDepots: (d:\Games\Steam\depotcache\)
"38401_7224698799248053466.manifest"

Getting DepotCache data...
Getting depots TOC...
Loading app's state file...
Loading app's information cache...
Checking depots configuration..
Loading depots manifests.. 1/1
Building content list..
Checking content: 44/44
Checking depots versions...
(38401) "fallout content" [OK]

Verifying content (please, wait)...
Loading manifests: 1/1
Verifying files: 44/44
Correcting name case...

Processing LOG files...
Getting depots description...
Formatting TOC files...

Checking existing content...
Checking depot '38401_7224698799248053466' content...

Error! Missing file:
'..\steamapps\common\Fallout\L+Вame.TXT'
Please, update and validate your app before preparing.


Должно быть:
'..\steamapps\common\Fallout\Léame.TXT




AppID: "63910"
Kings Bounty Crossworlds

Error! Missing file:
'..\steamapps\common\Kings Bounty Crossworlds\manual\+╘+б+-+-+-+▌+И+▌+К+к_+-+М
+З+Д+Е+-+Ж+Й+к+Н_+И+Е+-+-.rtf'
Please, update and validate your app before preparing.

'..\steamapps\common\Kings Bounty Crossworlds\manual\Èíñòðóêöèÿ_ñîçäàòåëÿì_êàðò.rtf



AppID: "203350"
King's Bounty - Warriors of the North

Error! Missing file:
'..\steamapps\common\King's Bounty - Warriors of the North\Wallpapers\1024TП76
8.jpg'
Please, update and validate your app before preparing.

'..\steamapps\common\King's Bounty - Warriors of the North\Wallpapers\1024х768.jpg



AppID: "20920"
the witcher 2

Error! Missing file:
'..\steamapps\common\the witcher 2\Launcher\JP\japo+Оskie kopia.png'
Please, update and validate your app before preparing.


'..\steamapps\common\the witcher 2\Launcher\JP\japońskie kopia.png



AppID: "20900"
The Witcher Enhanced Edition

Error! Missing file:
'..\steamapps\common\The Witcher Enhanced Edition\Soundtracks\Inspired by\01 A
dam Skorupa Х╖р 'Tales of The Witcher'.mp3'
Please, update and validate your app before preparing.


'..\steamapps\common\The Witcher Enhanced Edition\Soundtracks\Inspired by\01 Adam Skorupa – 'Tales of The Witcher'.mp3



AppID: "42980"
Victoria Revolutions

Error! Missing file:
'..\steamapps\common\Victoria Revolutions\scenarios\1861\France_Rh++ne_Alpes.c
sv'
Please, update and validate your app before preparing.


'..\steamapps\common\Victoria Revolutions\scenarios\1861\France_Rhône_Alpes.csv

Аватара пользователя
Psycho-A
Эксперты no-Steam
Эксперты no-Steam
Сообщения: 424
Зарегистрирован: 28.09.2009
Благодарил (а): 15 раз
Поблагодарили: 81 раз

#42 Сообщение 26.10.2013, 17:42

wim95
Попробуй открыть bat-файл программы и поставить в начале (после echo off)

Код: Выделить всё

chcp 1251
или (если не помогает)

Код: Выделить всё

chcp 1252
Я не работал над кодировкой в текущих версиях, так как не-латинские символы в играх достаточная редкость, и возможности проверять их я не имею.
Если получится - включу данный фикс в следующее обновление.

wim95
Нович0к
Нович0к
Сообщения: 15
Зарегистрирован: 03.12.2009
Поблагодарили: 1 раз

#43 Сообщение 26.10.2013, 23:38

Сделал так

Код: Выделить всё

@echo off
chcp 1252
title ACF Toolkit [v0.99] console
color 80
cd /d "%~dp0"
не помогло
chcp 1251
Error! Missing file:
'..\steamapps\common\Fallout\LЗёame.TXT'
Please, update and validate your app before preparing.
chcp 1252
Error! Missing file:
'..\steamapps\common\Fallout\LA¸ame.TXT'
Please, update and validate your app before preparing.
Победил. Надо написать

Код: Выделить всё

chcp 65001
будет utf-8
Результат
Getting AppManifest data...
AppID: "38400"
StateFlags: "4"
Install Dir: "D:\Games\Steam\SteamApps\common\Fallout"
Language: "english"
MountedDepots: (D:\Games\Steam\depotcache\)
"38401_7224698799248053466.manifest"

Getting DepotCache data...
Getting depots TOC...
Loading app's state file...
Loading app's information cache...
Checking depots configuration..
Loading depots manifests.. 1/1
Building content list..
Checking content: 44/44
Checking depots versions...
(38401) "fallout content" [OK]

Verifying content (please, wait)...
Loading manifests: 1/1
Verifying files: 44/44
Correcting name case...

Processing LOG files...
Getting depots description...
Formatting TOC files...

Checking existing content...
Checking depot '38401_7224698799248053466' content...
Checking validation log ("38400.log")...

Making archive copy...
Deleting unused stuff...
Correcting Acf structure...
Archiving Acf "appmanifest_38400.acf"...
Archiving depots content (this may take a long time!)...
Compressing "[38401] fallout content (Oct 24 2012)"...

_________________________________

All backuping operations finished!
Goto '[CookedApps]\Fallout (Oct 24 2012)' to view files.
Система Win7 x64. Как будет на XP не известно

Аватара пользователя
DRON9RA
Полковник
Полковник
Сообщения: 2233
Зарегистрирован: 04.02.2009
Благодарил (а): 1482 раза
Поблагодарили: 205 раз

#44 Сообщение 29.10.2013, 01:20

Вот спасибо за программу!
А то попробовал в очередной раз TINcft и на этот раз оно даже не запустилося (не залогинилось), "ссыпля" огромным кол-вом err: unknown message после каждой строки, и само не скачивает CDR (а токо пишет что нужно скачать)(подозреваю что и не нужно на самом деле, ибо в первый раз вроде как скачал).

Ваша программа (и acf verifier tool) хотя бы работает! И даже кеш проверяет! И разобраться в ней не составило труда. Но возник вопрос: утилита же не проверяет актуальность acf-файла? CDR никакой як TINcft не скачивает?
Я проверял утилиту пока токо на заведомо обновлённых играх (купленных). Процесс обновления через утилиту мало смысла имеет если не знать точно какая версия игры сейчас, и какая актуальная должна быть.

А ешё тинсфт вроде как умеет очищать строку ластоунер в асф-файле. Тоже очень полезна фича, для пиратчегов. Можно ли её как реализовать при процессе проверке или валидации игр, посредством батника-то?
Продам ключ (2) + CD Half-Life 1 Platinum [WON][Steam], не дорого!

Half-Life Platinum Pack + Generation edition [EN][4CD].
http://forum.csmania.ru/viewtopic.php?f ... 39#p966139

Аватара пользователя
Psycho-A
Эксперты no-Steam
Эксперты no-Steam
Сообщения: 424
Зарегистрирован: 28.09.2009
Благодарил (а): 15 раз
Поблагодарили: 81 раз

#45 Сообщение 29.10.2013, 18:03

DRON9RA
Но возник вопрос: утилита же не проверяет актуальность acf-файла? CDR никакой як TINcft не скачивает?
Проверяет. Это первая строка, "Check app's current status". Если ACF актуален, то на всех кэшах будет OK (сам ACF не имеет записи о дате в своей структуре - только "buildid"). Помимо этого, в последней бете реализован вывод версий ВСЕХ имеющихся в папке ACF-файлов/игр. CDR не скачивается, но используется AppInfo.vdf Стима. По этой причине, всегда необходимо иметь обновленную версию этого файла (т.е. Стим должен запускаться накануне).
Процесс обновления через утилиту мало смысла имеет если не знать точно какая версия игры сейчас, и какая актуальная должна быть.
См. выше %)
Можно ли её как реализовать при процессе проверке или валидации игр, посредством батника-то?
Она уже реализована в таких операциях как создание архивной копии и создание version/update-файлов. В остальных случаях типа валидации кэша или проверки версии, не вижу в ней смысла, так как мы можем работать и с лицензией.

Ответить Вложения 4