exch-bms2 / beatoraja

Cross-platform rhythm game based on Java and libGDX.
GNU General Public License v3.0
627 stars 146 forks source link

Support loading song assets from a zip file #733

Open lewisfff opened 1 year ago

lewisfff commented 1 year ago

Currently, loading a song in Beatoraja requires loading in images, videos and sound files stored in the file system. I propose adding support for loading a generic archive file which contains the sound files and background video/images.

Why?

Implementation

Example comparison

Before:

image

After:

image

Does anyone have thoughts on this, if it should be done, how it could be implemented, any complexities?

RaceDriverMIKU commented 9 months ago

Even uncompressed archive files can save spaces if there are thousands of BMS files. see Size on disk in the first image, due to sector size. (something like minimum unit to save file(allocation)) Waste of 15.2GiB in my case. (NTFS, sector size 4096 bytes) image

phu54321 commented 7 months ago

This greatly helps distributing level tables via torrenting: Torrent doesn't work well with LARGE number of files. This could greatly reduce number of files, therefore making torrent feasible.