SimCMinMax / AutoSimC

Python script to create multiple profiles for Simcraft to find Best-in-Slot and best enchants/gems/talents combination.
GNU General Public License v3.0
54 stars 17 forks source link

Could not grab any valid profiles from previous run #29

Closed Nemo296 closed 6 years ago

Nemo296 commented 6 years ago

Trying to run a simulation via the new 8.0.1 nightly build and I'm running into this error


Traceback (most recent call last):
  File "main.py", line 1633, in <module>
    main()
  File "main.py", line 1620, in main
    start_stage(player_profile, num_generated_profiles, 1)
  File "main.py", line 1454, in start_stage
    dynamic_stage(player_profile, num_generated_profiles, None, stage)
  File "main.py", line 1425, in dynamic_stage
    dynamic_stage(player_profile, num_generated_profiles, target_error, stage + 1)
  File "main.py", line 1342, in dynamic_stage
    num_generated_profiles = prepare_profiles(player_profile, stage)
  File "main.py", line 1308, in prepare_profiles
    return grab_profiles(player_profile, stage)
  File "main.py", line 1284, in grab_profiles
    get_subdir(stage), outputFileName, not is_last_stage)
  File "C:\Users\User\Downloads\AutoSimC-master\splitter.py", line 383, in grab_best
    .format(len(best), len(filterd_best)))
RuntimeError: Could not grab any valid profiles from previous run. (0 profiles available before filtering, 0 after filtering)```
Nemo296 commented 6 years ago

This is fixed by changing the regex in the splitter file. SimC change the way the result files are outputted.

Change it from metric_regex = re.compile("\s*{metric}: (\d+\.\d+) {metric}-error=(\d+\.\d+)/(\d+\.\d+)%".format(metric=metric), re.IGNORECASE)

to

metric_regex = re.compile("\s*{metric}=(\d+\.\d+) {metric}-error=(\d+\.\d+)/(\d+\.\d+)%".format(metric=metric), re.IGNORECASE)