Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation since 02/26/2025 in Posts

  1. I'm looking at the textures/materials now, trying to allocate them properly. Just a few tests so far:
    9 points
  2. please update the script ! if you would be so kind.
    5 points
  3. Tool released. Its an early version (as usual), but already makes very good results.
    5 points
  4. Adding materials... thats probably last thing its missing before release
    5 points
  5. Yes, but it's still in progress, not ready to upload it yet while I iron out a few issues.
    4 points
  6. Here's an initial Noesis script for the TMD2 mesh files. I've probably made some assumptions with the format, so I don't know if it'll work for other tmd2 files that I don't have samples for. It doesn't load the textures/materials as yet, mainly because I'm not 100% sure on how they're referenced, but it will do vertex colours and the bones should also work. bleach_rebirth_tmd2.zip
    4 points
  7. Yeah, original scripts don't seem to account for all of the different vertex formats, so a lot of meshes won't work. I can get the skeleton working by doing some manual extracting of the data. I'm not sure if the original script author(s) will update theirs. If not, I may do an updated one at some point.
    4 points
  8. Another update. Should load almost everything now. Since the last updated, I've integrated reading of the textures and created the materials for each submesh, so they should display correctly. No need to decompress any files first, just load a tmd2 file and it will load the matching texture file. There are issues with some hair meshes - some of them don't seem to have proper textures, maybe they're handled differently, not sure. There are still some texture types that I'm not sure about - they could be specular, metallic, or whatever. As always, it's still a work in progress. bleach_rebirth_tmd2.zip
    3 points
  9. Still working on materials. Diffuse/Normal maps look ok. But still quite a way to go.
    3 points
  10. You can use this Noesis script to get the textures from the LDS files. Not sure how the textures are integrated into the materials to allocate to individual submeshes. rebirth_lds.zip
    3 points
  11. tm2 and lds its zlib lds after unpack (dds texture) tm2 after unpack (3d model) structure: 8 bytes magic(PZZEtmd2) uint decSize uint zero uint ofsData uint zero bytes* comData EDIT: i made qbms script BLEACH_TM2_LDS.bms
    3 points
  12. Did you tried Store RwShapeIndex Values in a List? Somenthing like that? bs.seek(RwShapeIndexTableOffset, NOESEEK_ABS) rw_shape_indices = [] # Create a list to store RwShapeIndex values for i in range(0, RwVertexInfoCount): RwUnknown_0 = bs.readUShort() RwUnknown_1 = bs.readUShort() rw_shape_indices.append(bs.readUShort()) # Append to the list bs.seek(RwVertexInfoOffset, NOESEEK_ABS) for j in range(0, RwVertexInfoCount): Underline = "_" RwShapeInc = j RwShapeIndex = rw_shape_indices[j] #get the value from the list using the j index. RwShapeIdxNum = "{:04d}".format(RwShapeIndex) RwShapeIndexTmp = str(RwShapeIdxNum) print(RwShapeIndexTmp)
    3 points
  13. So I've been following this thread from today, seeing all the progress as it comes. My main aim from the beginning was to find Tier's files and edit her to the authentic look. I've been able to find an alternate, albeit possibly outdated now, method of revealing the full 3d models for the files in Noesis. The python plugin is a slight change to DKDave's code that I found earlier in the thread (same file name). It forcibly commits all triangle data to a single mesh, essentially forcing all vertices and submeshes to appear. Maybe someone can benefit from this potential checkpoint? Can't wait to see what modding brings for this amazing game. I'll continue trying to fiddle with the textures tomorrow! Biggest thanks to DKDave again, doing the Soul King's good work. bleach_rebirth_tmd2.py
    2 points
  14. Just a small update to add a few more mesh types from the additional samples provided. bleach_rebirth_tmd2.zip
    2 points
  15. I'm going to do tools for it, and release it here on reshax. I plan to support characters and maps, like it was before with FF7 remake.
    2 points
  16. Is there a specific file you're having trouble with inside that archive? These appear quite similar. e.g. 0000000000000000_unpack.seg is uncompressed 8-bpp indexed pixels 512x1024 starting at 1600h and a palette at 200h. (you'll have to tell me if the red and blue channels are reversed, since you've played the game)
    2 points
  17. Thanks ! it works Script for noesis after decryption I'm sorry that i forget who wrote this. it's from xentax fmt_tamsoft_tmd2.py
    2 points
  18. Hi everyone, We're excited to announce a small yet important update regarding user groups on our board. This change is the first in a series of improvements planned for the very near future. Please find below the updated and detailed descriptions for each user group: Administrators Moderators Donators Engineers Supporter Members Guests Banned Thank you all for your attention, and we appreciate your ongoing support and contributions to the board. Stay tuned for more exciting updates! Best regards, The Administration Team
    2 points
  19. .bsp, lots of small point clouds (11 to 20 vertices, one with 50). Someone with patience required to collect them. The search pattern is xx00000101xy, 5 times in a row, where xx is 00 to 05 and xy a wildcard byte. The vertex blocks start 48 bytes (+/- 1 or so) after the start of the pattern. (Imho most blocks don't look as if they represented meshes, btw.) One vertex (?) block from the end of the file, double vertices included:
    2 points
  20. I've just released a new version of ImageHeat https://github.com/bartlomiejduda/ImageHeat/releases/tag/v0.14.2 Changelog: - Added changing canvas color feature. Three colors are available: Gray (default), black and white - Added config file feature. Now program's settings are stored in "config.ini" file - Added translation feature. Two initial languages are supported for this release: English (default) and Polish - Rewritten logic for indexed formats. Now there is an additional combobox where palette format can be selected - Added support for Nintendo Switch swizzling - Added support for PAL_I8A8 format - Added tooltip for longer filenames in Info Box - Fixed bug with mixed shortcuts when using CTRL or SHIFT - Removed support for some rare pixel formats (e.g. RGB121) - Added support for showing palette file name in GUI - Added shortcuts (N/M) for changing palette format - Removed rawutil dependency completely
    2 points
  21. Tool Collection: https://www.reddit.com/r/FFXV/wiki/modresources/ ffxvScout (earc export and import): https://sayhijon.wordpress.com/ffxvscout-3/ Cindy, Text Editor (localization tool): http://www.balamb.pl/down/Cindy_FFXV_Text_Editor_v1.1.zip
    2 points
  22. I think someone already made a GUI for it
    2 points
  23. so i figured that this method would be used in order to get the line details for the models. unless there's a texture that i am missing missingin some way i would presume?
    1 point
  24. i still would have posted this regardless i did say for anyone to test with
    1 point
  25. Looking to see if anyone is interested in this, 3D models/geometry isn't exactly my strongest skillset (which I'm sure you will soon notice). I was originally inspired by an old thread on Xentax for other Rareware games (primarily Grabbed by the Ghoulies) however Live and Reloaded seemed to get skipped over since no one could figure out the compression the game was using. Fast forward a few years and i learned that Xemu had a debugging feature with support for IDA which is a tool I'm fairly familiar with, using this i was able to extract the x86 assembly instructions the game uses to decompress the game assets and write a wrapper for it allowing me to unpack the files to a state similar to what's used in other Rareware titles. You can check out that tool here: https://github.com/birdytsc/clr_unpack I'm currently in the process of reversing the games model format but my limited experience with 3d models/formats is hindering my progress. While some of the data is pretty straightforward to obtain some are packed away in pushbuffer instructions, one example is the tri's/faces data: This makes it a little more annoying to tell what set of vertexes they belong to but they are (so far) stored in order that you will find any vertex data one problem i am having is im not sure whether im extracting the data properly, example: the first part for conkers main model is broken into 3 sets of triangles all sharing a single set of vertexes, uv's etc. the model only looks correct if i separate the 3 sets of tri's into there own mesh, keeping them together creates artifacts: Another issue im having is Texture alignment, the game stores the textures as raw DXT data (usually DXT1 or DXT5) even in simpler models that only consist of a single set of triangles im still having alignment issues, for example: Perhaps this is a sign that there is indeed an issue with how im extracting the Tri's? If anyone wants to play around with this stuff ive included some files in the zip: aid_bfdmodel_characters_conker.py - a script for ModelResearcherPro that will load the verts/tris for the main conker model retail_aid_zpackage_general_singleplayer.rbm.listfile.csv - list of file names (if they havnt been stripped from the asset packer) and offsets retail_aid_zpackage_general_singleplayer.rbm.unpacked - just the decompressed version of the file found in the retail game retail_aid_zpackage_general_singleplayer.rbm.unpacked.mapped - same file as above but after its had a bunch of pointers mapped, useful for diffing against the original to find pointers. retail_aid_zpackage_general_singleplayer.rbm.unpacked.mapped.hexpat - imhex pattern file for the previous file. conker_stuff.zip
    1 point
  26. yeah tried those, plus i'm unsure if it's supported with version 4.25 onwards. All the data of my files are stored in the UCAS files i believe
    1 point
  27. Hello, sorry if this isn't the appropriate place for to ask for help regarding modifying a game but I'm looking for help trying to modify the Far Cry 3 Editor. I've tried reaching out to countless different modders that have made mods for Far Cry 2 and 3 aswell as in the Far Cry Modding Discord to no avail. I'm far from tech savvy or a software developer/hacker but I'll be more than happy to help along the way in any way that I can since I would really love to enjoy all of the different models that the game has to offer. What I'm looking to achieve: -Add in all of the missing models, NPC's (Pirate Beheader, COOP Heavy Pirate Flamer, Guard Dog/Attack Dog) -Different textures/materials of models (different colors of crates, barrels, tarps that appear in-game, but not the Editor.) /To my knowledge only vehicles cycle trough the different textures. -Missing COOP, Multiplayer, DLC content There are already some mods that try to do this, like https://www.nexusmods.com/farcry3/mods/156, https://www.nexusmods.com/farcry3/mods/334 Unfortunately there are still many missing models and the different textures aren't present. Basic Introduction: This modding guide should be a wonderful read for those interested, while it is for Far Cry 2, all principles still apply. It can be found here: https://docs.google.com/document/d/1ozhN9s_4puzSXVYs12ZAOayyL036hgQuFCVS_jSXbd0/edit?tab=t.0#heading=h.5yuedjwzmzz8 NOTE: If necessary I'll personally provide these archives, including after they have been unpacked. I can guarantee you that none of these have any sort of malware. Inside of our Far Cry 3 installation is the data_win32 folder, inside of it are .dat & .fat file archives which contain different folders as well as the different file formats that the game uses. In order to open these archives, we can use https://www.nexusmods.com/farcry3/mods/5 Alternatively https://github.com/gibbed/Gibbed.Dunia2 There are multiple .exe's that are geared towards modding, which I'm far from knowledgeable about, one is supposedly for .XML editing In order to extract them, all that's needed is to just place the example.dat and example.fat file withing the Gibbed.Dunia2 Tools folder. After that we need to place the example.dat file onto the Gibbed.Dunia.2.Unpack which will open up a program pop-up window that is going to extract all of the files from the archive and create a example_unpacked folder which includes the different types of data like the .XML files, models, sounds, textures, etc... Far Cry 3 uses a "patch" system where putting in a new patch.dat and .fat file inside of data_win32 modifies the game, whether it be changing values, adding in new objects, etc... The 2 mods mentioned above utilize this method in order to change the Editor (IGE-In Game Editor). The specific file being edited is the object_inventory.xml which is a giant list of all the available models, NPC's, Vehicles as well as Directories which just neatly organize where models are found within the editor. The problem: Objects have different tags which I have no clue in figuring out, like how big the Bbox (Bounding box/Collision model) is or what are all of the materials an object can use (e.x. a Barrel can be black/red/blue/green), it seems to be some sort of internal setting since there is no mention of which colors/materials a object can use anywhere. Ideally a script would go over all of the folders and add in the content since doing it manually would be a painstaking process. Hopefully this has been helpful in some way, as I've said already I tried reaching out to many different people but unfortunately it seems that there isn't anyone around who could help me figure all of this out, I wish I was skilled enough to do this myself but this seems like my only option and place where I feel like I can ask for help. If there is any way that I can help, feel free to write so.
    1 point
  28. Log from the Noesis script for ad005_cos00_00_dec.tmd2 (I used a stride of 60 instead of 56 for the 1st sub mesh, most index counts make sense): offs verts, vStride 0x645b0 56 counts of sm-indices start at 0x760 numFIs 3542 StartIndex 0 numFIs 3222 StartIndex 3542 numFIs 4403 StartIndex 6764 numFIs 2077 StartIndex 11167 + 2077 = 13244 numFIs 903 StartIndex 13244 numFIs 13652 StartIndex 14147 numFIs 2834 StartIndex 27799 numFIs 1120 StartIndex 30633 numFIs 11557 StartIndex 31753 numFIs 11628 ?? StartIndex 43310 ?? numFIs 9684 ?? StartIndex 54938 ?? The address of the 2nd sub meshes face index block was harder to obtain (it was not 0x236c, calculated): H2O file of 3rd sub mesh: 0xE836 4403 Vb1 60 52 0x645B0 6791 020000 0x0 255 All three together:
    1 point
  29. unpacking works correctly. most likely a bug in your plugin
    1 point
  30. I checked both single decompressed file vs individual decompressed files and they are same in size. So I believe that decompression is fine. Maybe that chunks are stacked in some order. But it's just guess... Also i noticed after decompression that some files have pointer on data which actually doesn't exists. See below
    1 point
  31. XPR files BMS script format sample files Beard And Granny 3D engine .gr2 files? https://www.mediafire.com/file/y4bjdaizb26q4v8/SplosionMan_XprGamesFiles.zip/file XPR games Archive Twisted Pixel Games Splosion Man Ms. Splosion Man Comic Jumper The Adventures of Captain Smiley The Gunstringer final
    1 point
  32. I wish you had written how you extracted the language files. Right now I can't open the .forge file either. Can you share how did you open it?
    1 point
  33. This is a Reverse Engineering forum, not a place to beg for games and discuss where to obtain them. This is stated in Rule #2 of the forum rules. At the same time you are constantly asking OP to break both rule #1 & rule #2. Being persistent won't get you anywhere here.
    1 point
  34. Of course so lets start with matrixs so in this case Porky pig have 19 Bones ok so first seek to offset 0x2374 and repeat this 19 times to get all bone matrixs so lets start: 1.64 bytes with trash for bone name 2.156 bytes unrelated to bone data 3.a float Matrix 4x4 wich is World Space bind pose matrix 4.84 bytes unrelated to bone data Ok now have all bone World Space bind pose matrix now lets get the mesh data including:faces vértices normals uvs bone índices and bone weights. Seek to offset 0x969d4 and start: 1.8898 faces as ushorts 2.1832 vértices as float 3.1832 normals as half float 4.8 bytes zero padding 5.1832 uvs as half float 6.1832 bone índices as ubyte 7.1832 bone weights as half float Ok now have a rigged mesh ready for animation so Next is seek to offset 0xdd340 Ok lets see whats have here: 64 bytes, BankName 64 bytes, AnimName 64 bytes, HierName ushort, frame ushort, numBones 16 bytes, unk (trash IfII) for range(numBones): 68 bytes, BoneName uint, numElem uint, trash for range(numElem): uint, fmt (1000-pos; 1002-rot; 1003-scl; 1010-uv1; 1011-color) uint, type (41-uint; 37-vec2(float); 38-vec3(float); 40-quat(float)) ushort, numKeys ushort, unk (trash) array[keys] Ok so this is all offset and structure wich you need to extract model and animation
    1 point
  35. With this tool, you can create .locres from unzipped .uasset and .uexp files. https://github.com/VD42/UE4TextExtractor Or download and use this sample: UEXP_to_Locres.zip (Read the ReadMe.txt!)
    1 point
  36. SOLVED! Thanks to @patrickhamster code, the texture could be converted and swizzled properly! But it was necessary to edit some parameters so it could work as intended! 😁👍🏻
    1 point
  37. I wanted to chime in with my own experience. I too was successful extracting the maps and importing them into Blender using the tool and addon. But I wanted to confirm if I did it correctly. The tool created the folders, files and blueprints as expected, and I moved them all into the Layout folder as shown before extracting the Umap. As indicated in the instructions, the master meshes do have the material name which I am using as a reference to locate and manually add the texture maps. The part I want to confirm is if this tool is capable of extracting and attaching image textures like the original did. I noticed the instructions don't mention this. I also want to confirm that the issue ZeroTheZeraora mentioned is not isolated. The maps marked "nature" have some meshes with the material name "#FFFFFF sRGB". I've identified two so far: 2600-NIBLA_07OldCastleNature_Terrain_Strip 2600-NIBLA_05AirportNature_Terrain_Strip
    1 point
  38. Lists are the default go-to dynamic sequence type in Python because of their flexibility. The append method works naturally on lists, while array.append() requires that the appended value be of the correct type. Many Python libraries and frameworks default to lists for simplicity.
    1 point
  39. An early version of the PS2 SDK had a leaked PSS file processing tool called PS2STR.EXE. However, that was only an early version. Considering that WA5 is a relatively late-era PS2 game, the PSS tool included in the SDK should have been updated to support muxing more audio formats, but there haven't been any leaks of that. Therefore, the only option is to reverse engineer this special PSS format ourselves, which is indeed very difficult.
    1 point
  40. Did you check the dlls for DLLRegisterServer() inside them? list exported functions of a dll For the HashFunction(), I'm not sure about the int8 pointer, so we need to check some sources of popular hash functions and try to compare to the asm code you've got. btw, I don't know whether you know it: you never can get the belonging string out of a hash by using a "reverse formula". It's a one way street from string to hash. So if you want to know the string belonging to a hash number you'll have to create a table of all strings used in the game and calculate their hashes. Then searching a hash in that table would bring up the belonging string.
    1 point
  41. hey! Unfortunately the packages didn't work, it keeps saying DLLs not found After some analysis I can understand a little better how these files work, I mapped the data using ImHex but I have what seems to be the last obstacle to being able to write a functional parser for most files. only remaining obstacle is the possible pointers to data or strings in the files. It is still unclear whether they are direct pointers, go through an FNV hash, or represent memory addresses. One example is characterAnimationData, which displays a uint32 value of 76241072. These values/addresses/pointers, etc., seem to be located at the end of the file or after the header data. The values appear to be the same, suggesting some kind of relationship between them. In this case, the actual value of characterAnimationData is a string found at the end of the file or after the header. The same pattern occurs with other data entries. However, I still haven't been able to determine what this value (76241072) actually represents, and this happens in most files, most .markerSet file works like this. I found these messages from dalkon: and that's what I did for the files, but for this type of data that seems to be a key, offset or something like that I still haven't been able to understand how it works, see characterAnimationData: https://drive.google.com/file/d/1FCYNMurfhIX_hXHDvQrUPhgtArvFPuRu/view?usp=drive_link
    1 point
  42. just to celebrate my newly discovered knowledge, i decided to make a quick render in blender
    1 point
  43. I gave you a huge warning. No one here is your personal slave. Behave or you will go. NoobInCoding just gave the facts. Its up to him to help or not.
    1 point
  44. This is the whole point of the words I said, I don't believe he would do this.
    1 point
  45. My job is not to do YOUR work. My comment is for other people so they don't have the hope for something that not exist
    1 point
  46. yes you did the right thing. everything should work. I made a short video
    1 point
×
×
  • Create New...