Download Latest Version Design Improvement and Memory Optimization.tar.gz (8.9 MB)
Email in envelope

Get an email when there's a new version of rimhistory

Home / v0.5.0
Name Modified Size InfoDownloads / Week
Parent folder
Multi-save support.tar.gz 2022-02-15 531.6 kB
Multi-save support.zip 2022-02-15 542.7 kB
README.md 2022-02-15 1.4 kB
Totals: 3 Items   1.1 MB 0

New features

  • Use data from a series of save files to produce time-series datasets and visualizations
  • Each dataset is extracted from a series of save files and stored in pandas DataFrames internally
  • The in-game time is extracted from each save file and added to the data model for use as a time dimension
  • Null handling logic passes a None value into the pandas DataFrame when data is missing, such as missing plant age, pawn ambient temperature, or pawn first name

Improvements

  • Reduce memory usage by deleting the XML root element as soon as possible after instantiating a Save object
  • Bump pandas to 1.4.1
  • Bump pytest to 7.0.1
  • Configure flake8 errors to halt the GitHub Actions build process
  • Clean up code style issues raised by flake8

Notes

Example chart generated from 167 save files:
Example line chart visualizing flora population by species over time

Performance for large file sets:
During testing, the latest version was able to process 167 sequential save files in 124 seconds. This allows users with a large number of saves to load them all without too long of a wait. This could be sped up further by refactoring the SaveSeries class to initialize its Save objects asynchronously.

Source: README.md, updated 2022-02-15