Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
146 commits
Select commit Hold shift + click to select a range
d245f2c
feat: oxidization
Deathemonic Mar 27, 2025
82e5132
feat: encyptions
Deathemonic Mar 28, 2025
d6983b1
feat: global support
Deathemonic Mar 28, 2025
2f4046b
docs: correction needed 😭
Deathemonic Mar 28, 2025
0fc54ae
feat: add catalog and memory management
Deathemonic Mar 28, 2025
f5c137d
docs: correction needed 😭
Deathemonic Mar 28, 2025
0322186
docs: correction needed 😭
Deathemonic Mar 28, 2025
92251c5
feat: enhance download management and file handling
Deathemonic Mar 29, 2025
5bc26cf
feat: enhance APK and catalog management
Deathemonic Mar 29, 2025
81ec0f4
feat: downloading aasets
Deathemonic Mar 29, 2025
447849e
feat: ui
Deathemonic Mar 31, 2025
354d9aa
fix: re enabled asset downloading
Deathemonic Mar 31, 2025
bc8212c
feat: progress bar
Deathemonic Apr 1, 2025
644c973
docs: correction needed 😭
Deathemonic Apr 1, 2025
0fe4933
feat: enhance download options and configurations
Deathemonic Apr 2, 2025
16c96f3
chore: test
Deathemonic Apr 3, 2025
2a37d93
chore: restore
Deathemonic Apr 3, 2025
daa3d45
chore: version bump
Deathemonic Apr 3, 2025
9bdc6ce
chore: organized imports
Deathemonic Apr 3, 2025
41da26b
release: 1.0.0
Deathemonic Apr 4, 2025
1322959
fix: tablebundle downloading index
Deathemonic Jun 13, 2025
7d8a08d
feat: expose apkparser
Deathemonic Jun 13, 2025
7fdead6
docs: readme update
Deathemonic Jun 15, 2025
f67fd4f
docs: correction needed 😭
Deathemonic Jun 15, 2025
b6eef97
prepare: restarted project
Deathemonic Jun 17, 2025
a8b2cb7
chore: added jetbrains stuff
Deathemonic Jun 17, 2025
1bfd2da
feat: json and file manager
Deathemonic Jun 17, 2025
153b72b
feat: logging
Deathemonic Jun 17, 2025
e3190b1
feat: downloading
Deathemonic Jun 17, 2025
1f1173c
feat: added apk extracting
Deathemonic Jun 19, 2025
f991590
chore: refactored extract and fetcher
Deathemonic Jun 19, 2025
9db59ee
feat: added global catalogs
Deathemonic Jun 20, 2025
2a9b38c
docs: readded banner
Deathemonic Jun 20, 2025
cc35a0d
feat: added japan catalog url
Deathemonic Jun 20, 2025
57ec65e
feat: added japan catalog fetching
Deathemonic Jun 21, 2025
d667078
feat: added japan catalog parsing
Deathemonic Jun 21, 2025
ff1ab4d
feat: restructured parser
Deathemonic Jun 22, 2025
f1191ba
feat: refactored resource handling
Deathemonic Jun 23, 2025
deedc8e
feat: added resource filtering to downloader
Deathemonic Jun 23, 2025
5491754
refactor: replace regex with lazy-regex and glob patterns
Deathemonic Jun 23, 2025
f6f12e5
feat: added resource category filtering to downloader
Deathemonic Jun 23, 2025
8deac4d
refactor: reorganized imports and exposed core structs/functions
Deathemonic Jun 23, 2025
b547b11
refactor: added unified error handling with custom traits
Deathemonic Jun 23, 2025
42e8a2a
refactor: reorganized modules
Deathemonic Jun 23, 2025
f661a9b
refactor: introduced smart pointers for shared ownership
Deathemonic Jun 25, 2025
a398a6e
feat: added feature flags for logging and error handling
Deathemonic Jun 25, 2025
4d93175
feat: added cli
Deathemonic Jun 25, 2025
405dcb8
feat: added verbose logging in cli
Deathemonic Jun 25, 2025
e282c75
feat: added verbose logging in cli
Deathemonic Jun 26, 2025
99ac6c1
chore: clippy fixes
Deathemonic Jun 26, 2025
94752ec
fix: removed unused client
Deathemonic Jun 26, 2025
dfb76f6
chore: preparations
Deathemonic Jun 26, 2025
6e89534
refactor: streamline downloader and metadata handling
Deathemonic Jun 27, 2025
38ecf8b
feat: added cli parsing
Deathemonic Jun 27, 2025
cb27504
feat: added more logging
Deathemonic Jun 27, 2025
8b87260
feat: added cli logic and update logic
Deathemonic Jun 27, 2025
d92b3d6
chore: added .idea to gitignore
Deathemonic Jun 27, 2025
be52144
fix: global downloading and parsing catalogs in the second run
Deathemonic Jun 27, 2025
92a09c3
fix: downloading
Deathemonic Jun 27, 2025
e8bc0f0
chore: remove .idea
Deathemonic Jun 27, 2025
1f44c67
fix: typo
Deathemonic Jun 27, 2025
8914bba
refactor: remove unused modules and update logging variables in downl…
Deathemonic Jun 27, 2025
0248491
refactor: function move
Deathemonic Jun 27, 2025
aa22a8d
feat: added build ci
Deathemonic Jun 27, 2025
ec68848
chore: add changelog for v2.0.0
Deathemonic Jun 27, 2025
aef585f
docs: update README and add usage and library documentation
Deathemonic Jun 27, 2025
b19e4ef
fix: correct directory check and ensure version validation during cat…
Deathemonic Jun 27, 2025
c7c5dcd
fix: apk not extracting
Deathemonic Jun 27, 2025
7b82d0c
docs: readme update
Deathemonic Jun 27, 2025
1ef5afc
docs: readme update
Deathemonic Jun 27, 2025
ed94092
docs: readme update
Deathemonic Jun 27, 2025
b49a860
merge: v2.0.0
Deathemonic Jun 27, 2025
94ccb34
fix: build ci
Deathemonic Jun 27, 2025
1a94488
fix: build ci
Deathemonic Jun 27, 2025
05b1171
fix: build ci
Deathemonic Jun 27, 2025
7028df0
fix: remove matrix build ci
Deathemonic Jun 27, 2025
5aefc34
chore: build ci
Deathemonic Jun 27, 2025
ec0e295
docs: releases
Deathemonic Jun 27, 2025
645d417
docs: fixed usage
Deathemonic Jun 27, 2025
61dae3f
fix: hide cli
Deathemonic Jun 27, 2025
e55427d
feat: opt in to remove logs
Deathemonic Jun 28, 2025
94be420
chore: exported paris module
Deathemonic Jun 28, 2025
b42a27c
chore: updated build ci
Deathemonic Jun 28, 2025
0605c88
docs: readme update
Deathemonic Jun 28, 2025
52b2671
fix: apk not updating propely
Deathemonic Jun 28, 2025
39c19d0
docs: readme and changelog update
Deathemonic Jun 28, 2025
b3838f1
chore: integrate baad-core and remove redundant helper modules
Deathemonic Jun 28, 2025
6655e8e
docs: new logo
Deathemonic Jun 28, 2025
7f90af1
feat: added global apk download
Deathemonic Jul 2, 2025
c824cdd
feat: added global apk extract
Deathemonic Jul 2, 2025
bb1f481
chore: bump version
Deathemonic Jul 2, 2025
0820b25
fix: extraction pattern
Deathemonic Jul 2, 2025
4431e7d
chore: bump version
Deathemonic Jul 2, 2025
a539f1a
fix: extract il2cpp wrong order path
Deathemonic Jul 2, 2025
e274d56
chore: update lock
Deathemonic Jul 2, 2025
9b84be1
fix: add global extract support
Deathemonic Jul 3, 2025
df7835b
docs: readme update
Deathemonic Jul 3, 2025
ffbc767
docs: readme update
Deathemonic Jul 7, 2025
4cb7fa9
feat: switch filemanager to fp instead of oop
Deathemonic Jul 14, 2025
3565e46
feat: added configurable filemanager
Deathemonic Jul 14, 2025
2dea04f
docs: readme update
Deathemonic Jul 14, 2025
9c00c98
fix: double warn
Deathemonic Jul 14, 2025
ec211ef
fix: build ci
Deathemonic Jul 18, 2025
26f5a2e
feat (2.2.0): changed how jp assetbundle downloads
Deathemonic Jul 23, 2025
0770d41
fix: build ci
Deathemonic Jul 23, 2025
f25a454
docs: clarify
Deathemonic Jul 27, 2025
ac53827
docs: fix download link
Deathemonic Aug 21, 2025
57e353b
feat: add ios and teen build support with performance optimizations
Deathemonic Sep 8, 2025
1509574
fix: removed unused imports
Deathemonic Sep 8, 2025
25cac0d
fix: catalog wont update when passing --ios or --teen
Deathemonic Sep 8, 2025
4c0df12
feat: added search through bundle name in jp
Deathemonic Sep 8, 2025
7366e49
docs: updated changelog
Deathemonic Sep 8, 2025
ad65fe1
feat (2.3.1): ios and teen support
Deathemonic Sep 8, 2025
4e22036
docs: readme update
Deathemonic Sep 8, 2025
d9b419f
feat (v2.4.0): new logging system
Deathemonic Sep 10, 2025
6abc767
docs: library update
Deathemonic Sep 10, 2025
c01fc35
docs: library update
Deathemonic Sep 10, 2025
3ff9948
fix: build ci
Deathemonic Sep 10, 2025
e5c01ba
fix (2.4.1): changed cache path to baad
Deathemonic Sep 11, 2025
3374587
fix: android build not initializing properly
Deathemonic Sep 21, 2025
2473a7b
feat: error properly
Deathemonic Sep 21, 2025
df75c9f
feat: direct file download and proxy support
Deathemonic Sep 24, 2025
01cdcdb
fix: not started not actually doing anything
Deathemonic Sep 24, 2025
8484edf
docs: update todo
Deathemonic Sep 24, 2025
8dce254
fix: remove global arguments
Deathemonic Sep 25, 2025
26ac5ba
chore: export baad_core
Deathemonic Sep 25, 2025
37b1024
fix: logging and downloading logic
Deathemonic Sep 25, 2025
a68d3a0
fix: downloader not actually downloading anything
Deathemonic Sep 26, 2025
dee3c50
feat: improve performance and code cleanup
Deathemonic Sep 26, 2025
5ada661
fix: global not downloading
Deathemonic Sep 26, 2025
732ba17
feat: improve performance
Deathemonic Sep 26, 2025
7173147
docs: changelog, faq, library, and readme update
Deathemonic Sep 26, 2025
6b40f2e
docs: fix indentation
Deathemonic Sep 26, 2025
2248876
chore: re exported baad_core macros
Deathemonic Sep 26, 2025
a62c0fb
fix: fix exports redirect
Deathemonic Sep 26, 2025
4d4acfc
fix (2.7.5): not downloading the rest of the files
Deathemonic Sep 27, 2025
9987a27
feat: improve downloading and color output
Deathemonic Sep 28, 2025
26ceb51
docs (2.8.0): library and changelog update
Deathemonic Sep 28, 2025
a67981a
chore: clean up
Deathemonic Sep 28, 2025
021ebfa
fix: catalog logic in cli
Deathemonic Sep 28, 2025
3d58fb1
docs: update changelogs
Deathemonic Sep 28, 2025
a5c4486
docs: readme update
Deathemonic Sep 28, 2025
3493abc
chore: bump baad_core
Deathemonic Sep 28, 2025
81e92b2
chore: bump baad_core
Deathemonic Oct 4, 2025
79c2ba0
refactor: improve performance
Deathemonic Oct 4, 2025
87b05c5
docs: readme and changelog update
Deathemonic Oct 4, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
197 changes: 197 additions & 0 deletions .github/docs/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,197 @@
# Changelogs

