McRex 0 Опубликовано: 27 октября, 2005 Неужели никто из вас раньше не хотел достать картинки из любимой игры. Я не говорю о клавише Print Screen. Я имею ввиду само открытие файлов с текстурами. А ведь именно их используют для скинов и обоек (я так слышал). Открывая эту тему, надеюсь на активное участие в ней продвинутых людей. Дело однако не легкое. :| Но довольно интересное, так-так в играх разработчики частенько прячут "пасхалки" =) , и здесь описуется один из способов как их открыть. Для этого потребуется такой список прог: - Game image haker v1.1 - HEX-viewer (у меня Translhextion v1.6) - калькулятор (да-да именно он, но в инженерном режыме) Предупреждаю сразу! Пока я не буду расписывать что к чему... так-так эту тему могут проигнорировать. :) Если найдутся умные люди, то я вывешу проги, статейки, даже пару скриптов и тд. В ином случае пройдется тему закрыть. Поделиться сообщением Ссылка на сообщение
Кошак 2 Опубликовано: 27 октября, 2005 мне очень интересно, хорошая тема, а из вышеперечисленног я пользуюсь только каклькулятором инженерным для перевода и рассчёта чисел в разных системах счисление, н никогда не думала, что это сможет помочь в вытаскивании текстур из игр. Поделиться сообщением Ссылка на сообщение
KeIN1st 0 Опубликовано: 27 октября, 2005 Mc ты имеешь ввиду с приставок или компьютерные игры P.S Я юзаю Dragon unpacker, TXD editor,HLMV,IMG tool 2.0 & Adobe photoshop Поделиться сообщением Ссылка на сообщение
Tyoma the Hedgehog 4 Опубликовано: 27 октября, 2005 Есть ещё Game Extractor... Ваще это неспортивно, зато работает. Поделиться сообщением Ссылка на сообщение
Razel the Fox 0 Опубликовано: 28 октября, 2005 Хто знает чем достать ресурси из PSOne игр ? Для (*.Str)видеo/(*.XA)музыки/(*TIM).картинок неплохи PSplayer и PSXmulticonverter. А как достать звуки, текстуры, модели и символы из архивов(*.bin и не только) ? McRex скажы а как HEX'ом находяться и винемаються(соpy-paste наверно) ресурси ? И что нужно считать в инженерной считалке ? Поделиться сообщением Ссылка на сообщение
McRex 0 Опубликовано: 28 октября, 2005 2KeIN1st На этом этапе я только расскажу о вытаскивании из компьютерных игр. 2Mary TH Именно эта функция перевода систем счисление и будет нужна! :) 2Razel the Fox Ну, не совсем "соpy&paste". Вставить туда ничего нельзя, а от прочитать от туда спокойно можно! А поточнее смотри ниже. Хотя насчет Соньки первой ты меня заинтриговал, будет время покопаюсь... Теперь к делу! Ни для кого не секрет, что практически все разработчики сознательно стараются скрыть от игроков все ресурсы игры, дабы потом не созерцать в чужом проекте свои текстуры, звуки и прочее. Для этого они изобретают множество собственных форматов хранения ресурсов, так появляются всевозможные *.scr , *.tex, *.vol и другие. Многие из них на самом деле просто стандартные звуковые, графические и текстовые файлы с измененным расширением (например, во всех играх на движке Q3 pk3-файлы — это обычные zip-архивы). Но есть и настоящие “поделки”, которые никакими универсальными просмотрщиками не откроешь. сможете сделать wallpaper или оформить фан-сайт по игре. В общем, сделать с изображением все что угодно, кроме, естественно, использования в коммерческих целях. Становится все интересней и интересней, правда! =) Немного теории о структуре файлов (картинок). Структура всех файлов делится на две части: заголовок (его может и не быть, как в первом случае) и данные изображения, где хранятся цветовые значения всех точек (пикселей) изображения. Цветовое значение состоит из трех оттенков: красного (red), зеленого (green) и синего (blue). Сокращенно RGB. Это цвет в формате 24 бита (под каждый оттенок отводится 8 бит), и он “вмещает” в себя около 16,5 миллионов цветов. В 32-битных изображениях к RGB добавляется уровень прозрачности (alpha), показывая глазу уже 4 миллиарда цветов, но человек не способен увидеть десятой части этих цветов из-за своих скромных биологических возможностей. В 16-битных изображениях (это самый сложный для понимания формат) за счет понижения количества оттенков RGB в 256 раз удалось существенно снизить затраты процессорной мощи на обработку изображений, правда, цветов осталось всего 65535. Наконец, 256-цветные изображения. Их структура очень проста: в заголовок или в отдельный файл записывается палитра из 256 цветов в формате 24 бит, а в области данных каждой точке приписывается номер цвета в палитре от 0 до 255, этот номер умещается в размерность одного байта, поэтому этот формат также называют 8-битным (1 байт=8 бит). *Image Hacker v1.1. Программа представляет собой абсолютно легальный текстовый редактор с возможностью запускать специальные скрипты. Скриптовый (читайте — текстовый) файл получается очень маленький, поэтому его намного легче отослать кому-то по почте. Язык скриптов данной программы заимствует многое у языка Паскаль (Pascal), но имеет намного меньше процедур, из-за чего становится очень простым, и в нем сложно запутаться. Скачать (720.31 Кб) *Translhextion. Сойдет любой HEX-viewer (просмотрщик файлов в шестнадцетиричном коде). Скачать (375 Кб) *А также обычный “Калькулятор”, входящий в стандартный пакет программ Windows. Создайте в любом графическом редакторе картинку, нарисуйте что-нибудь, запомните ее размер (например, 190х124, далее я буду рассматривать именно такой размер) и сохраните в формате tga с цветовой палитрой 24bit. Запустите калькулятор, в меню нажмите “Вид” и выберите “Инженерный”. Вводите размер картинки по горизонтали (в примере это 190) и выберите оператор HEX. Вместо 190 появится число в шестнадцатеричном коде, равное BE. Запомните это число, перейдите в оператор DEC — вместо BE снова появится 190. Введите высоту картинки 124 и повторите процедуру. Запомните получившийся результат, если вы все сделали правильно, то это будет 7С. Теперь открывайте вашу картинку HEX-viewer’ом. Теперь просмотрите его и найдете, где записаны ширина и высота изображения. В глаза сразу же бросается первая строка в средней части экрана, последние 4 байта имеют вид BE 00 7C 00 (обозначена красным цветом). А ведь эти числа-то мы и смотрели в калькуляторе! Вот мы и нашли где в файле записана высота и ширена картинки Они записаны в формате Word (2 байта), об этом говорят байты со значением 00, идущие после BE и 7С в количестве одной штуки (за каждым). Это может показаться сложным, поэтому давайте еще раз разберем: на запись ширины и высоты уходит 4 байта (см. рисунок, выделено красным цветом), логично подумать, что на запись одного параметра уходит 2 байта. Потом идет 2 байта какого-то мусора (выделено зеленым), а далее идут данные изображения (именно эти данные нам и нужно увидеть как картинку, а не как набор символов), их видно в правой части экрана: если первая строка почти пуста, то все остальные наполнены разными закорючками. Поделиться сообщением Ссылка на сообщение
Razel the Fox 0 Опубликовано: 28 октября, 2005 (изменено) Конешно интересно. :) Вытащить модельку или текстуру предмета, переделать и подарить своему виртуальному персонажу. Со связи только только освоения 3D дела, пока что ещо не существующему персу. =) Да и много чего. =) А про *.pak из Q3 и SeriosSam я сам когдато открытие зделал, открыв иза любопытства Winrar'ом. :| Сайт по теме http://www.extractor.ru/ По PSone http://dev.paradogs.com/ http://www.hitmen-console.org/ Не знаеш чем *.txd открыть можна ? Если Фотошопом то где плагин достать ? Изменено 28 октября, 2005 пользователем Razel the Fox Поделиться сообщением Ссылка на сообщение
McRex 0 Опубликовано: 28 октября, 2005 (изменено) Сам процесс! Загружайте Image Hacker и начинайте считать, какое количество переменных нам необходимо. Ширина — раз, высота — два, Оттенки R,G,B — три, четыре, пять, и еще две возьмем для рисования изображения (координаты пикселей по осям x и y). Итого семь. Для примера я опробую процесс на SA DX? а именно на файле со шрифтом (для тех, кого я мог завести в заблуждение разъясняю. Шрифт в этой версии соника полностью графический, то есть все буквы хранятся как одна картинка). Он проше всех. Начинаем писать: Var width, height, r, g, b, x, y; {Объявляем 7 переменных} openfileas('*.*'); {Открываем нужный файл, а именно ABC_TXT.PVR} setpos(28); {Переходим на 28-й байт, тем самым пропускаем системную информацию и прочий мусор} width:=read(3); {Читаем из файла ширину изображения} height:=read(3); {Читаем высоту изображения} setsize( width, height, 8 ); {Создаем в памяти картинку в формате BMP с размерами и Количество бит, может быть 8 (256 цветов) или 24 (Очень много цветов). Но так как в нашем случае шрифты черно-белие выбираем "8"} for y:=0 to height-1 do {Организовываем цикл для загрузки 3-х оттенков для каждого пикселя по Y, а следующая строка для каждого пикселя по X} for x:=0 to width-1 do {Так как цикл мы начинаем с 0, а не с 1, от максимального значения мы отнимаем 1, чтобы не вызвать сбой в программе} begin {Начало обработки каждого пикселя} b:=read(1); {Читаем Byte с оттенком красного} g:=read(1); {Зеленого} r:=read(1); {Голубого} setpixel(x,y,read(1)); {устанавливает цвет пикселя с координатами x и y} end; {Завершение обработки} savefileas; {Сохраняем получившееся изображение в файл} closefile; {Очищаем память от уже ненужных данных} Отробуйте етот скрипт на ABC_TXT.PVR. Понравилось? =) С программой идут примеры попрактикуйтесь! Много всего интересного можно найти в графических архивах игр. Например, в Call of Duty можно найти планы битви чертежи кораблей и другой техники. Но лучше всего открывайте файлы в сониковских играх, видоизменяйте их (всякие эффекты и тд.) и выставляйте как обои или что-то еще... Учитесь, ошибайтесь, не останавливайтесь. Ведь Рим не один день строился! :) Список процедур Процедуры для работы с файлами в игровом формате OpenFile('Имя файла в одинарных кавычках') — загружает в память файл с картинкой в игровом формате. OpenFileAs('В кавычках — маска файла. Например *.*') — открывает диалоговое окно для выбора файла для процедуры Open. SetPos(число) — устанавливает позицию в файле, с которой впоследствии мы будем читать данные. GetPos() — возвращает нынешнюю позицию в файле. GetSize() — возвращает размер открытого файла. read(число) — читает и возвращает скрипту данные из файла, где число: 0 — букву (1 байт) 1 — байт 2 — integer (4 байта) 3 — word (2 байта) 4 — дробное число (8 байт) CloseFile() — очищает память (обязательно выполняйте эту процедуру в конце скрипта). Процедуры для работы с картинкой setsize(ширина, высота, количество бит) — устанавливает размер картинки. Количество бит может быть 8 (256 цветов) или 24. setpixel(x, y, номер цвета в палитре) — устанавливает цвет пикселя с координатами x и y. Эта процедура подходит только для 256-цветных картинок! setpixelcolor(x, y, цвет) — устанавливает цвет пикселя с координатами x и y. Эта процедура только для 24-битных картинок! setcolortable(номер ячейки палитры (0-255), цвет) — устанавливает цвет для соответствующего номера палитры. Save('имя файла в одинарных кавычках') — сохраняет полученную картинку в bmp-файл. SaveFileAs() — открывает диалоговое окно для выбора файла для процедуры Save. Прочие процедуры RGB(оттенки (числа от 0-255) красного, зеленого, синего) — возвращает полученный при смешении цвет. ShowMessage(любое значение) — выводит на экран значение (используйте эту процедуру для проверки прочитанных данных и для вывода указаний по дальнейшей работе). ToStr(любой параметр) — превращает любой параметр в строку (иногда требуется для нормальной работы предыдущей процедуры). Список далеко не полный. Изменено 28 октября, 2005 пользователем McRex Поделиться сообщением Ссылка на сообщение
Razel the Fox 0 Опубликовано: 28 октября, 2005 (изменено) Да, синтаксис похож на Pascal'евский =) А открывать он может только незжатые граф. файлы ? *.PVR - Шо це за формат ? Щас Sa DX у меня не стоит, а качать, розпаковивать и инсталить влом просто. Будет время завтра, займусь Image Hacker'ом.' Спасиба за розяснения и ссылки. Изменено 28 октября, 2005 пользователем Razel the Fox Поделиться сообщением Ссылка на сообщение
KeIN1st 0 Опубликовано: 29 октября, 2005 Конешно интересно. :) Вытащить модельку или текстуру предмета, переделать и подарить своему виртуальному персонажу. Со связи только только освоения 3D дела, пока что ещо не существующему персу. =) Да и много чего. =) А про *.pak из Q3 и SeriosSam я сам когдато открытие зделал, открыв иза любопытства Winrar'ом. :| Сайт по теме http://www.extractor.ru/ По PSone http://dev.paradogs.com/ http://www.hitmen-console.org/ Не знаеш чем *.txd открыть можна ? Если Фотошопом то где плагин достать ? Всё просто Photoshop не нужен единственое что нужно это скачать программу TXD workshop с этого сайта http://gtamodern.com.ru/files/pafiledb.php...=category&id=10 она предназначена для GTA но можно доствать текстурки из Sonic heroes благо движок тот же самый и метод сжатия похожий если будут вопросы по использованию пиши в ПМ Поделиться сообщением Ссылка на сообщение
McRex 0 Опубликовано: 29 октября, 2005 Да, синтаксис похож на Pascal'евский :)А открывать он может только незжатые граф. файлы ? *.PVR - Шо це за формат ? К сожалению, принцип проги заключается в работе только с файлами в которых записано непосредственно саму цветовую палитру в пикселях, причем желательно подряд. Так что если файл является сжатым, возникают дополнительные хлопоты. :| А .PVR - это расширение для SA DX, больше я его нигде не встречал. =) Поделиться сообщением Ссылка на сообщение
Tyoma the Hedgehog 4 Опубликовано: 29 октября, 2005 Дримовский формат, кажется... Поделиться сообщением Ссылка на сообщение
Razel the Fox 0 Опубликовано: 30 октября, 2005 (изменено) Хочю достать картинки из PSOne игры G-police 2. Все данние сховани в архивах *.bin и *.rdt Мне извесно что обычно картинки для PSone в формате *.tim Роздобыл bmp2tim проги, пробовал конвертировать в разные размеры и палитры. Если смотреть их с текст.редактора до видно что символы данных часто повторяютса. Что очень похоже на BMP, и дествительно разные рисунки и однаковыми размерами и палитрой имею идентичние размеры. Потом открыв 2 разные картинки Hex'ом увидел что все они начинаются с 10 00 00 00 Но заканчеваются уже на разние данние. Зная что картинки там 512*240/16bit можна подщитать по адресам где будет конец файла. Фаил умещается на 3C000 адресе + 8 баит. В принцепе, адрес начала + число емкостей содержания картинки = адрес конца Но в конечном не чево не вышло, уж много там мест где начинаются на 10 00 00 00 :) Просмотрев все архивы с диска текст. редактором в far'е заподозрил что у RES.RDT много последовательный однаковых символов, что говорило о наличии Uncompressed данных. Скачал ещо прогу TimUtilits которая умеет принудительно открывать почти любые файлы. Если что попало открыть и прога приймет то виходят помехи. Открыв етой прогой RES.RDT было видно в нем содержатся рисунки. Поексперементировав с разришением(длиной строк), сложыл строки картинок 320*240 в ряд в режиме RGB 320*xxx пикселей картинки сверху вышли без цвета и в 3 раза меньшым размером. Cнизу перекошены строки. Теперь методом " больше-меньше строк" нижние картинки почти выровнились на RGB 683*XXX пикселей Картинки там 512*240, но смотрятса в 2 раза меньшем размере. Подобное мы видели на телевизорах не знающих NTSC. Или на секунды перевода Pal-NTSC, NTSC-Pal в видике. Если разобратся, Image Hacker весьма поможет в етом. :) Изменено 30 октября, 2005 пользователем Razel the Fox Поделиться сообщением Ссылка на сообщение
McRex 0 Опубликовано: 31 октября, 2005 Подобное мы видели на телевизорах не знающих NTSC. Или на секунды перевода Pal-NTSC, NTSC-Pal в видике. Если разобратся, Image Hacker весьма поможет в етом. :) У меня было тоже самое, когда трудился на SA DX. Весь прикол был в том что ширина в файле с картинкой как таковая не значилась. :) Хорошо что я знал размеры на перед, в Paint'e создал такую чистый лист, задал прочесть с него все размеры и по етим размерам построить фотку из файла с игры. Правда пришлось поменять порядок чтения цветов с файла и то, мне не удалось добиться требуемых результатов. Мне показалось, что ты упоминал, что в файле несколько картинок, лично я пока таких не встречал, но можешь посмотреть пример №3 из папки с hack'ером, там по моему подобный способ достатия приведен. Поделиться сообщением Ссылка на сообщение
McRex 0 Опубликовано: 19 ноября, 2005 Пипл, не стесняйтесь описывать свои попытки в раскопках текстур. Описывайте свои программы и методы. Тема обширная. Ждем свежих идей. :) Поделиться сообщением Ссылка на сообщение
Razel the Fox 0 Опубликовано: 20 ноября, 2005 Да, 3-й пример вытягивает спрайты анимации из архивов, Но как переписать скрипт под етот *.TIM не представляю, "что нибуть" здесь не пройдет, так как не знаю способ и порядок розмищение данных о пикселях. Открыл я *.txd етим TXD Shop'ом, просто пересохранил файлы без изменений и игра(Sonic Herois) не смогла открыть те текстуры. Половина персонажей белыми стали(Smooth Shaded). Перепобовал все в етой проге, но текстуры в игре так и не загрузились. ^^* Поделиться сообщением Ссылка на сообщение
McRex 0 Опубликовано: 7 декабря, 2005 Вполне возможно что оригинал несет в себе не только саму текстуру но и служебную инфу. Посмотри разницу в коде между оригиналом и пересохраненым файлами))) Поделиться сообщением Ссылка на сообщение
.kill 0 Опубликовано: 24 января, 2006 Люди кто хорошо разбирается в графике и Image Hacker, помогите!!! Облазил много форумов, но везде меня игнрировали. Помогите достать графику из игр Петька!!! Я разархивировал файл формата str, а там лежал bmp файл такого вида. Помогите пожалуйста. Люди кто хорошо разбирается в графике и Image Hacker, помогите!!! Облазил много форумов, но везде меня игнрировали. Помогите достать графику из игр Петька!!! Я разархивировал файл формата str, а там лежал bmp файл такого вида. Помогите пожалуйста. Люди кто хорошо разбирается в графике и Image Hacker, помогите!!! Облазил много форумов, но везде меня игнрировали. Помогите достать графику из игр Петька!!! Я разархивировал файл формата str, а там лежал bmp файл такого вида. Помогите пожалуйста. Люди кто хорошо разбирается в графике и Image Hacker, помогите!!! Облазил много форумов, но везде меня игнрировали. Помогите достать графику из игр Петька!!! Я разархивировал файл формата str, а там лежал bmp файл такого вида. Помогите пожалуйста. Поделиться сообщением Ссылка на сообщение