| Разработка и ромхакинг > Ромхакинг и программирование |
| Извлечение мультимедиа (звук, видео, музыка) данных из игр CD/DVD приставок |
| << < (82/97) > >> |
| mauzer:
Да точно также как и vp6 - смотришь заголовок через хекс вбиваешь в Criteria\Use Terminator String, WAV обычно с RIFF(RIFF Style Header фильтр есть),DDS обычно DDS\DDS5\DDS3, если без заголовка, тогда нужно искать похожие куски,скачай мой мануал выше,в нём для определённых игр есть нужные примеры по рипу с помощью vgmtoolbox, обычно если фирма производитель одна, то и форматы одни и те же |
| Dwayde:
mauzer, , как то странно :? |
| mauzer:
http://microsin.net/adminstuff/others/ascii-charset.html |
| Dwayde:
mauzer, , :? P.S. может я что-то делаю не так? |
| mauzer:
Ты сам дал ответ в прошлом посте, должно быть DDS, а не dds, если не найдёшь значит они идут без заголовков |
| Dwayde:
mauzer, , тогда они точно без заголовков, потому что я пробовал искать dds и DDS. Результат один и тот же. |
| mauzer:
пробуй грузить весь архив или куски в TextureFinder.v2 |
| Dwayde:
mauzer, , Эммммм....... |
| Dwayde:
.....пробуем листать дальше. Есть куски, которые отличаются от общей "картины". P.S. грузил туды весь архивю |
| mauzer:
играй с настройками, основное это размер картинки, когда подберешь нужный увидишь чёткую картинку, т.к. грузишь весь пак, то и размеры везде разные |
| Dwayde:
mauzer, , увы пробую разные размеры - все то же самое. Гора разноцветных пикселейю |
| mauzer:
Ну,хз, возможно есть сжатие, как вариант попросить луиджиаурему или альфа23 на xentax.com написать скрипт для распаковки через quickbms,возможно даже на сайте квикбмс уже есть данный скрипт |
| Dwayde:
mauzer, , хмммм насчет сжатия не уверен. Потому что в том же контейнере лежат 2 ролика .wmv. И Jeader Naub свободно вытащил один (почему-то один :?). P.S. Знал бы я английский :) :lol: --- Цитата: mauzer от 01 Июнь 2015, 21:51:32 ---как вариант попросить луиджиаурему или альфа23 на xentax.com написать скрипт для распаковки через quickbms --- Конец цитаты --- |
| mauzer:
Вообще звук редко жмётся, видео вообще не встречал зажатое, а по поводу контейнера,так в нём могут быть архивы со сжатыми данными,т.к. помимо графики сжимается ещё туча всякой всячины и исчесляется не одной десяткой тысяч файлов |
| Dwayde:
--- Цитата: mauzer от 01 Июнь 2015, 23:26:15 ---в нём могут быть архивы со сжатыми данными --- Конец цитаты --- И они есть. В одном из них я видел .ast. То есть контейнер внутри контейнера. По его названию понял что это один из контейнеров со звуками. Остается одно - зажат ли он как DDS или нет? P.S. странно то, что еще в архивах попадается .xml. P.P.S а EA - козлы! Понапридумают форматов - потом сиди мучайся! |
| mauzer:
В xml обычно либо скрипты игрового движка, либо текст, либо координаты шрифта... Что ж поделаешь, если вся запаковка обычно делается с целью заточки под железо, ускорения загрузок и т.д.,шифрование обычно идёт для борьбы с пиратами - чтоб всякие умники не лезли, не модифицыровали данные, не делали локализации/порты |
| Dwayde:
--- Цитата: mauzer от 02 Июнь 2015, 06:39:25 ---Что ж поделаешь, если вся запаковка обычно делается с целью заточки под железо, ускорения загрузок и т.д.,шифрование обычно идёт для борьбы с пиратами - чтоб всякие умники не лезли, не модифицыровали данные, не делали локализации/порты --- Конец цитаты --- mauzer, , с одной стороны да, это хорошо. Ибо может получится как с ArmA 2 и DayZ. Но с другой все же жаль, что у EA Sports не такая открытая игровая платформа. Ну что ж, попробую повыдергивать оттуда еще что-нибудь. Ибо я не знал, что VGM - такая мощная тулза. Но я думаю, что в конце концов это все приведёт меня на xentax. :) P.S. спасибо за помощь! Пусть только ролики, но это лучше чем ничего :) |
| decoy13:
Кто-нибудь смог извлечь данные из Kingdom Hearts HD 2.5 Remix для ps3? Здесь какая-то тулза была, но ссылка сдохла.. http://forum.xentax.com/viewtopic.php?f=10&t=10231&start=30 Вот, загрузил файл kh2movie.mself на мегу - https://mega.co.nz/#!oNNhmITK!4ShtN1NiaLG_SYC8wopYUZ0gK8l3goGveoTTvEyOpPo Может кто помочь с выдёргиванием видео оттуда? |
| Dwayde:
Ребята, а есть ли хоть какая-то возможность задампить текстуры в PCSX2? |
| SILENT_Pavel:
--- Цитата: Dwayde от 07 Июнь 2015, 01:40:06 ---Ребята, а есть ли хоть какая-то возможность задампить текстуры в PCSX2? --- Конец цитаты --- Да и достаточно просто. Прямо сейчас наверное не смогу написать полный туториал, но суть набросаю. Нужен обычный 3D Ripper DX, в нём надо нажать галочку "всегда выдирать текстуры постоянно", затем запустить pcsx2 например последнюю стабильную версию, выбрать плагин директ х9 и выключить все фильтры в его опциях. Запустить эмуль через риппер и в папке риппера будут появляться 2д текстуры с неправильной палитрой. Инвертируешь палитру через Xnview, удаляешь альфа канал и получаешь текстуру. иногда текстура выходит не целиком Альтернативный способ: http://www.swordofmoonlight.com/bbs/index.php?topic=712.0 файл из темы отдельно прикладываю к сообщению. --- оффтоп. раз затронули тему риппинга текстур. вдруг кому-то очень нужно будет выдрать текстуры из эмуляторов, где опен гл плагин, а не директХ (например PPSSPP). Для этого дела существует: https://github.com/dtrebilco/glintercept но ему нужна особая конфигурация файла gliConfig.ini, выкладываю мой вариант (кто знает как лучше поправьте его): --- Код: ---////////////////////////////////////////////////////////////// // // GLI - openGL Intercept Configuration file // ////////////////////////////////////////////////////////////// // // (Note: all options are case sensetitive) // ////////////////////////////////////////////////////////////// //ProfileName = "Basic Logging"; //ProfileDescription = "Does Basic Logging"; ////////////////////////////////////////////////////////////// // // Log Options: // ////////////////////////////////////////////////////////////// // // LogEnabled - Enable function call logging // // LogFlush - If true, will flush the logger after each OpenGL call is made. // This is useful to catch a OpenGL call that crashes the // application. This only applies to text file logging. // // LogPath - Path to store the logged files. If not specified, files // will be stored relative to the GLI OpenGL dll. // // LogFileName - The name of the file to log to (without extension) // // AdditionalRenderCalls - Names of additional OpenGL functions that are to be treated as render calls. // (extra frame and state info can be dumped at render calls) // // LogMaxNumFrames - The maximum number of frames that will be logged. // This is useful for retrieving startup information from a // application or limiting the file size on apps that make // a lot of OpenGL calls (Note: This also affects per-frame logging) // // LogFormat - The format of the log. If equal to "XML" (without quotes) // will log in the XML format. Else, the plain text format is used. // // XMLFormat::XSLFile - When the log format is XML, this option specifies the XSL file // to be used (if any). A XSL file usually formats the XML into a // readable HTML format. // // XMLFormat::BaseDir - The base (or source) directory where the XSL file can be found. // ////////////////////////////////////////////////////////////// FunctionLog { LogEnabled = True; LogFlush = False; //LogPath = "c:\temp\"; LogFileName = "gliInterceptLog" //AdditionalRenderCalls = ("glClear"); //LogMaxNumFrames = 200; //LogFormat = XML; XMLFormat { XSLFile = gliIntercept_DHTML2.xsl; BaseDir = "C:\Program Files\GLIntercept_1_3_0\XSL"; } } ////////////////////////////////////////////////////////////// // // LogPerFrame Options: // ////////////////////////////////////////////////////////////// // // Enabled - Enable logging per frame. If this is true, instead of // logging all OpenGL calls, the below frame start keys will // enable the loggers at the start of a frame. The loggers // will be disabled when the keys are pressed again and the next // frame is reached (see OneFrameOnly for other options). // // Output of logging is saved to a directory called // Frame_XXXX where XXXX is the frame number that logging // started. // // FrameStartKeys - The keys used to enable/disable logging. Valid values can be any // combination of 0-9,a-z,f1-f12,ctrl,shift,tab,lwin,rwin, // print,up,down,left,right,add,sub,insert,delete etc. // // OneFrameOnly - If enabled, will only log only one frame per key-press. // Loggers will be disabled at the end of the next frame. // ////////////////////////////////////////////////////////////// LogPerFrame { Enabled = False; FrameStartKeys = (ctrl,shift,f); OneFrameOnly = True; } ////////////////////////////////////////////////////////////// // // Input Files: // ////////////////////////////////////////////////////////////// // // GLFunctionDefines - The file to retrieve the OpenGL function defines from. // (The text header files that contain the parameters of OpenGL functions to be logged) // // GLSystemLib - The full path to the "real" OpenGL system library. This will be assigned automatically // so usually does not have to be defined. // ////////////////////////////////////////////////////////////// InputFiles { GLFunctionDefines = "C:\Program Files\GLIntercept_1_3_0\GLFunctions\gliIncludes.h" //GLSystemLib = "c:\windows\system32\opengl32.dll" } ////////////////////////////////////////////////////////////// // // Error Checking: // ////////////////////////////////////////////////////////////// // // GLErrorChecking - A OpenGL glGetError() is made after all appropiate OpenGL calls. // If an error is detected, the error code is logged to the current text/XML log next // to the function that caused the error. // (OpenGL Error context is still saved so application invoked glGetError() calls are safe) // // ThreadChecking - While GLIntercept is not currently thread-safe, (ie. So you cannot have multiple render // contexts active at the same time) enabling this option will perform basic thread checking. // (Will currently check OpenGL calls to see if they are made on the thread with the // active render context) // // BreakOnError - (used with above) Issue programmer debug breakpoint on an error. // Note that glIntercept alters the stack, so to get a valid call stack when debugging // you will need to step through some assembly (F10 on VC6) until the stack is restored. // // LogOnError - (used with above) Log all OpenGL errors to the GLIntercept error log (gliLog.txt). // // ExtendedErrorLog - (used with above) Report all available data about the function the produced the error. // (ie. Full resolved parameters that were passed to the function are reported.) // (Enabling this option will cause a severe slowdown even when no errors are produced. Only // enable when debugging specific errors) // // DebuggerErrorLog - Mirror the contents of the error log (gliLog.txt) file to the debuggers' window. // ////////////////////////////////////////////////////////////// ErrorChecking { GLErrorChecking = True; ThreadChecking = False; BreakOnError = False; LogOnError = True; ExtendedErrorLog = False; DebuggerErrorLog = True; } ////////////////////////////////////////////////////////////// // // Image logging: // ////////////////////////////////////////////////////////////// // // LogEnabled - Enabled the image logger. OpenGL textures are saved to the directory // "Images" under the main log path. Only the texture types specified in // SaveGLTypes are saved. // // RenderCallStateLog - If enabled, each render call issued will list the currently bound // textures for all texture stages. (works with text and XML logging) // // SaveFormats - The image formats to save the textures in. Current valid formats are // PNG,JPG and TGA. Note that more than one format can be specified. // (ie. (PNG,TGA) will save all textures twice, once in PNG format, once // in TGA format) // // Note on image formats: // TGA - Is pixel precise and is the fastest save format but is also the biggest. // TGA's are also not supported by web browsers (if you use XML with XSL to view the logs). // PNG - Is pixel precise and is slower to save but is smaller than TGA. // PNG's are brower compatable. // JPG - Is a format that does not save alpha and saves colors in a lossy format. // It is the smallest format and is slower to save than TGA's. // JPG's are brower compatable. // // FlipXAxis - The saving of textures is upside-down by default. Using this option will // flip the image before saving. // // TileCubeMaps - Cube map textures are saved as six individual images. Enabling this option enables // the six image to be tiled together (flattened cube shaped) and saved as one image. // // SaveGLTypes - The types of OpenGL textures to save. Valid options are 1D,2D,3D and CUBE. // Note: NVRect textures use the 2D option. // // SavePbufferTex - This option enables/disables the saving of textures that are bound from a p-buffer. // Note: P-Buffer textures are saved each time a p-buffer is bound to the texture. // (ie. no checks are performed to see if the p-buffer has changed) // // ImageIcon->Enabled - This enables saving a icon version of all images saved. (useful in XML browser viewing) // // ImageIcon->SaveFormat - The format of the save icon images (TGA,PNG or JPG) // // ImageIcon->Size - The size of the icons to save // ////////////////////////////////////////////////////////////// ImageLog { LogEnabled = True; RenderCallStateLog = True; SaveFormats = TGA; FlipXAxis = False; TileCubeMaps= True; SaveGLTypes = 2D; SavePbufferTex = False; ImageIcon { Enabled=False; SaveFormat = TGA; Size = 40; } } ////////////////////////////////////////////////////////////// // // Shader logging // ////////////////////////////////////////////////////////////// // // LogEnabled - Enabled the shader logger. OpenGL shaders/programs are saved to the directory // "Shaders" under the main log path. Supported types included ARB/NV vertex/fragment // programs and vertex/fragment GLSL shaders/programs. ATI specific vertex/fragment // shaders are not supported. // // RenderCallStateLog - If enabled, each render call issued will list the currently bound // shaders (vertex and fragment). (works with text and XML logging) // // AttachLogState - If enabled, attitional information such as compile/link state and additional // driver information may be attached to each shader/program. // (Currently only GLSL support). Note that enabling this option may force // shaders to complete compiling immediately. // // ValidatePreRender - If the above AttachLogState is enabled, this option will perform a validation of // the shader before each render and append it to the log. Enabling this option will // cause the shader to be re-saved at each render call. // (GLSL only feature via glValidateProgram) // // UniformLogPreRender - If the above AttachLogState is enabled, this option will dump all uniforms that // are active in the shader before each render. Enabling this option will // cause the shader to be re-saved at each render call. (GLSL only feature) // ////////////////////////////////////////////////////////////// ShaderLog { LogEnabled = True; RenderCallStateLog = True; AttachLogState = True; ValidatePreRender = False; UniformLogPreRender = False; //Future formatting options } ////////////////////////////////////////////////////////////// // // Display List logging // ////////////////////////////////////////////////////////////// // // LogEnabled - Enabled the display list logger. OpenGL display lists are saved to the directory // "DisplayLists" under the main log path. If a program has a lot of big glBegin/glEnd // sections in display lists, (ie 1000's of glVertex calls) the application may seem // un-responsive on startup as all these calls are processed on the list creation. // ////////////////////////////////////////////////////////////// DisplayListLog { LogEnabled = True; } ////////////////////////////////////////////////////////////// // // Frame(Buffer) logging // ////////////////////////////////////////////////////////////// // // LogEnabled - Enabled the frame(buffer) logger. When enabled, each render call can // save the pre/post/diff frame buffer (color or depth) to view the changes // that the render call made. Frame buffer saves are written to a directory // "Frames" under the main log path. // // SaveFormat - The image format to save the frame buffer in. Current options are TGA,PNG, and JPG. // (see ImageLog::SaveFormats for a decription of the formats) // // FrameIcon->Enabled - This enables saving a icon version of all images saved. (useful in XML browser viewing) // // FrameIcon->SaveFormat - The format of the save icon images (TGA,PNG or JPG) // // FrameIcon->Size - The size of the icons to save // // FrameMovie->Enabled - This enables a movie of the "post" and "diff" frame buffers to be saved. If multiple, buffers // are saved, they are tiled together. (This is useful to quicky inspect how a frame is composed) // The resulting movie is called FrameMovie.avi in the frame buffer directory. // // FrameMovie->Size - The width height of the saved frame buffers. (ie. (640,480)) The resulting movie will be // larger if multiple buffers are saved at once as they are tiled together. // // FrameMovie->FrameRate - The frame rate of the saved movie. // // FrameMovie->Compression - The list of compression codecs used to save the movie (usually 4 letters). // The first valid codec is used. Special codecs are: // "menu" - will display a menu for the user to select a codec. // "none" - will use no compression. // // ColorBufferLog - The color frame buffer save options. Options can include any combination of // (pre,post,diff). // pre - The frame's color buffer is saved before the render call // // post - The frame's color buffer is saved after the render call // // diff - The difference between the pre and post buffer saves is written. // (green represents pixels with no differnce. If the image is red, // no image differences were detected) // // DepthBufferLog - The depth frame buffer save options. Options are the same as in ColorBufferLog. // (Note: Depth-buffer saving can be very slow) // // StencilBufferLog - The stencil frame buffer save options. Options are the same as in ColorBufferLog. // (Note: Stencil-buffer saving can be very slow) // // StencilColors - When saving the stencil buffer, it can be useful to save the buffer with color codes. // (ie stencil value 1 = red) This array supplies index color pairs for each stencil // value up to 255. The indices must be in order and the colors are in the format // AABBGGRR. If an index is missing, it will take the value of the index as the color. // (ie. stencil index 128 = (255, 128,128,128) = greyscale values) // ////////////////////////////////////////////////////////////// FrameLog { LogEnabled = False; SaveFormat = JPG; FrameIcon { Enabled = True; SaveFormat = JPG; Size = 40; } FrameMovie { Enabled = False; Size = (640,480); FrameRate = 15; Compression = ("mpg4","divx","none"); } ColorBufferLog = (pre,post,diff); //DepthBufferLog = (pre,post,diff); //StencilBufferLog = (pre,post,diff); StencilColors = (0,0xFF000000, //Black 1,0xFFFF0000, //Blue 2,0xFFFFFF00, //Light Blue 3,0xFF0000FF, //Red 4,0xFF00FFFF, //Yellow 5,0xFFFF00FF, //Purple 6,0xFF80FFFF, //Bright Yellow 7,0xFFFFFFFF); //White (Note green is not used as that is the "diff" color) } ////////////////////////////////////////////////////////////// // // Function time logging // ////////////////////////////////////////////////////////////// // // NOTE: It is important to not mis-use the results of this logger. OpenGL is a very pipelined // API and you can not optimize your code based on how long is spent in each function call. // This logger is only intended for advanced users to determine where pipeline stalls "MAY" // have occured and determine speeds of operations such as glReadPixels etc. // // LogEnabled - Enabled the timer log. When enabled, the time taken inside each OpenGL // function is added to the main log. (if enabled). The logging reports // in microseconds (millionth of a second). Only take these results as // approximate figures as GLIntercept will add a small amout of overhead. // (More overhead may be indicated in the functions wglGetProcAddress, // all wgl*(context) functions, glBegin,glEnd,glGetError) // // If you are using this logger to determine where pipeline stalls occur, // ensure to disable ALL other loggers (image/shader/frame etc) as these // loggers may cause pipline stalls. Also disable parameter logging by // not defining "GLFunctionDefines" and use flat text logging to get the // fastest logging possible. (and hence the most accurate results) // // LogCutoff - The number of microseconds below which the time value is not reported. // ////////////////////////////////////////////////////////////// TimerLog { LogEnabled = False; LogCutoff = 20; } ////////////////////////////////////////////////////////////// // // Plugins // ////////////////////////////////////////////////////////////// // // BaseDir - The base directory where the plugins can be found // // Plugins - Listing of all plugins to load (and the locations // to load from) Under each plugin, plugin specific options // can be specified. // // ////////////////////////////////////////////////////////////// PluginData { BaseDir = "C:\Program Files\GLIntercept_1_3_0\Plugins"; Plugins { // // Name of plugin | Plugin load location // { Plugin specific options. (See the plugins' config.ini file for options) } // OpenGLFreeCamera = ("GLFreeCam/GLFreeCam.dll") // { // CameraMoveSpeed = 10.0; // } } } --- Конец кода --- |
| Навигация |
| Главная страница сообщений |
| Следующая страница |
| Предыдущая страница |