Как вытащить картинки из игры
Перейти к содержимому

Как вытащить картинки из игры

  • автор:

Как извлечь картинки из игр?

Кто знает какую нибудь программу чтоб вытащить картинки из игры. Просто в некоторых играх есть отдел бонус и там картинки, но просто их размещенных в папке игры нет. Вот я и хочу их достать.

Лучший ответ

медиаресурсы могут быть зашифрованными или упакованными. Универсальных способов нет.
Можешь попробовать — Dragon UnPACKer

Остальные ответы
Это будет долго. Легче их просто заскринить (фрапсом например)
Похожие вопросы
Ваш браузер устарел

Мы постоянно добавляем новый функционал в основной интерфейс проекта. К сожалению, старые браузеры не в состоянии качественно работать с современными программными продуктами. Для корректной работы используйте последние версии браузеров Chrome, Mozilla Firefox, Opera, Microsoft Edge или установите браузер Atom.

Как получить картинки из .APK?

Новый вопрос.
Как получить ресурсы из APK? В сети нашёл инфу, нужно переимновать в .zip и извлечь. Так и сделал, но в папках drawaleble и res нету никаких картинок.

Раньше вопрос звучал так:

Жму «Установить», пишет «Войдите в аккаунт», мне этот файл нужен здесь в Windows.
Как можно их скачивать на десктоп короч.

#1
21:26, 15 ноя 2017

Хаус
Поищи на других ресурсах. Их всякие китайцы автоматом перекладывают.

  • endeavour_pr
  • Постоялец

#2
22:57, 15 ноя 2017

войди в аккаунт, хотя некоторые должны быть совместимы с девайсами, а еще некоторые вообще не скачать без VPN потому что они недоступны для РФ

#3
23:58, 15 ноя 2017

Тема скользкая. если предположить, что речь о бесплатных приложениях, то нужен телефон с рут доступом и бэкапить на sdшку через прогу типа Titanium Backup.

#4
2:20, 16 ноя 2017

Хаус
> Как можно их скачивать на десктоп короч.
Установи эмулятор андроида и затем установи свою прогу из Google Store.

#5
7:52, 16 ноя 2017

Хаус
Те, кто пиарятся на форуме 4pda, обязаны в посте выложить APK. Оттуда его и можно скачать.
Остальные приложения и игры можно скачать почти с любого зеркалирующего Google Play сайта, просто вбив название приложения в поиске google.

#6
10:59, 16 ноя 2017

Хаус
1. Берешь ID пакета, в данном случае это будет com.BitDimensions.Meteor_Blast,
2. Вбиваешь его в поисковике Google.
3. Качаешь APK например отсюда https://www.apkmonk.com/download-app/com.BitDimensions.Meteor_Bla… 17-07-06.apk/
4. Profit 🙂

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

#7
12:07, 16 ноя 2017

Спас. Ибо. Выручил.

#8
12:11, 16 ноя 2017

Новый вопрос в 0-посте.

#9
12:15, 16 ноя 2017

Хаус
> Новый вопрос в 0-посте.

А это уже пиратством попахивает

и вообще все ответы есть в гугле

#10
12:20, 16 ноя 2017

0iStalker
> А это уже пиратством попахивает

Ты меня уважаешь?

> и вообще все ответы есть в гугле

apktool.jar — нашёл, только не совсем понял как пользоваться.

#11
12:33, 16 ноя 2017

Хаус
> Как получить ресурсы из APK?
Если их нет в открытом виде в assets, res, drawable, то значит они запакованы в каком-то кастомном формате и он зависит от инструментария, который использовался при разработке игры.

В той игре, которую ты пытаешься препарировать, в папке assets есть 2 png-шки, которые показывают, что игруха сделана на Game maker. И следовательно надо уметь извлекать ресурсы из формата этого инструмента разработки. Видимо все ресурсы вместе с кодом лежат в паке game.droid. Вот его и надо пристально изучать.

#12
12:36, 16 ноя 2017

Хаус
А что там за картинки-то? Судя по маркету, вся графика в виде линий.

