kinnay / Nintendo-File-Formats

File format documentation for Wii U and Switch games
79 stars 10 forks source link

BCSV file format #7

Open jonbarrow opened 2 months ago

jonbarrow commented 2 months ago

BCSV is a file format used by Nintendo Switch games. I first discovered this format in Animal Crossing: New Horizons, but it may be in other games as well (haven't checked). Myself and some others in the AC:NH community RE'd this format a few years ago, and I originally posted the documentation for it on https://wiki.oatmealdome.me/BCSV. But that wiki was updated an unknown amount of time ago and the data was removed. I have since moved the documentation on my personal website https://jonbarrow.dev/works/bcsv

There's a number of tools out there which have since implemented the file format, but from my 3 seconds of Googling I can't find anywhere that actually documents the format properly outside of my website. Having the information backed up somewhere like this site would be nice, especially if my site ever goes down

kinnay commented 2 months ago

See https://nintendo-formats.com/games/acnh/bcsv.html.

I also figured out the following:

I might add more explanation to the file format later.

jonbarrow commented 2 months ago

Interesting, I was not aware there were multiple header versions! Were those also in AC:NH? All the files I checked at the time from AC:NH used the format I had documented, but that was several years ago now

Is the 2nd flag known to have a use?

kinnay commented 2 months ago

I got this information from the parser in the game's code. The 2nd flag is also read by the parser, but I haven't figured out what it does yet.

BCSV page is updated btw.

jonbarrow commented 2 months ago

Ah okay, that makes sense. I never actually looked at the parser in the game's code, I just got all my information from just looking at the files themselves. Sounds good, thanks for the add :+1: