The VG Resource

Full Version: Custom Binary File Formats (I'd love some help!)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I want to create my own compressed / encrypted binary file formats for my commercial games. I'm ripping my hair out trying to find a good tutorial. I don't like using stuff like FBX, PNG or OGG. Idea came from Retro Studios, my game dev heroes, which use their own propietary formats.

I have basic design ideas but I need to know how to implement them and how to create, for example, an exporter for Max for .MLO (the format extension I chose for models). I realize I have to create scripts in Unity to interpret the files, but I still would like some teaching in this field.

My thread might help a bit Wink The second lesson should be ready within the next few days, which will cover bytes themselves. Right now it's pretty basic stuff but in the coming weeks the stuff it goes over will help with understanding file formats and consequently creating your own, too.
In any case, having some experience with hacking/understanding existing formats (even popular ones like PNG) is definitely a gigantic help, and I would highly recommend looking into that stuff if you haven't already.

I have to ask though, why? Most of the weird formats games use are due to requirements rather than choice, because they're using a custom engine. If you're working with Unity, there's no reason to create your own format, unless you want to prevent people from ripping your resources. And in that case, just encrypting them with a standard algorithm will be more effective.

I understand creating custom formats out of interest or necessity, and that case I totally say go for it. But if you're making a game with Unity, I just don't see why you can't use good, well-supported, functional formats.
Thanks a million, puggs. I'll look at it!! Heart I was thinking of using both a custom format AND Zlib to save on disk space.
(01-21-2017, 08:44 PM)TabuuForteAkugun Wrote: [ -> ]Retro Studios, my game dev heroes
Me also.
For example, analyse ASCII FBX format to see how it's structured. And made a custom format with XML arrangement, Unity can load them with this : . But do you want this custom format to be embedded in the Unity build ?
But if you will do a hexadecimal from scratch format, good luck.