Если гуглить или думать лень, то в тупую по сигнатурам PNG и RIFF в game.droid находятся и вырезаются любым hex редактором четыре png атласа и семь wav файлов.

Что-то типа этого (убрал альфа канал, а то получается белое на белом):

Изображение

#13
13:09, 16 ноя 2017

Vitorio
> сделана на Game maker

entryway
> (убрал альфа канал, а то получается белое на белом

Круто! А можно с альфа-каналом?

> А что там за картинки-то? Судя по маркету, вся графика в виде линий.

Ага. Я хочу похожую игру сделать по графике просто. Эти картинки чтобы потестить.

#14
13:15, 16 ноя 2017

Хаус
> Ага. Я хочу похожую игру сделать по графике просто. Эти картинки чтобы
> потестить.
Игра для Андроид? Тема проекта есть?

entryway
> Если гуглить или думать лень, то в тупую по сигнатурам PNG и RIFF в game.droid
> находятся и вырезаются любым hex редактором четыре png атласа и семь wav
> файлов.
Подскажи, пожалуйста, как ты так быстро нашел в общей массе конец файла? Вот допустим нашел я сигнатуру RIFF, а чтобы узнать где конец файла, надо же заголовок WAV-header прочесть и в нем посмотреть в соответствующее поле с длиной чанка. Ты это чисто глазами через hex-редактор делаешь или как-то иначе?

Как вытащить картинки из игры

ximepa.ru

Форум «ХимеРа.Ру» » Игры » Игры для ПК » Как извлечь картинки из игр? (как получить изображения)
HESHE Дата: Пятница, 03.11.2017, 11:32 | Сообщение # 1

Группа: Пользователи

Сообщений: 4

Статус: Offline

Добавлено (03.11.2017, 11:31)
———————————————
но может хоть кто нибудь ответит пожалуйста ?

Rayneutral Дата: Вторник, 16.04.2019, 21:09 | Сообщение # 2

Группа: Пользователи

Сообщений: 5

Статус: Offline

Группа: Администраторы

Сообщений: 388

Статус: Offline

Цитата HESHE ( )

но может хоть кто нибудь ответит пожалуйста ?

Форум «ХимеРа.Ру» » Игры » Игры для ПК » Как извлечь картинки из игр? (как получить изображения)

Как вытащить ассеты из игры на Unity

Из игр, сделанных на движке Unity, можно достать гору материала для наполнения вики: спрайты, музыку, звуки, текстовые файлы с диалогами, характеристики предметов и многое другое. В этом блоге описаны основные методы их получения, программы и подводные камни.

  1. Законно использовать файлы из игр можно только в некоммерческих целях! [1] .
  2. Разработчики используют разные плагины и способы хранения информации, поэтому способы из блога подходят не для всех игр!
  3. Меня часто спрашивают: «можно ли перевести игру на другой язык?». Отвечаю. Вытащить файл локализации можно, но перевести игру обычно нельзя, если сами разработчики не добавили эту возможность. Я плохо знаком с модами, но до сих пор не находил способа как вшить перевод обратно в игру.
  4. Unity постоянно обновляется, а вот инструменты для извлечения ассетов могут быть заброшены авторами. Старые программы могут не работать на новых играх, а новые на старых.
  • 1 Инструменты
  • 2 Быстрое извлечение ассетов
    • 2.1 Мобильные игры
    • 6.1 Диалоги и другие текстовые файлы
      • 6.1.1 Вариант №1 — папка с игрой
      • 6.1.2 Вариант №2 — текстовые файлы
      • 6.1.3 Вариант №3 — Articy:draft 3
      • 6.1.4 Вариант №4 — I2 Localization
      • 6.2.1 Вариант №1 — папка с игрой
      • 6.2.2 Вариант №2 — файлы MonoBehaviour

      Инструменты [ ]

      • не обновляется
      • экспортирует MonoBehaviour в формате json
      • обновляется
      • рекомендую выставить Group By Asset Type в настройке Bundled Assets Export Mode
      • экспортирует MonoBehaviour в формате yaml
      • обновляется
      • улучшенная версия UABE
      • рекомендуется использовать только для модификаций
      • не обновляется
      • игры с большим количеством музыки и звуков часто сжимают их в формат bank. Только эта программа может извлечь их оттуда

      Быстрое извлечение ассетов [ ]

      Запустите программу AssetStudio либо AssetRipper. Новичкам рекомендую использовать AssetStudio, потому что кроме ассетов он дополнительно ничего не экспортирует.

      1. Debug → снимаем галочку Show error message (это придётся делать при каждом запуске программы)
      2. FileLoad Folder.
      3. Открываем папку, где установлена игра, а затем папку с постфиксом _Data (например, LibraryOfRuina_Data).
      4. Filter Type → выбираем нужные ассеты. Если каких-то ассетов нет, не пугайтесь и пока не обращайте внимания:
        • AudioClip — звуки, музыка,
        • Font — шрифты,
        • TextAsset — диалоги, описания и другие тексты,
        • Texture2D (не путать со Sprite) — Изображения.
      5. ExportFiltered Assets.
      6. Выбираем папку, куда будут выгружены ассеты. Например, если вы выберете «Рабочий стол», то структура папок будет такая:
        • Рабочий стол:
          • Название игры (например, LibraryOfRuina):
            • AudioClip,
            • Font,
            • TextAsset,
            • Texture2D.

      Мобильные игры [ ]

      Способ для мобильных почти такой же. Разберём на примере Fallout Shelter:

      1. Скачиваем APK и кэш (если есть) и извлекаем всё в одну папку.
      2. Открываем папку целиком с помощью AssetStudio либо AssetRipper. Искать папку _Dataне нужно.
      3. Вытаскиваем ассеты как описано выше.

      Изображения [ ]

      Среди файлов могут быть дубликаты с припиской #301, #4241 и т.д. Чтобы не раздражали, можно удалить их батником:

      1. Создаём текстовый файл с названием «___УДАЛЕНИЕ ДУБЛИКАТОВ».
      2. Записываем в него строку: del /f /q «%cd%\* #*.png» .
      3. Меняем расширение файла на .bat.
      4. Переносим файл в папку с изображениями и кликаем по нему два раза.

      Этот батник можно использовать повторно сколько угодно раз.

      Обычно названия изображений редко совпадают с названиями в игре. Искать среди тысячи спрайтов нужный в таком виде неудобно. Поэтому теперь придётся вручную отсортировать их все по разным папкам.

      Названия папок лучше заранее продумать на листочке, чтобы потом не пришлось ничего переделывать. Вот пример структуры папок:

      • Characters,
      • Items:
        • Armor,
        • Weapons,
        • Artefacts,

        Если игра обновилась, то новые изображения можно легко отделить следующим способом:

        1. Создаём папку и копируем в неё все старые изображения.
        2. Экспортируем изображения из новой версии игры во вторую папку.
        3. Содержимое первой папки копируем во вторую с заменой.
        4. Если всё сделано правильно, все старые файлы выделятся. Нажимаем ⇧ Shift + Delete .
        5. Удаляем файлы-дубликаты с припиской типа #424531.

        Звуки [ ]

        В случае небольших игр все звуки можно достать с помощью AssetStudio.

        В более крупных проектах звуки обычно хранятся в формате .bank:

        1. Открываем папку название_игры_DataStreamingAssets. Смотрим, есть ли файлы формата .bank.
        2. Если есть, качаем Fmod Bank Tools.
        3. Запускаем программу.
        4. В настройках выбираем нужный формат (по умолчанию экспортируется в .waw).
          • .wav: весит много. В сумме все файлы могут весить 10 ГБ и больше,
          • .mp3 (рекомендуется): весит в разы меньше, но качество звука незначительно хуже.
        5. Указываем папку StreamingAssets и папку экспорта.
        6. Экспортируем. В одном .bank-файле обычно лежит сразу группа звуков. Программа автоматически создаст папки для каждой.

        Шрифты [ ]

        Многие игры используют шрифты типа TextMesh Pro. Это когда шрифт по сути состоит из спрайтов. Я не нашёл способов преобразовать его в обычный шрифт или хотя бы использовать в фотошопе. Если у вас есть информация как это сделать, свяжитесь со мной на сервере Discord.

        Старая информация (когда-нибудь обновлю) [ ]

        Диалоги и другие текстовые файлы [ ]

        Аналогично звукам, тексты разработчики организуют огромным количеством вариантов.

        Важно! Текстовые файлы могут быть очень большими, поэтому открывать их следует только в простых текстовых редакторах (Блокнот, Notepad++ и т.п.).

        Также обратите внимание на то, что никакого «Дерева диалогов» сделать не получится. Как и картинки, фразы могут быть расположены в лучшем случае по близкой теме. И всё же, это невероятно полезный инструмент, который сократит гору времени и труда при проверке информации в статьях.

        Вариант №1 — папка с игрой [ ]

        Бывает, что создатели просто создают отдельную папку с файлами формата .xml. Попробуйте поискать её.

        Вариант №2 — текстовые файлы [ ]

        В AssetStudioGUI во вкладке Filter Type может быть ассет типа TextAsset (если его нет, переходите к следующему варианту). Выбираете его, не забыв снять галочку с других типов, и экспортируете файлы.

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

        Вариант №3 — Articy:draft 3 [ ]

        Если диалоговая система в игре создана с помощью Articy:draft 3, то, скорее всего, подойдёт этот способ (к таким играм относится Disco Elysium):

        1. Открываем ассеты игры через AssetStudioGUI
        2. Нажимаем на вкладку Filter TypeMonoBehaviour
        3. Сортируем ассеты по размеру файла
        4. Экспортируем файлы DialoguesLockitRussian и GeneralLockitRussian (возможны другие названия)
        5. Открываем файлы в текстовом редакторе

        Файл будет выглядеть примерно так:

        < "m_GameObject": < "m_FileID": 0, "m_PathID": 0 >, "m_Enabled": 1, "m_Script": < "m_FileID": 0, "m_PathID": -7816424887579163056 >, "m_Name": "DialoguesLockitRussian", "mSource": < "UserAgreesToHaveItOnTheScene": 0, "UserAgreesToHaveItInsideThePluginsFolder": 0, "GoogleLiveSyncIsUptoDate": 1, "mTerms": [ < "Term": "Alternate1/0x010000060001344E", "TermType": 0, "Languages": [ "«Пока это все, что я могу сказать, торговка книгами». [Уйти.]" ], "Flags": [ 0 ], "Languages_Touch": [] >, < "Term": "Alternate1/0x01000006000149B2", "TermType": 0, "Languages": [ "Кроме того, есть еще церковь. Ты смотришь на поднимающуюся к небу колокольню — смотришь на восток и вспоминаешь, что там ты уже искал. И не нашел ни следа Руби." ], "Flags": [ 0 ], "Languages_Touch": [] >, < "Term": "Alternate1/0x01000006000149C0", "TermType": 0, "Languages": [ "Что в этом сложного? Тебе сказали, что она где-то к северу от деревни, а ты находишься на полуострове. На запад отсюда расположились криптозоологи. Если присоединишься к ним, получишь отличный предлог, чтобы исследовать это место." ], "Flags": [ 0 ], "Languages_Touch": [] >. ], "CaseInsensitiveTerms": 0, "OnMissingTranslation": 1, "mTerm_AppName": "", "mLanguages": [ < "Name": "Russian", "Code": "ru", "Flags": 0 >], "IgnoreDeviceLanguage": 0, "_AllowUnloadingLanguages": 0, "Google_WebServiceURL": "", "Google_SpreadsheetKey": "", "Google_SpreadsheetName": "", "Google_LastUpdatedVersion": "", "GoogleUpdateFrequency": 3, "GoogleInEditorCheckFrequency": 2, "GoogleUpdateSynchronization": 1, "GoogleUpdateDelay": 0.0, "Assets": [] > >

        Чтобы повысить читаемость и снизить вес файла, необходимо убрать всё лишнее. Замечаем, что многие участки повторяются. Последовательно выделяем участки и заменяем их на пробелы функцией Заменить все:

        , "TermType": 0, "Languages": [
        ], "Flags": [ 0 ], "Languages_Touch": [] >, 
        
        "Term":

        Затем убираем лишние куски в начале и в конце файла. В итоге должно получиться вот так:

        "Alternate1/0x010000060001344E", "«Пока это все, что я могу сказать, торговка книгами». [Уйти.]" "Alternate1/0x01000006000149B2", "Кроме того, есть еще церковь. Ты смотришь на поднимающуюся к небу колокольню — смотришь на восток и вспоминаешь, что там ты уже искал. И не нашел ни следа Руби." "Alternate1/0x01000006000149C0", "Что в этом сложного? Тебе сказали, что она где-то к северу от деревни, а ты находишься на полуострове. На запад отсюда расположились криптозоологи. Если присоединишься к ним, получишь отличный предлог, чтобы исследовать это место." .

        Вариант №4 — I2 Localization [ ]

        Если диалоговая система в игре создана с помощью плагина I2 Localization, то, скорее всего, подойдёт этот способ (к таким играм относится Hell is Others):

        1. Открываем ассеты игры через AssetStudioGUI
        2. Нажимаем на вкладку Filter TypeMonoBehaviour
        3. Сортируем ассеты по размеру файла
        4. Находим файл I2Languages, выделяем, нажимаем на вкладку ExportRawSelected assets
        5. Открываем получившийся файл в Notepad++
        6. Видим, что все нелатинские символы имеют неправильную кодировку. Нажимаем на вкладку КодировкиКодировкиКириллицаWindows-1251 , а затем КодировкиПреобразовать в UTF-8 . Сохраняем
        7. Открываем файл I2Languages.dat.bak, меняем кодировку на UTF-8. Теперь символы должны отображаться верно. Выделяем весь текст ( Ctrl + A ), копируем в текстовый файл

        Здесь, к сожалению, все языки свалены в одну кучу и в непонятном формате. Других вариантов нет, так что придётся использовать этот.

        Характеристики объектов [ ]

        Это тема, пожалуй, самая сложная. Она требует усидчивости и вдумчивости, если никто до вас этим ещё не занимался. А ещё желательно знание языков программирования.

        Вариант №1 — папка с игрой [ ]

        Мало вероятно, но создатели могут просто создать отдельную папку с файлами характеристик. Попробуйте поискать её.

        Вариант №2 — файлы MonoBehaviour [ ]

        Ассеты Unity 1

        Немного теории (возможно я опишу что-то некорректно, но суть вы должны уловить): особенность Unity заключается в том, что большинство скриптов для объектов делаются с добавлением класса MonoBehaviour. В этот класс можно добавлять различные переменные, в том числе и игровые характеристики объекта.

        Например, для персонажа игрока можно создать скрипт, в который будут вписаны его ХП, выносливость, скорость передвижения и т.д. (см. изображение) Аналогично работают предметы, враги и NPC.

        Часто, чтобы упростить код, в эти переменные могут записываться другие скрипты чисто с переменными для каждого отдельного объекта (т.н. ScriptableObject). Например, скрипт «Weapon : MonoBehaviour» может содержать поле «Data», в который можно засунуть скрипт «WeaponData : ScriptableObject» с параметрами урона, количества патронов и др. Таким образом, чтобы сделать пистолет, дробовик и снайперскую винтовку, разработчику достаточно просто поменять значения характеристик и сохранить получившийся объект в качестве префаба.

        Теперь, зная это, мы понимаем, что чтобы получить параметры, нам нужно вытащить из игры ассеты типа MonoBehaviour и структурировать их в удобоваримый вид. Для этого подойдёт уже знакомый AssetStudioGUI.

        Далее рассмотрим процесс на конкретном примере: игре Hell is Others.

        Можно ли достать что-то ещё? [ ]

        При желании, из ассетов можно выудить модели, но для вики они редко бывают нужны. И скелетные анимации, но их очень тяжело собирать в единый объект. По крайней мере, я не нашёл нормального способа.

        Примечания [ ]

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *