Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BCSV file format #7

Open
jonbarrow opened this issue Sep 3, 2024 · 4 comments
Open

BCSV file format #7

jonbarrow opened this issue Sep 3, 2024 · 4 comments

Comments

@jonbarrow
Copy link

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
Copy link
Owner

kinnay commented Sep 5, 2024

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

I also figured out the following:

  • The flag at 0xA specifies whether the file has a short or long header.
  • If it has a long header, the field at 0x10 contains a version number in decimal.

I might add more explanation to the file format later.

@jonbarrow
Copy link
Author

jonbarrow commented Sep 5, 2024

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
Copy link
Owner

kinnay commented Sep 6, 2024

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
Copy link
Author

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 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants