Skip to content

Releases: velit/Factorio-Benchmark-Powershell

1.2

21 Sep 23:25
Compare
Choose a tag to compare

New features

Add nicer regular output if Import-Excel dependency is installed

It's difficult to orchestrate the .csv output to be in a format that would nicely import in various spreadsheet software. Excel is fussy about commas being the delimiter used in a comma separated values file (...) and also it's difficult to manage decimal separator characters in various localizations. When using Export-Excel things just seemed to work so I extended the export to work on the regular output file in addition to only the verbose output file. This should make it easier to open and manage the data without needing to fix it so much.

If you liked the previous behaviour of only having .xlsx output for the verbose file I added a -forceCSV flag.

Xlsx output will automatically close Excel if the result files are open and locked

Previously having the result files open in excel would prevent the results from being written and the script would fail.

Now excel is closed if it's preventing output saving.

Check if Factorio is already running before invoking factorio.exe benchmark

Script will remind you if Factorio is already running now

Display parameter docstrings in command line help page

Running help -detailed .\benchmark.ps1 now includes helpful documentation for all the parameters of the script.

This list can now also be found on the main page readme.

Command line parameter changes

Rename -calibration to -notes

Previous calibration parameter didn't really communicate its purpose easily. Renamed to notes which is more self-evident. Insert any value here to have it automatically be added to output rows in the Notes column.

Change -usePatternAsOutputPrefix default to false

Previously to invoke the other behaviour you'd have to do -usePatternAsOutputPrefix:$false which was awkward. Now the flag works as you'd expect because it isn't the default behaviour.

I also felt it wasn't as useful as a default behaviour to use separate output files just based on the pattern changing. I might add a similar behaviour in the future for the -notes which would give more control to the user for when they want to change the output file because it isn't also tied to selecting benchmark files to be run.

Fixes

Fix -benchmarkModFolder default value

Previous default value for -benchmarkModFolder used windows path separators which factorio.exe doesn't accept. Fixed the default value to use unix style path separators and updated documentation to remind users that this parameter should be in unix path format.

Readme updates

  • Add output to examples
  • Add Full Parameter List to Readme

1.1.1

20 Feb 03:12
Compare
Choose a tag to compare

Script now uses factorio --mod-directory launch parameter to maintain a separate mod folder for benchmarks by default. This allowed the removal of the previous complex mod-folder moving and restoring mechanism. Behaviour of the previous -enableMods switch didn't change. It still works the same to enable normal user mods.

Added -benchmarkModFolder to allow the customization of the path to the benchmark mod folder.

Verbose mode spreadsheet sheet names are now shorter. Run -> R

1.1

20 Feb 03:17
Compare
Choose a tag to compare
1.1

Add verbose mode (-verboseResult)

Add -verboseResult mode that creates an excel file with tick based log
data stored in sheets for every separate run. Feature required
ImportExcel dependency. See the readme for installation instructions.

-outputNameVerbose and -verboseItems for picking the verbose excel
filename and which debug stats are used for verbose logging

Add calibration result string parameter (-calibration)

Calibration can be used to mark some shared attribute of all the saves
being benchmarked, for example the clone multiplier or target item flow

Other improvements

  • Improvements to save discovery user messages

  • Human readable headers for normal csv output file

  • Make output csv creation silent

    • When creating the output csv for the first time, the script would print out the directory the csv file was in.

1.0

26 Oct 01:22
Compare
Choose a tag to compare
1.0

First release, see Readme.md for functionality.