Skip to content

GitLab

    • GitLab: the DevOps platform
    • Explore GitLab
    • Install GitLab
    • How GitLab compares
    • Get started
    • GitLab docs
    • GitLab Learn
  • Pricing
  • Talk to an expert
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Switch to GitLab Next
    • Menu
    Projects Groups Snippets
  • Sign up now
  • Login
  • Sign in / Register
  • openmw openmw
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 735
    • Issues 735
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
  • Merge requests 61
    • Merge requests 61
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Releases
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar

GitLab 15.0 is launching on May 22! This version brings many exciting improvements, but also removes deprecated features and introduces breaking changes that may impact your workflow. To see what is being deprecated and removed, please visit Breaking changes in 15.0 and Deprecations.

  • OpenMW
  • openmwopenmw
  • Merge requests
  • !56

Read BSA files in TES4 / TES5 formats

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged
Adam Fandrejewski requested to merge Azdul/openmw:tes4_bsa into master Jan 16, 2019
  • Overview 38
  • Commits 423
  • Pipelines 12
  • Changes 14

I've ported cc9cii BSA changes from https://github.com/OpenMW/openmw/pull/1955/ to current version of OpenMW. There is no impact on Morrowind BSA reading code - the code is only executed if previous BSA reader would reject the file because of unknown header. Linux and Windows builds passed successfully. I've tested the solution on various BSAs from Oblivion, Oblivion mods and Skyrim. I've run new compilation of OpenMW with few mods and started new Morrowind game - no issues found.

The cc9cii changes concerning Nif, ESM and ESP changes were not ported yet.

I had to use library that deals with zip compressed data structures, so I've decided to use boost, as boost is already used in the engine.

It is my first pull request in OpenMW - so please let me know about everything that does not seem right about it.

I wanted to make sure that cc9cii hard work on supporting later file formats does not get lost as OpenMW engine code evolves.

Support for new BSA formats will be useful for:

  • modders that use OpenCS to adapt TES4 / TES5 mods for OpenMW
  • anyone with limited hard drive space, as BSA in new format are compressed, and TES3 BSA are not
  • anyone implementing support for another compressed data format
  • developers that want to add new features, like SpeedTree equivalent
  • performance tests of OpenMw with huge asset libraries
  • eventual support for later TES games, probably few years down the road
Edited Jan 17, 2019 by Adam Fandrejewski
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: tes4_bsa