# CSB Util
Utility to encode and decode .csb files.
CSB is basically a binary version of a CSV file optimized for quick parsing (it's definitely not optimized for file size as csb files are much larger than their csv counterparts)
These files are found in _The Battle Cats Unite!_. Although the CSB format is very similar to BNTX, which is used for images, which either means that PONOS took heavy inspiration from that format, or the CSB format is another Nintendo file format that alrady existed but isn't documented online. To get the csb files from the game you have to extract the .arc files which I won't be getting into here, I might make a tool in the future that extracts them though.
I've released this tool separately as other games might use the format too if it is a Nintendo format.
[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/fieryhenry)
## Installation
```bash
pip install csb_util
```
## Usage
Most of what you need to know is detailed in the --help option
```bash
python3 -m csb_util --help
```
### Decode
```bash
python3 -m csb_util decode --help
```
To decode csb files you can either pass in individual files with the --files option, e.g
```bash
python3 -m csb_util decode --files file1.csb file2.csb --outdir output
```
To decode a folder of csb files you can use the --dirs option, e.g
```bash
python3 -m csb_util decode --dirs folder1 folder2 --outdir output
```
If you have non-csb files in that folder that you want to ignore use the --ignore flag, e.g
```bash
python3 -m csb_util decode --dirs mixed_use_folder --outdir output --ignore
```
### Encode
```bash
python3 -m csb_util encode --help
```
Encode csv files back to csb files.
Options are basically the same as [decode](#decode), so just read that
## Install From Source
```bash
git clone https://github.com/fieryhenry/csb_util.git
cd csb_util
pip install -e .
```
Raw data
{
"_id": null,
"home_page": null,
"name": "csb-util",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": null,
"author": "fieryhenry",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/27/54/31a37994897695f78466b83d67302e7c09aab6d83e2168f9c1e894889b43/csb_util-0.1.tar.gz",
"platform": null,
"description": "# CSB Util\n\nUtility to encode and decode .csb files.\n\nCSB is basically a binary version of a CSV file optimized for quick parsing (it's definitely not optimized for file size as csb files are much larger than their csv counterparts)\n\nThese files are found in _The Battle Cats Unite!_. Although the CSB format is very similar to BNTX, which is used for images, which either means that PONOS took heavy inspiration from that format, or the CSB format is another Nintendo file format that alrady existed but isn't documented online. To get the csb files from the game you have to extract the .arc files which I won't be getting into here, I might make a tool in the future that extracts them though.\n\nI've released this tool separately as other games might use the format too if it is a Nintendo format. \n\n[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/fieryhenry)\n\n## Installation\n\n```bash\npip install csb_util\n```\n\n## Usage\n\nMost of what you need to know is detailed in the --help option\n\n```bash\npython3 -m csb_util --help\n```\n\n### Decode\n\n```bash\npython3 -m csb_util decode --help\n```\n\nTo decode csb files you can either pass in individual files with the --files option, e.g\n\n```bash\npython3 -m csb_util decode --files file1.csb file2.csb --outdir output\n```\n\nTo decode a folder of csb files you can use the --dirs option, e.g\n\n```bash\npython3 -m csb_util decode --dirs folder1 folder2 --outdir output\n```\n\nIf you have non-csb files in that folder that you want to ignore use the --ignore flag, e.g\n\n```bash\npython3 -m csb_util decode --dirs mixed_use_folder --outdir output --ignore\n```\n\n### Encode\n\n```bash\npython3 -m csb_util encode --help\n```\n\nEncode csv files back to csb files.\n\nOptions are basically the same as [decode](#decode), so just read that\n\n\n## Install From Source\n\n```bash\ngit clone https://github.com/fieryhenry/csb_util.git\ncd csb_util\npip install -e .\n```\n\n",
"bugtrack_url": null,
"license": "GNU General Public License v3 or later (GPLv3+)",
"summary": "Utility for encoding and decoding csb files",
"version": "0.1",
"project_urls": {
"Changelog": "https://github.com/fieryhenry/csb_util/blob/main/CHANGELOG.md",
"Homepage": "https://github.com/fieryhenry/csb_util",
"Issues": "https://github.com/fieryhenry/csb_util/issues",
"Repository": "https://github.com/fieryhenry/csb_util"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "782a04cc759c91255b0c587aaf6f6e5644ab21ab62918ab1d69ecdf221171161",
"md5": "25080c25c7a2cdb0bfd2dde5b6341214",
"sha256": "894a59b5054972e81b1d23b9d784db48b7c9d3b99df6cfb6f5b4ad8ec02fb98a"
},
"downloads": -1,
"filename": "csb_util-0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "25080c25c7a2cdb0bfd2dde5b6341214",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 18814,
"upload_time": "2024-08-07T11:45:21",
"upload_time_iso_8601": "2024-08-07T11:45:21.042889Z",
"url": "https://files.pythonhosted.org/packages/78/2a/04cc759c91255b0c587aaf6f6e5644ab21ab62918ab1d69ecdf221171161/csb_util-0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "275431a37994897695f78466b83d67302e7c09aab6d83e2168f9c1e894889b43",
"md5": "27b0154174d90cfe771f9220b212cb88",
"sha256": "f0f506c43aca1c151a8a0fae349750f20dd39e12c56319e6b0dcf9a2ec9be484"
},
"downloads": -1,
"filename": "csb_util-0.1.tar.gz",
"has_sig": false,
"md5_digest": "27b0154174d90cfe771f9220b212cb88",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 19464,
"upload_time": "2024-08-07T11:45:22",
"upload_time_iso_8601": "2024-08-07T11:45:22.929775Z",
"url": "https://files.pythonhosted.org/packages/27/54/31a37994897695f78466b83d67302e7c09aab6d83e2168f9c1e894889b43/csb_util-0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-07 11:45:22",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "fieryhenry",
"github_project": "csb_util",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "csb-util"
}