Leaderboard
Popular Content
Showing content with the highest reputation since 10/22/2025 in all areas
-
5 points
-
4 points
-
3 points
-
Version 1.0.0
12 downloads
Broken Sword - Shadow of the Templars (1996) * bs1_1996_clu_export.py * bs1_1996_clu_import_and_patch.py Required: Python. When installing, make sure to check “Add python.exe to PATH.” Usage: * Copy the swordres.rif and text.clu files into the same folder as the .py files. * Run bs1_1996_clu_export.py: this will extract the texts into Text_exported.txt. * Translate it, then rename the finished file to Text_translated.txt. * Run bs1_1996_clu_import_and_patch.py: this will insert the translated texts back into text.clu and modify swordres.rif. * The new files will be created with the _new suffix. Tested with GoG (2.0.0.8) and Steam Reforged Free DLC FEARka3 points -
Thanks for some info from here and made a tool for unpacking and packing localize map files, if someone is interested in it. https://github.com/dest1yo/wwm_utils2 points
-
2 points
-
2 points
-
I am updating the Noesis script from this post to handle more versions of the 3D model rsf format. Soon I will release an update to the script. Meanwhile, as a sample, I want to show some extracted models that we were not able to extract with the old script. On the top left corner we find the Orange Bowl stadium from NCAA 08. On the top right corner we see the hologram (a ficticious one) stadium from Madden 13. The low left corner shows the LA Memorial Coliseum from Madden 12 or 13 and finally on the low right corner we find the Louisiana Tech stadium from NCAA 12. All these rsf files come from the PS3 versions of the games with data in big endian. The script can handle data in little endian too, for example rsf files coming from PS Vita games. I am almost 100% sure that the updated script will be able to handle rsf files from NCAA 08 to NCAA 14 and Madden 07 to Madden 17 with no issues.2 points
-
Animation file from FGO arcade, uses the same engine as various Project DIVA titles but the animation files are formatted in a different way. .mot Tool: https://github.com/h-kidd/noesis-project-diva (works with FGO Arcade's model files and .mot files from Miracle Girls Festival and Project DIVA but it doesn't work with FGO Arcade's .mot files, but you can edit the source code of the tool to try to make it work with the game's .mot files) Sample file is in the attachment. mot_svt_0001.zip1 point
-
1 point
-
I used the file "tex_DeadSpaceMobile.py" from this GitHub link provided by Sleepyzay Here is the link Sleepyzay mentioned adding the script to the repository in a later post. When you have the file, just add it to the folder "noesisv4474\plugins\python" and you should be good to extract the textures after restarting Noesis or pressing "Reload Plugins" in the "Tools" category on the hotbar.1 point
-
Here my analysis: Header: 24 bytes: [ Int64 EntryCount Int64 ValueCount Int32 Timestamp Int32 Padding ] Buckets: [24-528] bytes, based on allocated bucket TableEntries: EntryCount * [ 8 Bytes Hash(or id?), Int32 RelativeOffset, (formula: text_start = current_entry_offset + 8 + value) Int32 TextLength ] Values: ValueCount * [ Byte[ValueLength] Data ] Null value have zero length and no hash. Successfully unpack and pack, the game load new text normally.1 point
-
To whoever ends up here in the future, there is a really simple to use utility to convert files from Xbox ADPCM to PCM and vice-versa on Github: Sergeanur/XboxADPCM Thanks for the thread, I really thought the WAV files I had were lost forever due to an obsolete codec..! In my case, I am porting the PT-BR voiceover of Max Payne from PC to Xbox, which I am surprised wasn't done before.1 point
-
1 point
-
Yes! I´ve to create a tool to merge and split image, so i can merge them, edit and later split to insert.1 point
-
1 point
-
I did the descompressor and compressor but in c++, need to test the compressor thought, because is compressing better than the original. Test in game and show the results, if works. MACROSS_PS1_TOOL.zip1 point
-
1 point
-
1 point
-
fmt_psaVita_ValkyrieDrive.py Here's a old noesis plugin to view and export most of the mib, msb and mab of the PSVisa version of the game.1 point
-
Edit - just tested it and no 4 mrts is uv, you was right in saying the 4th one is the uv maps by the rule1 point
-
# Atlas Fallen (Fledge Engine) # script for QuickBMS http://quickbms.aluigi.org comtype lz4f open FDDE "toc" get DUMMY long get SOME_CRC long callfunction GET_INFO 1 get SIZE long endian big get SOME_CRC long callfunction GET_INFO 1 get SOME_CRC long callfunction GET_INFO 1 callfunction GET_INFO 1 get DUMMY byte # 1 get DUMMY byte # 1 get DUMMY byte # 1 get DUMMY long # 1 get FILES long string NAME p "%s_%d.dat" NAME 0 open FDSE NAME 1 for i = 0 < FILES get SOME_CRC long callfunction GET_INFO 1 get OFFSET longlong get ZSIZE long get SIZE long get DUMMY long get DUMMY long get DUMMY short clog NAME OFFSET ZSIZE SIZE 1 next i startfunction GET_INFO get ZERO long get DUMMY long savepos TMP get NAMESZ long if NAMESZ & 0x80000000 math NAMESZ & 0x7fffffff endif getdstring NAME NAMESZ padding 4 0 TMP endfunction1 point
-
I have one as an example I notice in this section Ran XXD with groups of 12 and noticed a pattern. This is the pinky intermediate joint. It is known that the pinky intermediate joint has one degree of freedom. meaning that movements in the other two DoF should be minimal. The second set of each float is stable. 16 bit floats. Little endian likely. Meaning that [3f], [00], [ff], etc. is the major bits. Given the ffs I do not think it is Big Endian with an offset. I have attached the file in question so you can look yourself EDIT: These are signed LE numbers. Circular angular floats (not IEEE 754 standard) so ffff/0000, 3fff/4000, 7fff/8000, bfff/c000 are each 90 degrees apart. EDIT 2: It could also be a LUT. But then I checked for any tables and I can't find any useful. EDIT 3: I have no clue anymore. These are proprietary obfuscated numbers using some cryptic format and if anyone knows how to decode them it would be absolutely amazing. SVT_0015_S01_ATK_A01.zip1 point
-
Anybody could share mot, tex_db.bin and a model file .bin of a character1 point
-
1 point
-
I tried using the head models and tested two of them (DDP and Rovyal). I was able to get the models to work. From my understanding, all of the heads share the same offsets and parameters, so if you can get one model to construct with no weird faces, you can use the same parameters for the other models. I’m just having an issue with the ears, as you can see in the photo below. If you could share your parameters and offsets, I think it would be very helpful. update 1 : got it woriking however the uvs are not working but you can transfer it using copy vertex order plugin in blender UPDATE 2: got the uvs to work for the model using these params but i still have to go inside blender uv unwrap and then copy uv maps to the main model . is there a way i can get uv maps and model all in 1 in hex2obj ? sorry if this is a rookie question since ive never used hex 2 obj before Final Update : I just have to save the mesh from hex2obj settings and the uvs will be added to the obj. thanks for your help Hex2Obj1 point
-
1 point
-
1 point
-
Try this tool, made some adjust to read your file. zstd decompressor.zip1 point
-
Actually your file is a container with a bunch os zstd files. attached the first file decompressed. I did a tool, long time ago, i will search here. head_conor_mcgregor_model_CB540.mcd.zip1 point
-
It's not just 1 block of data, there are multiple compressed ZSTD blocks in your sample file that have to be joined together - e.g. at 0, 0x129b0, 0x31dd0, etc.. It looks as though each file is preceded by the compressed size and anotherr value, except the first block, which looks to be a compressed size of 0x129a0. You might have cut that bit off in your sample. Each block seems to decompress to 0x40000 bytes except for the last one, which is shorter. I guess the header might have some useful info.1 point
-
I've just released a new version of ImageHeat 🙂 https://github.com/bartlomiejduda/ImageHeat/releases/tag/v0.31.2 Changelog: - Added new pixel formats: APLHA4, ALPHA4_16X, ALPHA8, ALPHA8_16X, RGBA6666, RGBX6666, BGRT5551, BGRT8888, PAL8_TZAR, BGRA5551, BGRA5551_TZAR, BGRA8888_TZAR, BGRA4444_LEAPSTER - Added support for LZ4, Emergency RLE, Neversoft RLE, Tzar RLE, Leapster RLE, Reversed TGA RLE - Fixed issue with x360 swizzling - Fixed issue with PS Vita/Morton swizzling for 4-bpp images - Added support for palette values scaling (1x, 2x, 4x, 8x, 16x) - Added dropbox for palette scaling in "Palette Parameters" box - Added funding info1 point
-
1 point
-
Hello guys, I need help to the correct read UV`s and Textures, from the Reckless Racing game. Earlier, durik256 helped me read the mesh format and some UV data from the *.sggr format, but to this day I haven’t been able to figure out the UV scaling and materials. Here’s the link to the discussion: https://reshax.com/topic/1067-reckless-racing-ios-vfs-files/ Below is the Noesis script for reading the mesh data. Script have two problems: - Sometimes the script reads the LOD versions of the mesh models. - It also doesn’t read the UV scale, and the mesh isn’t split by materials. I’m asking for your help in updating this script. from inc_noesis import * def registerNoesisTypes(): handle = noesis.register("Reckless Racing", ".sggr") noesis.setHandlerTypeCheck(handle, noepyCheckType) noesis.setHandlerLoadModel(handle, noepyLoadModel) return 1 def noepyCheckType(data): if data[:4] != b'\x4D\x3C\x2B\x1A': return 0 return 1 def noepyLoadModel(data, mdlList): bs = NoeBitStream(data) ctx = rapi.rpgCreateContext() ofs_res = data.find(b'#RES') if ofs_res != -1: bs.seek(ofs_res + 44) unk, vnum, zero = bs.read('3I') skip = 12 if unk == 4368 else 0 vbuf = b'' vbuf, uvbuf = b'', b''#bs.read(vnum*24) for x in range(vnum): bs.seek(2,1) vbuf += bs.read(2) bs.seek(2,1) vbuf += bs.read(2) bs.seek(2,1) vbuf += bs.read(2) bs.seek(5,1)#4 uvbuf += bs.read(2) bs.seek(2,1) uvbuf += bs.read(2) bs.seek(1,1)#2 bs.seek(skip,1)#12+ rapi.rpgBindPositionBuffer(vbuf, noesis.RPGEODATA_SHORT, 6) rapi.rpgBindUV1Buffer(uvbuf, noesis.RPGEODATA_USHORT, 4) u0, inum, u1 = bs.read('3I') ibuf = bs.read(inum * 2) rapi.rpgCommitTriangles(ibuf, noesis.RPGEODATA_USHORT, inum, noesis.RPGEO_TRIANGLE) try: mdlList.append(rapi.rpgConstructModel()) except: mdlList.append(NoeModel()) return 11 point
-
Hey all, I also recently got interested in modding the original QP Shooting. I'm currently working on a command-line tool that so far allows for extracting and repacking the LAG assets, with decoding and encoding of dialogue/system files also now planned to be implemented. However, it seems after reviewing this thread that I wrongfully assumed that the graphics were red-blue-swapped A16B16G16R16 DDS surfaces rather than a special Luna/LAG image format... so that's probably another thing I need to fix up (although the assets can be modified fine with an editor that supports that DDS format once the header is written, so maybe it is just a slightly tweaked version of DDS). I'll post the GitHub link here when I polish and finish it up : )1 point
-
@ikskoks Thank you for this script, I also was able to use it successfully. I had a question about the outputted `.kiw` files, there is bytecode in each file that corresponds to in game instructions like character dialogue expressions, choices, background images and music cues. What is the best way to reverse engineer the bytecode in these files? I am not sure of the game engine that made this but are there any existing parsers or scripts for `.kiw` or similar you know of?1 point
-
Awesome man, glad to have helped! If there's any other static meshes you need let me know1 point
-
Hello! My goal is to replace texts in Unity games, no matter if the new text data is smaller or bigger than the original. I start by believing you can "rebuild" the resources file: partial replacement (because of the varied 00s after the file path. See Knowledge section) + pointer edit but no matter what script I do, the game shows no texts! And that drive me insane the more I work on it! Replacing texts with smaller one (or space only) through Hex Editing will come out fine (Proven by modding SpookWare and Fishlike, even if the edit is in levelX files). So, it has to be something with pointers (Checksum even!) but where? Hex Edit example: Notice the space after the new name? [EDIT] It's possible to make the text a bit longer or shorter but the length of [text + 00s] must be a divisible of 4. If the original text length is 5, the new text should be between 6 and 8. Don't forget to change the text length number! If the text ends with 4 zeroes, the game will crash. (I overlooked this part, this explain why my script didn't crash the game). When the text replacement script is finished, we can add new bio or Google Translated text shenanigans! If you find something, feel free to share! Python Scripts: Unity Text Extractor Script: Extract all texts data into a txt file for view and modification. Only work with the magic word "I2Languages". Unity Text Extractor Script.py Unity Text Extractor Selective Script: Same but only take the text blocks of interested for edit. Create a txt file of text paths list you wish to extract. Unity Text Extractor Selective Script.py Unity Text Replacer Script (Work in progress): This script attempts to replace texts, including editing header and file size number. Use Dungeon Clawler 2024 Demo resources file as base. Unity Text Replacer Selective Script.py Knowledge (so far) UNITY TEXT FORMAT (Little Eudians) (ressource.assets) 4 Bytes = 01 00 00 00 4 Bytes = Number of Something 4 Bytes = 00 00 00 00 4 Bytes = 0B 00 00 00 (Lenght of "I2Languages") 12 Bytes = I2Languages 00 8 Bytes = 00 00 00 00 00 00 00 00 4 Bytes = 01 00 00 00 4 Bytes = Number of Test/Translation Blocks For [Number of Test/Translation Blocks] times { 4 Bytes = Number of Languages (Absent on First Block) 20 Bytes = 00s (Absent on First Block) 4 Bytes = Path Name Lenght X Bytes = Path Name (Has to contain "/", "_" and no Space) 0 - 15 Bytes = 00 (For completing if the text lengh isn't a divisible of 16) (Unsure) If the Interger Division of [Total of the two above] / 16 is 0 {4 Bytes = 00 00 00 00} 4 Bytes = Number of Languages For (Number of Languages) Times { 4 Bytes = Lenght of Text X Bytes = Text [0A are "\n" (Return to Line)] 0-3 Bytes = 00 (For completing if the text lengh isn't a divisble of 4) } } 4 Bytes = Number of Languages 24 Bytes = 00s 4 Bytes = 01 00 00 00 / End Point without the App_Name Name UNITY RESOURCE HEADER (Little Eudian) Found after the huge chuck of indescribable bytes and 00 00 00 00 at the start 24 Bytes { 4 Bytes = Pointer Number 4 Bytes = 00 00 00 00 4 Bytes = Pointer (?) 4 Bytes = 00 00 00 00 4 Bytes = Length of a Data (?) 4 Bytes = A Number Maybe File Type? }1 point
-
Because the fmlb and sound file does exits anymore because when before Game shutdown that files are dynamic content but some files like that are available in beta versión APK and obb but no all files1 point
-
Oh man, I'm interested in this. I hack the N64 AKI Wrestling games, and wondered if there was anything for Def Jam Vendetta. Where can I find this Byte Map tool?1 point
-
Version 0.0.0.1
10 downloads
Extremely early version of tool, can export a good portion of models in game, some will fail due to version (investigating if this is due to them being old files, or if the game genuinely has a different code path for them, as I can only see 1 in the exe). Some will also fail due to WIP issues with mapping LOD indices (errors or corrupt mesh output) Drag and drop Alan Wake 2's folder onto the exe/pass it via CLI and it will export all binfbx files in the archives. Currently only exports models with material names/skeleton, references to textures and other data is a heavy work in progress, but I felt it was best to get an early version out that can at least export mesh info. Requires Cast plugin to import into Blender/Maya for now, more formats will be supported later: https://github.com/dtzxporter/cast Janitor.CLI.7z1 point -
You can use my latest Fmod Bank Tools - https://www.nexusmods.com/rugbyleaguelive3/mods/2 https://github.com/Wouldubeinta/Fmod-Bank-Tools Just PM me for the bank password.1 point
-
not quite sure about uvs, try ofs 17 for U and ofs 21 for V, (all as Short) sample for 4e153346.SGGR1 point
-
my plugin for vfs work with your file EDIT: and i made preview plugin for *.sggr fmt_sggr.py (*.pvr its image, use pvrTexTool)1 point
-
Did you ever figure out the animations format? I'd love to get access to the animations for some stuff but of course, the MOT files are formatted differently 😔1 point
-
1 point
-
Maybe you should open a new thread and ask in there, not here, because this thread is for discussing the motion file.1 point
-
yeah i guess so. but I think we need to find something to differentiate between rotate data or transform data, and it's hard to find that, so we need something reverse work1 point
-
for fgo arcade, you can use this to extract the farc file: https://github.com/Silvris/RandomScriptsAndTemplates/blob/main/FGO Arcade/FGOArcade-FARC.py for kancolle arcade, you can use farcpack tools to extract it: https://github.com/blueskythlikesclouds/MikuMikuLibrary/releases/download/v2.2.0/FarcPack.7z the trading card images was in ./rom/trading_card1 point
-
https://github.com/h-kidd/noesis-project-diva AFAIK this uses the same (or highly relevant - Virtua Fighter 5 based) engine as other arcade games such as Project DIVA Arcade or Fate Grand Order I guess the animation format would be relevant (and hope this be helpful for REing)1 point
ResHax.com: Empowering Curious Minds in the World of Reverse Engineering
Delving into the Art of Code Unraveling: ResHax.com - Your Gateway to the Thrilling World of Reverse Engineering, Where Curiosity Meets Innovation!