## 2.8.4

### Features

- Improve performance on catalog parsing side
- Improve color support checking

### API Changes

- From error will use transparent instead of `"{0}"`
- Added `Proxy` error

### Fixes

- Properly add proxy on version checking
- Cached contains ignore case filter method

## 2.8.2

### Fixes

- Fixed `needs_catalog_update` logic on cli
- Fixed color detection logic on config
- Fixed error messages duplications

## 2.8.0

### Features

- Improve performance on catalog parsing side

### API Changes

- Added `list_assets` helper to easily print or get the asset names
- Refactored codebase and remove redundant code

### Fixes

- Fix colors on certain terminals
- Added a color detecting logic on `baad_core` to prevent weird characters on `ansi` terminals (e.g command prompt)

## 2.7.5

### API Changes

- Fix `baad_core::utils::file` exports redirecting to `baad::utils::json`
- Export `debug, error, file, info, warn, trace`


### Fixes

- It will download the rest of the files
- Before it will just downloads the first found file not it will downloads the rest in JP


## 2.7.2

### Features

- Added direct file download
- Allows for downloading `.bundle` files directly without downloading the Packed zip files in JP
- This only works if you use `--filter` if not it will automatically download Packed zip instead
- Added proxy support
- Performance improvement
- Improve logging and errors

