Skip to content
This repository has been archived by the owner on Mar 13, 2023. It is now read-only.
/ js-civ5save Public archive

Library for working with Civilization V save files

License

Notifications You must be signed in to change notification settings

bmaupin/js-civ5save

Repository files navigation

Build Status Coverage Status NPM version License Documentation

Features

  • Documented API
  • Support for reading general game information (difficulty, turn number, player civilizations and statuses, etc.)
  • Support for reading and writing victory types (time, science, etc.)
  • Support for reading and writing advanced options (policy saving, promotion saving, etc.)
  • Support for reading and writing hidden options (always peace, always war, etc.)
  • Support for reading and writing certain multiplayer options (pitboss, private game, turn mode, turn timer)

For an example of actual usage, see https://github.com/bmaupin/civ5save-editor

Goals

  • Support for properties which can be changed by modifying the uncompressed header of the file
  • Support for all versions of the base game, including DLC and expansion packs
  • Support for the latest version only of mods (at least the most popular ones)

Non-goals

  • Support for properties which can be changed in game (e.g. quick combat)
  • Support for properties which have no effect when changed after a game's started
  • Support for properties in the compressed section of the file
  • Support for anything other than the latest version of a particular mod
  • Support for other Civilization games

Installation

npm install civ5save

Development

git clone https://github.com/bmaupin/js-civ5save.git
cd js-civ5save
npm install

Testing

npm test

Building (includes documentation)

npm run build

Credits

References

About

Library for working with Civilization V save files

Resources

License

Stars

Watchers

Forks

Packages

No packages published