Today I will demonstrate what we do when something goes wrong or has to be fixed inside a blendfile! Recently we changed the way the armguns file works in order to make it more efficient (long story short: there used to be multiple proxies referring to multiple armatures, which were automatically generated with a script, and now the armature is the same and it is shared by the proxies).
How do we tell Blender that all the armatures have to be renamed to match a single one? Simple, we open up any hex-editor (such as bless) and look for the text to replace – in our case any ARrig_armgun* will become ARrig_armgun. Some attention must be payed in order to keep the file length consistent so that the file is not corrupted. This can be done by inserting empty spaces in substitution of the erased chars.
I hope this can be of any use to you all!
I’ve found this:
http://www.blender.org/development/architecture/blender-file-format/
But is there a complete documentation of the file format (it would be nice to see some simple explanations – like how the default cube scene is saved to a .blend)
I’m no wizard at reverse engineering binary file formats and I am also no wizard at C++, but I can see some benefit to understanding the file structure before doing something like the above.
Cool, but there was no python script that could have done this?
Hi Francesco,
is there a reason your not using Blender-aid? I know it has an easy to be fixed issue concerning newer files, but it can find linking mismatches and solve them.
Cheers,
Jeroen
Hey, this was a pretty simple case, and it was fun to try solving it by hand. We will start using blender-aid soon probably.
Cool tip, thanks! Will also look into Blender-aid, too…
Ha,
I did this back in 1999 for getting a working .blend on the CD. At this time sequencer strips were not saved with a relative path, so the .blend would not have worked from a CD on a different place or operating system. Made my day!
Carsten
I guess doesn’t work with compressed files. This can be used with bones too… Can be useful for standardize a group of oldies armatures with new.
It’s funny you have posted this because I’m in the middle of a project that involves hex editing blender files. They are basic templates and I just rename the texture file name and automate the render feeding back the result online.