### API Changes

- Removed logging features
- Remove auto init of logging, now you need to `init_logging` or use `tracing_subscriber` to get logging
- `eyre` is not required for error handling
- Added `baad::helpers::error` to use for error handling
- Added `with_proxy` on `ApkFetcher`
- `ResourceDownloader` will now accepts `proxy`
- Replace Global version checking from `Google Play` to `Apkpure` instead
- Removed some redundant code

### Fixes

- Fixed android build can't even run
- Help just logs now it will use `clap` help instead
- Removed `uniffi` dependency when using as a library and compiling as bin

## v2.4.1

### Fixes

- Changed the cache path from `baad_core` to `baad`

## v2.4.0

### Features

- Updated logging
- Now uses `tracing` under the hood

### API Changes

- Now uses `eyre` for error handling
- Added logging configuration

### Fixes

- Remove the unnecessary panics

## v2.3.1

### Features

- Added `--ios` flag
- Downloads assets from iOS build instead of default Android build
- Added `--teen` flag
- Downloads teen-rated assets (Global only)
- Added way to do search for actual AssetBundle name in JP

### API Changes

- `ServerConfig::new()` now accepts optional `Platform` and `BuildType` parameters
- Added `ServerConfig::get_market_config()` method for Global server market details
- Updated path-related functions to use `&Path` instead of `&PathBuf` for better performance
- Added platform and build type configuration system
- New `Platform` enum (Android, iOS)
- New `BuildType` enum (Standard, Teen)

