From 986a7c0fbc07df4b7092e610e011f95731d160ad Mon Sep 17 00:00:00 2001 From: ProjectRevoTPP Date: Sat, 12 Oct 2024 13:16:32 -0400 Subject: [PATCH] remove subfolder usage in asset extraction step --- tools/extract_assets.sh | 896 ++++++++++++++++++++-------------------- tools/unpack_asset.py | 5 +- 2 files changed, 451 insertions(+), 450 deletions(-) diff --git a/tools/extract_assets.sh b/tools/extract_assets.sh index 551c1c52..cd424ebc 100755 --- a/tools/extract_assets.sh +++ b/tools/extract_assets.sh @@ -117,458 +117,458 @@ tools/unpack_asset.py assets/us/pokemon_models.bin # into recursive calls. All of the files within an asset bin SHOULD be the # same type, but it in theory it isnt guaranteed to be. Does the game ensure # that? If so, we should be able to safely roll these up. -tools/decompress_persszp.py assets/us/n64_logo_texture/0/file.bin -tools/decompress_persszp.py assets/us/fonts/0/file.bin -tools/decompress_persszp.py assets/us/fonts/1/file.bin -tools/decompress_persszp.py assets/us/fonts/2/file.bin -tools/decompress_persszp.py assets/us/fonts/3/file.bin -tools/decompress_persszp.py assets/us/fonts/4/file.bin -tools/decompress_persszp.py assets/us/fonts/5/file.bin -tools/decompress_persszp.py assets/us/battle_headers/0/file.bin -tools/decompress_persszp.py assets/us/battle_headers/1/file.bin -tools/decompress_persszp.py assets/us/battle_headers/2/file.bin -tools/decompress_persszp.py assets/us/battle_headers/3/file.bin -tools/decompress_persszp.py assets/us/battle_headers/4/file.bin -tools/decompress_persszp.py assets/us/battle_headers/5/file.bin -tools/decompress_persszp.py assets/us/battle_headers/6/file.bin -tools/decompress_persszp.py assets/us/battle_headers/7/file.bin -tools/decompress_persszp.py assets/us/battle_headers/8/file.bin -tools/decompress_persszp.py assets/us/battle_headers/9/file.bin -tools/decompress_persszp.py assets/us/battle_headers/10/file.bin -tools/decompress_persszp.py assets/us/battle_headers/11/file.bin -tools/decompress_persszp.py assets/us/battle_headers/12/file.bin -tools/decompress_persszp.py assets/us/common_menu0_ui/0/file.bin -tools/decompress_persszp.py assets/us/common_menu1_ui/0/file.bin -tools/decompress_persszp.py assets/us/common_menu2_ui/0/file.bin -tools/decompress_persszp.py assets/us/area_select_ui/0/file.bin -tools/decompress_persszp.py assets/us/menu_select_ui/0/file.bin -tools/decompress_persszp.py assets/us/stadium_select_ui/0/file.bin -tools/decompress_persszp.py assets/us/title_ui/0/file.bin -tools/decompress_persszp.py assets/us/52F6D0/0/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/0/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/1/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/2/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/3/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/4/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/5/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/6/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/7/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/8/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/9/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/10/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/11/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/12/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/13/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/14/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/15/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/16/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/17/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/18/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/19/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/20/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/21/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/22/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/23/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/24/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/25/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/26/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/27/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/28/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/29/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/30/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/31/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/32/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/33/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/34/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/35/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/36/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/37/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/38/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/39/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/40/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/41/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/42/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/43/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/44/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/45/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/46/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/47/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/48/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/49/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/50/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/51/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/52/file.bin -tools/decompress_persszp.py assets/us/battle_portraits/53/file.bin -tools/decompress_persszp.py assets/us/stadium_models/0/file.bin -tools/decompress_persszp.py assets/us/stadium_models/1/file.bin -tools/decompress_persszp.py assets/us/stadium_models/2/file.bin -tools/decompress_persszp.py assets/us/stadium_models/3/file.bin -tools/decompress_persszp.py assets/us/stadium_models/4/file.bin -tools/decompress_persszp.py assets/us/stadium_models/5/file.bin -tools/decompress_persszp.py assets/us/stadium_models/6/file.bin -tools/decompress_persszp.py assets/us/stadium_models/7/file.bin -tools/decompress_persszp.py assets/us/stadium_models/8/file.bin -tools/decompress_persszp.py assets/us/stadium_models/9/file.bin -tools/decompress_persszp.py assets/us/stadium_models/10/file.bin -tools/decompress_persszp.py assets/us/stadium_models/11/file.bin -tools/decompress_persszp.py assets/us/stadium_models/12/file.bin -tools/decompress_persszp.py assets/us/stadium_models/13/file.bin -tools/decompress_persszp.py assets/us/stadium_models/14/file.bin -tools/decompress_persszp.py assets/us/stadium_models/15/file.bin -tools/decompress_persszp.py assets/us/stadium_models/16/file.bin -tools/decompress_persszp.py assets/us/stadium_models/17/file.bin -tools/decompress_persszp.py assets/us/5C7A70/0/file.bin -tools/decompress_persszp.py assets/us/pokedex_area_model/0/file.bin -tools/decompress_persszp.py assets/us/sushi_go_round/0/file.bin -tools/decompress_persszp.py assets/us/order_select_ui/0/file.bin -tools/decompress_persszp.py assets/us/cup_ball_select_ui/0/file.bin -tools/decompress_persszp.py assets/us/trade_select_ui/0/file.bin -tools/decompress_persszp.py assets/us/kids_club_select_ui/0/file.bin -tools/decompress_persszp.py assets/us/gym_leader_castle_clear_gfx/0/file.bin -tools/decompress_persszp.py assets/us/rental_rules_ui/0/file.bin -tools/decompress_persszp.py assets/us/sushi_go_round_sprites/0/file.bin -tools/decompress_persszp.py assets/us/kids_club_game_ui/0/file.bin -tools/decompress_persszp.py assets/us/gallery_ui/0/file.bin -tools/decompress_persszp.py assets/us/album_ui/0/file.bin -tools/decompress_persszp.py assets/us/6A9750/0/file.bin -tools/decompress_persszp.py assets/us/snap_select_ui/0/file.bin -tools/decompress_persszp.py assets/us/cup_clear_ui/0/file.bin -tools/decompress_persszp.py assets/us/gb_pak_select_ui/0/file.bin -tools/decompress_persszp.py assets/us/victory_palace_plate_text/0/file.bin -tools/decompress_persszp.py assets/us/run_rattata_run_flag_gfx/0/file.bin -tools/decompress_persszp.py assets/us/kanto_gb_map/0/file.bin -tools/decompress_persszp.py assets/us/6E2F90/0/file.bin -tools/decompress_persszp.py assets/us/battle_ui/0/file.bin -tools/decompress_persszp.py assets/us/transfer_pak_error_ui/0/file.bin -tools/decompress_persszp.py assets/us/6EB340/0/file.bin -tools/decompress_persszp.py assets/us/6EB340/1/file.bin -tools/decompress_persszp.py assets/us/6EB340/2/file.bin -tools/decompress_persszp.py assets/us/6EB340/3/file.bin -tools/decompress_persszp.py assets/us/6EC4D0/0/file.bin -tools/decompress_persszp.py assets/us/badge_ui/0/file.bin -tools/decompress_persszp.py assets/us/gym_leader_castle_ui/0/file.bin -tools/decompress_persszp.py assets/us/798CD0/0/file.bin -tools/decompress_persszp.py assets/us/snap_mode_ui/0/file.bin -tools/decompress_persszp.py assets/us/copyright/0/file.bin +tools/decompress_persszp.py assets/us/n64_logo_texture/0.bin +tools/decompress_persszp.py assets/us/fonts/0.bin +tools/decompress_persszp.py assets/us/fonts/1.bin +tools/decompress_persszp.py assets/us/fonts/2.bin +tools/decompress_persszp.py assets/us/fonts/3.bin +tools/decompress_persszp.py assets/us/fonts/4.bin +tools/decompress_persszp.py assets/us/fonts/5.bin +tools/decompress_persszp.py assets/us/battle_headers/0.bin +tools/decompress_persszp.py assets/us/battle_headers/1.bin +tools/decompress_persszp.py assets/us/battle_headers/2.bin +tools/decompress_persszp.py assets/us/battle_headers/3.bin +tools/decompress_persszp.py assets/us/battle_headers/4.bin +tools/decompress_persszp.py assets/us/battle_headers/5.bin +tools/decompress_persszp.py assets/us/battle_headers/6.bin +tools/decompress_persszp.py assets/us/battle_headers/7.bin +tools/decompress_persszp.py assets/us/battle_headers/8.bin +tools/decompress_persszp.py assets/us/battle_headers/9.bin +tools/decompress_persszp.py assets/us/battle_headers/10.bin +tools/decompress_persszp.py assets/us/battle_headers/11.bin +tools/decompress_persszp.py assets/us/battle_headers/12.bin +tools/decompress_persszp.py assets/us/common_menu0_ui/0.bin +tools/decompress_persszp.py assets/us/common_menu1_ui/0.bin +tools/decompress_persszp.py assets/us/common_menu2_ui/0.bin +tools/decompress_persszp.py assets/us/area_select_ui/0.bin +tools/decompress_persszp.py assets/us/menu_select_ui/0.bin +tools/decompress_persszp.py assets/us/stadium_select_ui/0.bin +tools/decompress_persszp.py assets/us/title_ui/0.bin +tools/decompress_persszp.py assets/us/52F6D0/0.bin +tools/decompress_persszp.py assets/us/battle_portraits/0.bin +tools/decompress_persszp.py assets/us/battle_portraits/1.bin +tools/decompress_persszp.py assets/us/battle_portraits/2.bin +tools/decompress_persszp.py assets/us/battle_portraits/3.bin +tools/decompress_persszp.py assets/us/battle_portraits/4.bin +tools/decompress_persszp.py assets/us/battle_portraits/5.bin +tools/decompress_persszp.py assets/us/battle_portraits/6.bin +tools/decompress_persszp.py assets/us/battle_portraits/7.bin +tools/decompress_persszp.py assets/us/battle_portraits/8.bin +tools/decompress_persszp.py assets/us/battle_portraits/9.bin +tools/decompress_persszp.py assets/us/battle_portraits/10.bin +tools/decompress_persszp.py assets/us/battle_portraits/11.bin +tools/decompress_persszp.py assets/us/battle_portraits/12.bin +tools/decompress_persszp.py assets/us/battle_portraits/13.bin +tools/decompress_persszp.py assets/us/battle_portraits/14.bin +tools/decompress_persszp.py assets/us/battle_portraits/15.bin +tools/decompress_persszp.py assets/us/battle_portraits/16.bin +tools/decompress_persszp.py assets/us/battle_portraits/17.bin +tools/decompress_persszp.py assets/us/battle_portraits/18.bin +tools/decompress_persszp.py assets/us/battle_portraits/19.bin +tools/decompress_persszp.py assets/us/battle_portraits/20.bin +tools/decompress_persszp.py assets/us/battle_portraits/21.bin +tools/decompress_persszp.py assets/us/battle_portraits/22.bin +tools/decompress_persszp.py assets/us/battle_portraits/23.bin +tools/decompress_persszp.py assets/us/battle_portraits/24.bin +tools/decompress_persszp.py assets/us/battle_portraits/25.bin +tools/decompress_persszp.py assets/us/battle_portraits/26.bin +tools/decompress_persszp.py assets/us/battle_portraits/27.bin +tools/decompress_persszp.py assets/us/battle_portraits/28.bin +tools/decompress_persszp.py assets/us/battle_portraits/29.bin +tools/decompress_persszp.py assets/us/battle_portraits/30.bin +tools/decompress_persszp.py assets/us/battle_portraits/31.bin +tools/decompress_persszp.py assets/us/battle_portraits/32.bin +tools/decompress_persszp.py assets/us/battle_portraits/33.bin +tools/decompress_persszp.py assets/us/battle_portraits/34.bin +tools/decompress_persszp.py assets/us/battle_portraits/35.bin +tools/decompress_persszp.py assets/us/battle_portraits/36.bin +tools/decompress_persszp.py assets/us/battle_portraits/37.bin +tools/decompress_persszp.py assets/us/battle_portraits/38.bin +tools/decompress_persszp.py assets/us/battle_portraits/39.bin +tools/decompress_persszp.py assets/us/battle_portraits/40.bin +tools/decompress_persszp.py assets/us/battle_portraits/41.bin +tools/decompress_persszp.py assets/us/battle_portraits/42.bin +tools/decompress_persszp.py assets/us/battle_portraits/43.bin +tools/decompress_persszp.py assets/us/battle_portraits/44.bin +tools/decompress_persszp.py assets/us/battle_portraits/45.bin +tools/decompress_persszp.py assets/us/battle_portraits/46.bin +tools/decompress_persszp.py assets/us/battle_portraits/47.bin +tools/decompress_persszp.py assets/us/battle_portraits/48.bin +tools/decompress_persszp.py assets/us/battle_portraits/49.bin +tools/decompress_persszp.py assets/us/battle_portraits/50.bin +tools/decompress_persszp.py assets/us/battle_portraits/51.bin +tools/decompress_persszp.py assets/us/battle_portraits/52.bin +tools/decompress_persszp.py assets/us/battle_portraits/53.bin +tools/decompress_persszp.py assets/us/stadium_models/0.bin +tools/decompress_persszp.py assets/us/stadium_models/1.bin +tools/decompress_persszp.py assets/us/stadium_models/2.bin +tools/decompress_persszp.py assets/us/stadium_models/3.bin +tools/decompress_persszp.py assets/us/stadium_models/4.bin +tools/decompress_persszp.py assets/us/stadium_models/5.bin +tools/decompress_persszp.py assets/us/stadium_models/6.bin +tools/decompress_persszp.py assets/us/stadium_models/7.bin +tools/decompress_persszp.py assets/us/stadium_models/8.bin +tools/decompress_persszp.py assets/us/stadium_models/9.bin +tools/decompress_persszp.py assets/us/stadium_models/10.bin +tools/decompress_persszp.py assets/us/stadium_models/11.bin +tools/decompress_persszp.py assets/us/stadium_models/12.bin +tools/decompress_persszp.py assets/us/stadium_models/13.bin +tools/decompress_persszp.py assets/us/stadium_models/14.bin +tools/decompress_persszp.py assets/us/stadium_models/15.bin +tools/decompress_persszp.py assets/us/stadium_models/16.bin +tools/decompress_persszp.py assets/us/stadium_models/17.bin +tools/decompress_persszp.py assets/us/5C7A70/0.bin +tools/decompress_persszp.py assets/us/pokedex_area_model/0.bin +tools/decompress_persszp.py assets/us/sushi_go_round/0.bin +tools/decompress_persszp.py assets/us/order_select_ui/0.bin +tools/decompress_persszp.py assets/us/cup_ball_select_ui/0.bin +tools/decompress_persszp.py assets/us/trade_select_ui/0.bin +tools/decompress_persszp.py assets/us/kids_club_select_ui/0.bin +tools/decompress_persszp.py assets/us/gym_leader_castle_clear_gfx/0.bin +tools/decompress_persszp.py assets/us/rental_rules_ui/0.bin +tools/decompress_persszp.py assets/us/sushi_go_round_sprites/0.bin +tools/decompress_persszp.py assets/us/kids_club_game_ui/0.bin +tools/decompress_persszp.py assets/us/gallery_ui/0.bin +tools/decompress_persszp.py assets/us/album_ui/0.bin +tools/decompress_persszp.py assets/us/6A9750/0.bin +tools/decompress_persszp.py assets/us/snap_select_ui/0.bin +tools/decompress_persszp.py assets/us/cup_clear_ui/0.bin +tools/decompress_persszp.py assets/us/gb_pak_select_ui/0.bin +tools/decompress_persszp.py assets/us/victory_palace_plate_text/0.bin +tools/decompress_persszp.py assets/us/run_rattata_run_flag_gfx/0.bin +tools/decompress_persszp.py assets/us/kanto_gb_map/0.bin +tools/decompress_persszp.py assets/us/6E2F90/0.bin +tools/decompress_persszp.py assets/us/battle_ui/0.bin +tools/decompress_persszp.py assets/us/transfer_pak_error_ui/0.bin +tools/decompress_persszp.py assets/us/6EB340/0.bin +tools/decompress_persszp.py assets/us/6EB340/1.bin +tools/decompress_persszp.py assets/us/6EB340/2.bin +tools/decompress_persszp.py assets/us/6EB340/3.bin +tools/decompress_persszp.py assets/us/6EC4D0/0.bin +tools/decompress_persszp.py assets/us/badge_ui/0.bin +tools/decompress_persszp.py assets/us/gym_leader_castle_ui/0.bin +tools/decompress_persszp.py assets/us/798CD0/0.bin +tools/decompress_persszp.py assets/us/snap_mode_ui/0.bin +tools/decompress_persszp.py assets/us/copyright/0.bin # Decompress PERS-SZP files in late asset(s). -tools/decompress_persszp.py assets/us/8CC000/0/file.bin -tools/decompress_persszp.py assets/us/8CC000/1/file.bin -tools/decompress_persszp.py assets/us/8CC000/2/file.bin -tools/decompress_persszp.py assets/us/8CC000/3/file.bin -tools/decompress_persszp.py assets/us/8CC000/4/file.bin -tools/decompress_persszp.py assets/us/8CC000/5/file.bin -tools/decompress_persszp.py assets/us/8CC000/6/file.bin -tools/decompress_persszp.py assets/us/8CC000/7/file.bin -tools/decompress_persszp.py assets/us/8CC000/8/file.bin -tools/decompress_persszp.py assets/us/8CC000/9/file.bin -tools/decompress_persszp.py assets/us/8CC000/10/file.bin -tools/decompress_persszp.py assets/us/8CC000/11/file.bin -tools/decompress_persszp.py assets/us/8CC000/12/file.bin -tools/decompress_persszp.py assets/us/8CC000/13/file.bin -tools/decompress_persszp.py assets/us/8CC000/14/file.bin -tools/decompress_persszp.py assets/us/8CC000/15/file.bin -tools/decompress_persszp.py assets/us/8CC000/16/file.bin -tools/decompress_persszp.py assets/us/8CC000/17/file.bin -tools/decompress_persszp.py assets/us/8CC000/18/file.bin -tools/decompress_persszp.py assets/us/8CC000/19/file.bin -tools/decompress_persszp.py assets/us/8CC000/20/file.bin -tools/decompress_persszp.py assets/us/8CC000/21/file.bin -tools/decompress_persszp.py assets/us/8CC000/22/file.bin -tools/decompress_persszp.py assets/us/8CC000/23/file.bin -tools/decompress_persszp.py assets/us/8CC000/24/file.bin -tools/decompress_persszp.py assets/us/8CC000/25/file.bin -tools/decompress_persszp.py assets/us/8CC000/26/file.bin -tools/decompress_persszp.py assets/us/8CC000/27/file.bin -tools/decompress_persszp.py assets/us/8CC000/28/file.bin -tools/decompress_persszp.py assets/us/8CC000/29/file.bin -tools/decompress_persszp.py assets/us/8CC000/30/file.bin -tools/decompress_persszp.py assets/us/8CC000/31/file.bin -tools/decompress_persszp.py assets/us/8CC000/32/file.bin -tools/decompress_persszp.py assets/us/8CC000/33/file.bin -tools/decompress_persszp.py assets/us/8CC000/34/file.bin -tools/decompress_persszp.py assets/us/8CC000/35/file.bin -tools/decompress_persszp.py assets/us/8CC000/36/file.bin -tools/decompress_persszp.py assets/us/8CC000/37/file.bin -tools/decompress_persszp.py assets/us/8CC000/38/file.bin -tools/decompress_persszp.py assets/us/8CC000/39/file.bin -tools/decompress_persszp.py assets/us/8CC000/40/file.bin -tools/decompress_persszp.py assets/us/8CC000/41/file.bin -tools/decompress_persszp.py assets/us/8CC000/42/file.bin -tools/decompress_persszp.py assets/us/8CC000/43/file.bin -tools/decompress_persszp.py assets/us/8CC000/44/file.bin -tools/decompress_persszp.py assets/us/8CC000/45/file.bin -tools/decompress_persszp.py assets/us/8CC000/46/file.bin -tools/decompress_persszp.py assets/us/8CC000/47/file.bin -tools/decompress_persszp.py assets/us/8CC000/48/file.bin -tools/decompress_persszp.py assets/us/8CC000/49/file.bin -tools/decompress_persszp.py assets/us/8CC000/50/file.bin -tools/decompress_persszp.py assets/us/8CC000/51/file.bin -tools/decompress_persszp.py assets/us/8CC000/52/file.bin -tools/decompress_persszp.py assets/us/8CC000/53/file.bin -tools/decompress_persszp.py assets/us/8CC000/54/file.bin -tools/decompress_persszp.py assets/us/8CC000/55/file.bin -tools/decompress_persszp.py assets/us/8CC000/56/file.bin -tools/decompress_persszp.py assets/us/8CC000/57/file.bin -tools/decompress_persszp.py assets/us/8CC000/58/file.bin -tools/decompress_persszp.py assets/us/8CC000/59/file.bin -tools/decompress_persszp.py assets/us/8CC000/60/file.bin -tools/decompress_persszp.py assets/us/8CC000/61/file.bin -tools/decompress_persszp.py assets/us/8CC000/62/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/0/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/1/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/2/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/3/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/4/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/5/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/6/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/7/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/8/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/9/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/10/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/11/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/12/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/13/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/14/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/15/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/16/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/17/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/18/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/19/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/20/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/21/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/22/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/23/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/24/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/25/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/26/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/27/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/28/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/29/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/30/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/31/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/32/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/33/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/34/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/35/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/36/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/37/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/38/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/39/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/40/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/41/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/42/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/43/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/44/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/45/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/46/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/47/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/48/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/49/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/50/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/51/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/52/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/53/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/54/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/55/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/56/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/57/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/58/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/59/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/60/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/61/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/62/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/63/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/64/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/65/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/66/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/67/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/68/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/69/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/70/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/71/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/72/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/73/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/74/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/75/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/76/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/77/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/78/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/79/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/80/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/81/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/82/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/83/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/84/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/85/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/86/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/87/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/88/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/89/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/90/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/91/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/92/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/93/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/94/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/95/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/96/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/97/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/98/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/99/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/100/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/101/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/102/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/103/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/104/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/105/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/106/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/107/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/108/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/109/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/110/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/111/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/112/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/113/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/114/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/115/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/116/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/117/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/118/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/119/file.bin -#tools/decompress_persszp.py assets/us/920000/120/file.bin this file is just randomly not compressed. Thanks for breaking the uniform asset pattern, HAL. -tools/decompress_persszp.py assets/us/pokemon_models/121/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/122/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/123/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/124/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/125/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/126/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/127/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/128/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/129/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/130/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/131/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/132/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/133/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/134/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/135/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/136/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/137/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/138/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/139/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/140/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/141/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/142/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/143/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/144/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/145/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/146/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/147/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/148/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/149/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/150/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/151/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/152/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/153/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/154/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/155/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/156/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/157/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/158/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/159/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/160/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/161/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/162/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/163/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/164/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/165/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/166/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/167/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/168/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/169/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/170/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/171/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/172/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/173/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/174/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/175/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/176/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/177/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/178/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/179/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/180/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/181/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/182/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/183/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/184/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/185/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/186/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/187/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/188/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/189/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/190/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/191/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/192/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/193/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/194/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/195/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/196/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/197/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/198/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/199/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/200/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/201/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/202/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/203/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/204/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/205/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/206/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/207/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/208/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/209/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/210/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/211/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/212/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/213/file.bin -tools/decompress_persszp.py assets/us/pokemon_models/214/file.bin +tools/decompress_persszp.py assets/us/8CC000/0.bin +tools/decompress_persszp.py assets/us/8CC000/1.bin +tools/decompress_persszp.py assets/us/8CC000/2.bin +tools/decompress_persszp.py assets/us/8CC000/3.bin +tools/decompress_persszp.py assets/us/8CC000/4.bin +tools/decompress_persszp.py assets/us/8CC000/5.bin +tools/decompress_persszp.py assets/us/8CC000/6.bin +tools/decompress_persszp.py assets/us/8CC000/7.bin +tools/decompress_persszp.py assets/us/8CC000/8.bin +tools/decompress_persszp.py assets/us/8CC000/9.bin +tools/decompress_persszp.py assets/us/8CC000/10.bin +tools/decompress_persszp.py assets/us/8CC000/11.bin +tools/decompress_persszp.py assets/us/8CC000/12.bin +tools/decompress_persszp.py assets/us/8CC000/13.bin +tools/decompress_persszp.py assets/us/8CC000/14.bin +tools/decompress_persszp.py assets/us/8CC000/15.bin +tools/decompress_persszp.py assets/us/8CC000/16.bin +tools/decompress_persszp.py assets/us/8CC000/17.bin +tools/decompress_persszp.py assets/us/8CC000/18.bin +tools/decompress_persszp.py assets/us/8CC000/19.bin +tools/decompress_persszp.py assets/us/8CC000/20.bin +tools/decompress_persszp.py assets/us/8CC000/21.bin +tools/decompress_persszp.py assets/us/8CC000/22.bin +tools/decompress_persszp.py assets/us/8CC000/23.bin +tools/decompress_persszp.py assets/us/8CC000/24.bin +tools/decompress_persszp.py assets/us/8CC000/25.bin +tools/decompress_persszp.py assets/us/8CC000/26.bin +tools/decompress_persszp.py assets/us/8CC000/27.bin +tools/decompress_persszp.py assets/us/8CC000/28.bin +tools/decompress_persszp.py assets/us/8CC000/29.bin +tools/decompress_persszp.py assets/us/8CC000/30.bin +tools/decompress_persszp.py assets/us/8CC000/31.bin +tools/decompress_persszp.py assets/us/8CC000/32.bin +tools/decompress_persszp.py assets/us/8CC000/33.bin +tools/decompress_persszp.py assets/us/8CC000/34.bin +tools/decompress_persszp.py assets/us/8CC000/35.bin +tools/decompress_persszp.py assets/us/8CC000/36.bin +tools/decompress_persszp.py assets/us/8CC000/37.bin +tools/decompress_persszp.py assets/us/8CC000/38.bin +tools/decompress_persszp.py assets/us/8CC000/39.bin +tools/decompress_persszp.py assets/us/8CC000/40.bin +tools/decompress_persszp.py assets/us/8CC000/41.bin +tools/decompress_persszp.py assets/us/8CC000/42.bin +tools/decompress_persszp.py assets/us/8CC000/43.bin +tools/decompress_persszp.py assets/us/8CC000/44.bin +tools/decompress_persszp.py assets/us/8CC000/45.bin +tools/decompress_persszp.py assets/us/8CC000/46.bin +tools/decompress_persszp.py assets/us/8CC000/47.bin +tools/decompress_persszp.py assets/us/8CC000/48.bin +tools/decompress_persszp.py assets/us/8CC000/49.bin +tools/decompress_persszp.py assets/us/8CC000/50.bin +tools/decompress_persszp.py assets/us/8CC000/51.bin +tools/decompress_persszp.py assets/us/8CC000/52.bin +tools/decompress_persszp.py assets/us/8CC000/53.bin +tools/decompress_persszp.py assets/us/8CC000/54.bin +tools/decompress_persszp.py assets/us/8CC000/55.bin +tools/decompress_persszp.py assets/us/8CC000/56.bin +tools/decompress_persszp.py assets/us/8CC000/57.bin +tools/decompress_persszp.py assets/us/8CC000/58.bin +tools/decompress_persszp.py assets/us/8CC000/59.bin +tools/decompress_persszp.py assets/us/8CC000/60.bin +tools/decompress_persszp.py assets/us/8CC000/61.bin +tools/decompress_persszp.py assets/us/8CC000/62.bin +tools/decompress_persszp.py assets/us/pokemon_models/0.bin +tools/decompress_persszp.py assets/us/pokemon_models/1.bin +tools/decompress_persszp.py assets/us/pokemon_models/2.bin +tools/decompress_persszp.py assets/us/pokemon_models/3.bin +tools/decompress_persszp.py assets/us/pokemon_models/4.bin +tools/decompress_persszp.py assets/us/pokemon_models/5.bin +tools/decompress_persszp.py assets/us/pokemon_models/6.bin +tools/decompress_persszp.py assets/us/pokemon_models/7.bin +tools/decompress_persszp.py assets/us/pokemon_models/8.bin +tools/decompress_persszp.py assets/us/pokemon_models/9.bin +tools/decompress_persszp.py assets/us/pokemon_models/10.bin +tools/decompress_persszp.py assets/us/pokemon_models/11.bin +tools/decompress_persszp.py assets/us/pokemon_models/12.bin +tools/decompress_persszp.py assets/us/pokemon_models/13.bin +tools/decompress_persszp.py assets/us/pokemon_models/14.bin +tools/decompress_persszp.py assets/us/pokemon_models/15.bin +tools/decompress_persszp.py assets/us/pokemon_models/16.bin +tools/decompress_persszp.py assets/us/pokemon_models/17.bin +tools/decompress_persszp.py assets/us/pokemon_models/18.bin +tools/decompress_persszp.py assets/us/pokemon_models/19.bin +tools/decompress_persszp.py assets/us/pokemon_models/20.bin +tools/decompress_persszp.py assets/us/pokemon_models/21.bin +tools/decompress_persszp.py assets/us/pokemon_models/22.bin +tools/decompress_persszp.py assets/us/pokemon_models/23.bin +tools/decompress_persszp.py assets/us/pokemon_models/24.bin +tools/decompress_persszp.py assets/us/pokemon_models/25.bin +tools/decompress_persszp.py assets/us/pokemon_models/26.bin +tools/decompress_persszp.py assets/us/pokemon_models/27.bin +tools/decompress_persszp.py assets/us/pokemon_models/28.bin +tools/decompress_persszp.py assets/us/pokemon_models/29.bin +tools/decompress_persszp.py assets/us/pokemon_models/30.bin +tools/decompress_persszp.py assets/us/pokemon_models/31.bin +tools/decompress_persszp.py assets/us/pokemon_models/32.bin +tools/decompress_persszp.py assets/us/pokemon_models/33.bin +tools/decompress_persszp.py assets/us/pokemon_models/34.bin +tools/decompress_persszp.py assets/us/pokemon_models/35.bin +tools/decompress_persszp.py assets/us/pokemon_models/36.bin +tools/decompress_persszp.py assets/us/pokemon_models/37.bin +tools/decompress_persszp.py assets/us/pokemon_models/38.bin +tools/decompress_persszp.py assets/us/pokemon_models/39.bin +tools/decompress_persszp.py assets/us/pokemon_models/40.bin +tools/decompress_persszp.py assets/us/pokemon_models/41.bin +tools/decompress_persszp.py assets/us/pokemon_models/42.bin +tools/decompress_persszp.py assets/us/pokemon_models/43.bin +tools/decompress_persszp.py assets/us/pokemon_models/44.bin +tools/decompress_persszp.py assets/us/pokemon_models/45.bin +tools/decompress_persszp.py assets/us/pokemon_models/46.bin +tools/decompress_persszp.py assets/us/pokemon_models/47.bin +tools/decompress_persszp.py assets/us/pokemon_models/48.bin +tools/decompress_persszp.py assets/us/pokemon_models/49.bin +tools/decompress_persszp.py assets/us/pokemon_models/50.bin +tools/decompress_persszp.py assets/us/pokemon_models/51.bin +tools/decompress_persszp.py assets/us/pokemon_models/52.bin +tools/decompress_persszp.py assets/us/pokemon_models/53.bin +tools/decompress_persszp.py assets/us/pokemon_models/54.bin +tools/decompress_persszp.py assets/us/pokemon_models/55.bin +tools/decompress_persszp.py assets/us/pokemon_models/56.bin +tools/decompress_persszp.py assets/us/pokemon_models/57.bin +tools/decompress_persszp.py assets/us/pokemon_models/58.bin +tools/decompress_persszp.py assets/us/pokemon_models/59.bin +tools/decompress_persszp.py assets/us/pokemon_models/60.bin +tools/decompress_persszp.py assets/us/pokemon_models/61.bin +tools/decompress_persszp.py assets/us/pokemon_models/62.bin +tools/decompress_persszp.py assets/us/pokemon_models/63.bin +tools/decompress_persszp.py assets/us/pokemon_models/64.bin +tools/decompress_persszp.py assets/us/pokemon_models/65.bin +tools/decompress_persszp.py assets/us/pokemon_models/66.bin +tools/decompress_persszp.py assets/us/pokemon_models/67.bin +tools/decompress_persszp.py assets/us/pokemon_models/68.bin +tools/decompress_persszp.py assets/us/pokemon_models/69.bin +tools/decompress_persszp.py assets/us/pokemon_models/70.bin +tools/decompress_persszp.py assets/us/pokemon_models/71.bin +tools/decompress_persszp.py assets/us/pokemon_models/72.bin +tools/decompress_persszp.py assets/us/pokemon_models/73.bin +tools/decompress_persszp.py assets/us/pokemon_models/74.bin +tools/decompress_persszp.py assets/us/pokemon_models/75.bin +tools/decompress_persszp.py assets/us/pokemon_models/76.bin +tools/decompress_persszp.py assets/us/pokemon_models/77.bin +tools/decompress_persszp.py assets/us/pokemon_models/78.bin +tools/decompress_persszp.py assets/us/pokemon_models/79.bin +tools/decompress_persszp.py assets/us/pokemon_models/80.bin +tools/decompress_persszp.py assets/us/pokemon_models/81.bin +tools/decompress_persszp.py assets/us/pokemon_models/82.bin +tools/decompress_persszp.py assets/us/pokemon_models/83.bin +tools/decompress_persszp.py assets/us/pokemon_models/84.bin +tools/decompress_persszp.py assets/us/pokemon_models/85.bin +tools/decompress_persszp.py assets/us/pokemon_models/86.bin +tools/decompress_persszp.py assets/us/pokemon_models/87.bin +tools/decompress_persszp.py assets/us/pokemon_models/88.bin +tools/decompress_persszp.py assets/us/pokemon_models/89.bin +tools/decompress_persszp.py assets/us/pokemon_models/90.bin +tools/decompress_persszp.py assets/us/pokemon_models/91.bin +tools/decompress_persszp.py assets/us/pokemon_models/92.bin +tools/decompress_persszp.py assets/us/pokemon_models/93.bin +tools/decompress_persszp.py assets/us/pokemon_models/94.bin +tools/decompress_persszp.py assets/us/pokemon_models/95.bin +tools/decompress_persszp.py assets/us/pokemon_models/96.bin +tools/decompress_persszp.py assets/us/pokemon_models/97.bin +tools/decompress_persszp.py assets/us/pokemon_models/98.bin +tools/decompress_persszp.py assets/us/pokemon_models/99.bin +tools/decompress_persszp.py assets/us/pokemon_models/100.bin +tools/decompress_persszp.py assets/us/pokemon_models/101.bin +tools/decompress_persszp.py assets/us/pokemon_models/102.bin +tools/decompress_persszp.py assets/us/pokemon_models/103.bin +tools/decompress_persszp.py assets/us/pokemon_models/104.bin +tools/decompress_persszp.py assets/us/pokemon_models/105.bin +tools/decompress_persszp.py assets/us/pokemon_models/106.bin +tools/decompress_persszp.py assets/us/pokemon_models/107.bin +tools/decompress_persszp.py assets/us/pokemon_models/108.bin +tools/decompress_persszp.py assets/us/pokemon_models/109.bin +tools/decompress_persszp.py assets/us/pokemon_models/110.bin +tools/decompress_persszp.py assets/us/pokemon_models/111.bin +tools/decompress_persszp.py assets/us/pokemon_models/112.bin +tools/decompress_persszp.py assets/us/pokemon_models/113.bin +tools/decompress_persszp.py assets/us/pokemon_models/114.bin +tools/decompress_persszp.py assets/us/pokemon_models/115.bin +tools/decompress_persszp.py assets/us/pokemon_models/116.bin +tools/decompress_persszp.py assets/us/pokemon_models/117.bin +tools/decompress_persszp.py assets/us/pokemon_models/118.bin +tools/decompress_persszp.py assets/us/pokemon_models/119.bin +#tools/decompress_persszp.py assets/us/920000/120.bin this file is just randomly not compressed. Thanks for breaking the uniform asset pattern, HAL. +tools/decompress_persszp.py assets/us/pokemon_models/121.bin +tools/decompress_persszp.py assets/us/pokemon_models/122.bin +tools/decompress_persszp.py assets/us/pokemon_models/123.bin +tools/decompress_persszp.py assets/us/pokemon_models/124.bin +tools/decompress_persszp.py assets/us/pokemon_models/125.bin +tools/decompress_persszp.py assets/us/pokemon_models/126.bin +tools/decompress_persszp.py assets/us/pokemon_models/127.bin +tools/decompress_persszp.py assets/us/pokemon_models/128.bin +tools/decompress_persszp.py assets/us/pokemon_models/129.bin +tools/decompress_persszp.py assets/us/pokemon_models/130.bin +tools/decompress_persszp.py assets/us/pokemon_models/131.bin +tools/decompress_persszp.py assets/us/pokemon_models/132.bin +tools/decompress_persszp.py assets/us/pokemon_models/133.bin +tools/decompress_persszp.py assets/us/pokemon_models/134.bin +tools/decompress_persszp.py assets/us/pokemon_models/135.bin +tools/decompress_persszp.py assets/us/pokemon_models/136.bin +tools/decompress_persszp.py assets/us/pokemon_models/137.bin +tools/decompress_persszp.py assets/us/pokemon_models/138.bin +tools/decompress_persszp.py assets/us/pokemon_models/139.bin +tools/decompress_persszp.py assets/us/pokemon_models/140.bin +tools/decompress_persszp.py assets/us/pokemon_models/141.bin +tools/decompress_persszp.py assets/us/pokemon_models/142.bin +tools/decompress_persszp.py assets/us/pokemon_models/143.bin +tools/decompress_persszp.py assets/us/pokemon_models/144.bin +tools/decompress_persszp.py assets/us/pokemon_models/145.bin +tools/decompress_persszp.py assets/us/pokemon_models/146.bin +tools/decompress_persszp.py assets/us/pokemon_models/147.bin +tools/decompress_persszp.py assets/us/pokemon_models/148.bin +tools/decompress_persszp.py assets/us/pokemon_models/149.bin +tools/decompress_persszp.py assets/us/pokemon_models/150.bin +tools/decompress_persszp.py assets/us/pokemon_models/151.bin +tools/decompress_persszp.py assets/us/pokemon_models/152.bin +tools/decompress_persszp.py assets/us/pokemon_models/153.bin +tools/decompress_persszp.py assets/us/pokemon_models/154.bin +tools/decompress_persszp.py assets/us/pokemon_models/155.bin +tools/decompress_persszp.py assets/us/pokemon_models/156.bin +tools/decompress_persszp.py assets/us/pokemon_models/157.bin +tools/decompress_persszp.py assets/us/pokemon_models/158.bin +tools/decompress_persszp.py assets/us/pokemon_models/159.bin +tools/decompress_persszp.py assets/us/pokemon_models/160.bin +tools/decompress_persszp.py assets/us/pokemon_models/161.bin +tools/decompress_persszp.py assets/us/pokemon_models/162.bin +tools/decompress_persszp.py assets/us/pokemon_models/163.bin +tools/decompress_persszp.py assets/us/pokemon_models/164.bin +tools/decompress_persszp.py assets/us/pokemon_models/165.bin +tools/decompress_persszp.py assets/us/pokemon_models/166.bin +tools/decompress_persszp.py assets/us/pokemon_models/167.bin +tools/decompress_persszp.py assets/us/pokemon_models/168.bin +tools/decompress_persszp.py assets/us/pokemon_models/169.bin +tools/decompress_persszp.py assets/us/pokemon_models/170.bin +tools/decompress_persszp.py assets/us/pokemon_models/171.bin +tools/decompress_persszp.py assets/us/pokemon_models/172.bin +tools/decompress_persszp.py assets/us/pokemon_models/173.bin +tools/decompress_persszp.py assets/us/pokemon_models/174.bin +tools/decompress_persszp.py assets/us/pokemon_models/175.bin +tools/decompress_persszp.py assets/us/pokemon_models/176.bin +tools/decompress_persszp.py assets/us/pokemon_models/177.bin +tools/decompress_persszp.py assets/us/pokemon_models/178.bin +tools/decompress_persszp.py assets/us/pokemon_models/179.bin +tools/decompress_persszp.py assets/us/pokemon_models/180.bin +tools/decompress_persszp.py assets/us/pokemon_models/181.bin +tools/decompress_persszp.py assets/us/pokemon_models/182.bin +tools/decompress_persszp.py assets/us/pokemon_models/183.bin +tools/decompress_persszp.py assets/us/pokemon_models/184.bin +tools/decompress_persszp.py assets/us/pokemon_models/185.bin +tools/decompress_persszp.py assets/us/pokemon_models/186.bin +tools/decompress_persszp.py assets/us/pokemon_models/187.bin +tools/decompress_persszp.py assets/us/pokemon_models/188.bin +tools/decompress_persszp.py assets/us/pokemon_models/189.bin +tools/decompress_persszp.py assets/us/pokemon_models/190.bin +tools/decompress_persszp.py assets/us/pokemon_models/191.bin +tools/decompress_persszp.py assets/us/pokemon_models/192.bin +tools/decompress_persszp.py assets/us/pokemon_models/193.bin +tools/decompress_persszp.py assets/us/pokemon_models/194.bin +tools/decompress_persszp.py assets/us/pokemon_models/195.bin +tools/decompress_persszp.py assets/us/pokemon_models/196.bin +tools/decompress_persszp.py assets/us/pokemon_models/197.bin +tools/decompress_persszp.py assets/us/pokemon_models/198.bin +tools/decompress_persszp.py assets/us/pokemon_models/199.bin +tools/decompress_persszp.py assets/us/pokemon_models/200.bin +tools/decompress_persszp.py assets/us/pokemon_models/201.bin +tools/decompress_persszp.py assets/us/pokemon_models/202.bin +tools/decompress_persszp.py assets/us/pokemon_models/203.bin +tools/decompress_persszp.py assets/us/pokemon_models/204.bin +tools/decompress_persszp.py assets/us/pokemon_models/205.bin +tools/decompress_persszp.py assets/us/pokemon_models/206.bin +tools/decompress_persszp.py assets/us/pokemon_models/207.bin +tools/decompress_persszp.py assets/us/pokemon_models/208.bin +tools/decompress_persszp.py assets/us/pokemon_models/209.bin +tools/decompress_persszp.py assets/us/pokemon_models/210.bin +tools/decompress_persszp.py assets/us/pokemon_models/211.bin +tools/decompress_persszp.py assets/us/pokemon_models/212.bin +tools/decompress_persszp.py assets/us/pokemon_models/213.bin +tools/decompress_persszp.py assets/us/pokemon_models/214.bin # Extract all PRESJPEG files. -tools/extract_presjpeg.py assets/us/backgrounds/0/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/1/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/2/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/3/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/4/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/5/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/6/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/7/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/8/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/9/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/10/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/11/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/12/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/13/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/14/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/15/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/16/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/17/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/18/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/19/file.bin -tools/extract_presjpeg.py assets/us/backgrounds/20/file.bin -tools/extract_presjpeg.py assets/us/6CA730/0/file.bin -tools/extract_presjpeg.py assets/us/6CA730/1/file.bin -tools/extract_presjpeg.py assets/us/6CA730/2/file.bin -tools/extract_presjpeg.py assets/us/6CA730/3/file.bin -tools/extract_presjpeg.py assets/us/6CA730/4/file.bin -tools/extract_presjpeg.py assets/us/6CA730/5/file.bin -tools/extract_presjpeg.py assets/us/6CA730/6/file.bin -tools/extract_presjpeg.py assets/us/6CA730/7/file.bin -tools/extract_presjpeg.py assets/us/6CA730/8/file.bin -tools/extract_presjpeg.py assets/us/6CA730/9/file.bin -tools/extract_presjpeg.py assets/us/6CA730/10/file.bin -tools/extract_presjpeg.py assets/us/6CA730/11/file.bin -tools/extract_presjpeg.py assets/us/6CA730/12/file.bin -tools/extract_presjpeg.py assets/us/6CA730/13/file.bin -tools/extract_presjpeg.py assets/us/6CA730/14/file.bin -tools/extract_presjpeg.py assets/us/6CA730/15/file.bin +tools/extract_presjpeg.py assets/us/backgrounds/0.bin +tools/extract_presjpeg.py assets/us/backgrounds/1.bin +tools/extract_presjpeg.py assets/us/backgrounds/2.bin +tools/extract_presjpeg.py assets/us/backgrounds/3.bin +tools/extract_presjpeg.py assets/us/backgrounds/4.bin +tools/extract_presjpeg.py assets/us/backgrounds/5.bin +tools/extract_presjpeg.py assets/us/backgrounds/6.bin +tools/extract_presjpeg.py assets/us/backgrounds/7.bin +tools/extract_presjpeg.py assets/us/backgrounds/8.bin +tools/extract_presjpeg.py assets/us/backgrounds/9.bin +tools/extract_presjpeg.py assets/us/backgrounds/10.bin +tools/extract_presjpeg.py assets/us/backgrounds/11.bin +tools/extract_presjpeg.py assets/us/backgrounds/12.bin +tools/extract_presjpeg.py assets/us/backgrounds/13.bin +tools/extract_presjpeg.py assets/us/backgrounds/14.bin +tools/extract_presjpeg.py assets/us/backgrounds/15.bin +tools/extract_presjpeg.py assets/us/backgrounds/16.bin +tools/extract_presjpeg.py assets/us/backgrounds/17.bin +tools/extract_presjpeg.py assets/us/backgrounds/18.bin +tools/extract_presjpeg.py assets/us/backgrounds/19.bin +tools/extract_presjpeg.py assets/us/backgrounds/20.bin +tools/extract_presjpeg.py assets/us/6CA730/0.bin +tools/extract_presjpeg.py assets/us/6CA730/1.bin +tools/extract_presjpeg.py assets/us/6CA730/2.bin +tools/extract_presjpeg.py assets/us/6CA730/3.bin +tools/extract_presjpeg.py assets/us/6CA730/4.bin +tools/extract_presjpeg.py assets/us/6CA730/5.bin +tools/extract_presjpeg.py assets/us/6CA730/6.bin +tools/extract_presjpeg.py assets/us/6CA730/7.bin +tools/extract_presjpeg.py assets/us/6CA730/8.bin +tools/extract_presjpeg.py assets/us/6CA730/9.bin +tools/extract_presjpeg.py assets/us/6CA730/10.bin +tools/extract_presjpeg.py assets/us/6CA730/11.bin +tools/extract_presjpeg.py assets/us/6CA730/12.bin +tools/extract_presjpeg.py assets/us/6CA730/13.bin +tools/extract_presjpeg.py assets/us/6CA730/14.bin +tools/extract_presjpeg.py assets/us/6CA730/15.bin # Decompress raw Yay0s tools/decompress_yay0.py assets/us/rom_parts/0.bin assets/us/rom_parts/0.bin diff --git a/tools/unpack_asset.py b/tools/unpack_asset.py index c1c84062..1bf0a5ce 100755 --- a/tools/unpack_asset.py +++ b/tools/unpack_asset.py @@ -7,6 +7,7 @@ import crunch64 # Asset unpacker v0.1 (WIP) +# usage: unpack_asset.py path/to/asset.bin [optional: path override] # Read a big endian 32-bit value from a bytearray file with a given offset. def read_32_be_value(file_arr, i): @@ -37,7 +38,7 @@ def read_32_be_value(file_arr, i): # TODO: Properly handle this if file_header[0] != 0x00 or file_header[1] != 0x00 or file_header[2] != 0x00 or file_header[4] != 0x00 or file_header[5] != 0x00 or file_header[6] != 0x00 or file_header[7] != 0x00: if extract_to == None: - file_path_to_write = assets_path + filename + "/0/file.bin" + file_path_to_write = assets_path + filename + "/0.bin" else: file_path_to_write = extract_to os.makedirs(os.path.dirname(file_path_to_write), exist_ok=True) @@ -68,7 +69,7 @@ def read_32_be_value(file_arr, i): # Seek to the file offset. file.seek(bin_offset, os.SEEK_SET) sub_file_bytes = bytearray(file.read(bin_size)) - file_path_to_write = assets_path + filename + "/" + str(file_num) + "/file.bin" + file_path_to_write = assets_path + filename + "/" + str(file_num) + ".bin" #print("[DEBUG] Path to write:", file_path_to_write) os.makedirs(os.path.dirname(file_path_to_write), exist_ok=True) file_to_write = open(file_path_to_write, 'wb')