Full rewrite of yoqs old bbaTool (my fork: https://github.com/mcb5637/bbaTool, original repo got deleted). Allows to read and write Settlers 5 HoK archive files (.bba / .s5x).
Simple Usage: Just drop a file or folder onto the executable to unpack or pack it. If a target file/folder exists, asks if it should be remove (override), added (still overrides existing files, if they exist in both) or cancel.
Advanced usage:
- Command line options:
-errfor use in scripts, disables waiting for input before closing and exits with an error code on errors.-ignorehiddenwhen reading a folder, ignore all files/folders that are hidden (usefull to pack a git repository).-autoCompressionautomatically choose if a file should be compressed or not, based on size (never compresses audio files, this would prevent them from being played by SHoK).-searchDuplicatesdirectly before storing an archive, search for duplicate files and link them.-overrideforce override target files/folders.-addautomatically add to target file/folders.
- All other parameters are used as paths:
- if only one file is specified, the output path is determined automatically.
- else, the last path is used as output (archive or folder determined by extension).
- all other paths are loaded in order (possibly overriding contents) as input (archive or folder determined by checking for existing file/directory).
When writing a bba/s5x archive, the bbaTool can link files, pointing multiple filename entries at the same archived file.
Can reduce archive size, especially if used with textures.
(For example, each s5x contains 3 times the same graphics\\textures\\gui\\mappics\\externalmap.png.)
GUI Tool to view and modify Settlers 5 HoK archive files (.bba / .s5x). Also includes automated common tasks like script processing, preview image replacement and folder to s5x map conversion.
Default way to load mcbPacker to your mapscript:
Script.Load("data\\maps\\user\\s5CommunityLib\\packer\\devLoad.lua") --mcbPacker.ignore
mcbPacker.Paths = {{"data/maps/user/EMS/tools/", ".lua"}} --mcbPacker.ignore
--mcbPacker.addLoaderIncluded lua tools: