Tips for level maintainers ========================== Automatic replay verification ----------------------------- It's good style to ship solvable levels! :-) Maintain a directory of replays for your level pack. You can test automatically whether your pack is 100 % solvable. There are two ways, both give the same information: * Open the replay browser, navigate to your directory of proof replays, and click "Verify Dir". Results show on-screen and in `./data/verifier.txt'. * Or use the command line, this prints results to standard output: lix --coverage replays/path/to/dir On Windows, stdout is closed to suppress extra console windows. To verify replays from the console, redirect output to a file: lix --coverage replays/path/to/dir > a.txt This tests every replay in replays/path/to/dir/ for whether it solves its the pointed-to level. Here, Lix will never consider any level saved within the replay file. Lix will open the level in your level tree, and run the replay against that. In addition to the normal replay checking results, Lix prints the levels without replay coverage. A level is listed iff it satisfies all points here: * The level file resides in directory from which you have tested at least one playable level. Subdirectories don't count. Example: You test a replay `replays/mydir/replay.txt' and this replay points to the level `levels/mylevels/a.txt'. No matter whether the replay solves the level or not, both `levels/mylevels/a.txt' and `levels/mylevels/b.txt' are considered for coverage analysis, but not `levels/mylevels/mysubdir/c.txt'. * Not a single replay in this entire noninteractive run of the application has proven the level solvable. Example: You have a directory with levels A, B, C, D, and test a directory with 30 replays -- 10 solving replays for A, 3 solving and 7 failing replays for B, 10 failing replays for C, and none for D. This will report levels C and D as potentially unsolvable.