### Fixes

- Improve path loading performance

## 2.2.0

### Changes

- Due to Blue Archive Japan changed how AssetBundle downloads,
it now downloads via Patch Packs aka zip files
- Added the ability to download and extract Global apk
- Updated the File Manager
- You don't need to pass `FileManager::new()` anymore

### Fixes

- Updated extraction method
- Fixed error `Failed to decode response`
- Fixed `il2cpp` path when extracting

### Misc

- Bump BA-CY to `1.3.5`
- Remove redundant code

## v2.0.3

### Fixes

- Fix where the apk doesn't download if it's outdated
- Fix logs features not properly handled
- Removing logs in now opt in

### Misc

- Exposed paris module
- Updated build ci

## v2.0.0

### Features

- Rewrite the entire codebase
- This is a port of ba-ad and also a rewrite of ba-ad-rs
- Added library support
- You can now use baad in any language you want or even use it in your rust projects
- Added **Global** support
- Added `--clean` to quickly clean the cache
- Added `--filter` to filter out specific files
- Alternative to search mode
- Added `--filter-method`
- You can now filter using `glob`, `fuzzy`, or `exact`
- This is powered by `lazy-regex` and `nucleo` for performance
- Fully integrated with [`BA-CY`](https://github.com/Deathemonic/BA-CY)
- Replaced the old download manager with `trauma`
- Improved performance
- Improved logging

### Fixes

- Fixed APK will extract regardless you already did it
- Fixed catalog always fetches even though it's already been cached
- Fixed table bundles files are set to numbers instead of their actual name

### Misc

- Removed extract mode
- Removed search mode
- Removed custom catalog url
- Removed custom apk version
- Moved crypto to `BA-CY`
25 changes: 25 additions & 0 deletions .github/docs/FAQ.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
## FAQ

### Why the switch to rust?

- `BA-AD` is getting slow, and I want to learn rust, so I decided to make `BA-AD` in rust and might as well add new
stuff that I didn't add before like Global asset download.

### Why a library?

- This helps the process of porting `BA-AD` to another project.
Instead of rewriting or passing as an executable, this exposes functions so you can implement the functions easily.
This also helps when porting to another language because you can bind it with `Cdylib`

### Why no search UI?

- It just makes the project more complex.
The main goal is to make a simple CLI/Library to download Blue Archive assets.
The UI can be implemented on another project like `BA-AD-GUI` or `BA-AD-TUI`.

### Why no extracting?

- Extracting has been removed from `BA-AD` because It's challenging to maintain and makes the codebase messy.
So I opt in to make it into a separate thing.
But if you still want the old extracting functionality, you can
use [BA-AD-py-2.1.0](https://github.com/Deathemonic/BA-AD/archive/743f69db3964f654bba33b6ce8ebd214010fd53d.zip)
Binary file added .github/docs/GlobalUpdateProcess.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added .github/docs/JPUpdateProcess.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading