Skip to content

Swift support for Bethesda's BSA format, used by Skyrim, Fallout, etc.

Notifications You must be signed in to change notification settings

elegantchaos/SwiftBSA

Repository files navigation

Test results Latest release swift 5.6 shield Platforms: macOS

SwiftBSA

Swift support for Bethesda's BSA file format, as used by Skyrim, Fallout, etc.

Currently this version of the code supports version 105, as used by Skyrim SE/AE.

Support for earlier versions may be added at some later date.

Here Be Dragons

This is an early version, and it currently only supports extracting a .bsa file to a directory, and packing a directory to a compressed archive.

Right now it's just a library and some tests.

The next step will be to add a command line tool target, but I envisage it mostly being used as a library, linked to by other tools.

Why?

This is part of a larger tools project.

Why Swift?

It's what I use for the day job, has decent cross platform support, and I needed an excuse to mess around with some binary streaming and async/await things.

Why Cross Platform?

  1. Although I play Skyrim on a PC, I do most of my coding work on a Mac.
  2. OpenMW supports Windows/MacOS/Linux. At some point I'd like to extend this tool and the other things I'm working on to support OpenMW.

## Useful Info

Example Data

The example data in this repo is taken from Parapets, who helpful makes all their mods available under an MIT license.

About

Swift support for Bethesda's BSA format, used by Skyrim, Fallout, etc.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published