Zannick / logic-graph

Tools for video game logic representation and analysis, particularly routing and beatability checks for speedruns and randomizers.
MIT License
3 stars 0 forks source link

Improve output for solutions #18

Closed Zannick closed 1 year ago

Zannick commented 1 year ago
  1. Dump all solutions to a file.
  2. Add some marker to visually identify locations.
  3. Standard output at the end of the run should only show locations.
  4. We should really deduplicate solutions by some metric. (time, maybe, or hash the history?)
  5. Sort the solutions by estimated elapsed time.
Zannick commented 1 year ago

The full file of solutions gets rather long without deduplication, particularly as some seem to be just adding useless actions to other solutions.

We have a couple of options for hashing and other limits:

  1. Hash the full history. This will leave in most of those extras.
  2. Hash only the locations. This is closer to what "the route" traditionally is based on, but may hide real variations in action-related traversal.
  3. Hash only the locations and actions. This is the same as the first option, because the regular traversal is uniquely the shortest path.
  4. Hash only the locations, but within a matching set, drop histories that are strict ordered supersets of another (i.e. if it contains the shorter path in the same order).