App: PuzzleScriptMIS
Developer: Kevin De Keyser
Genres: Developer Tools, Puzzle, Games

PuzzleScriptMIS contains a level editor, a test mode, a solver and uniquely a transformer for PuzzleScript. The transformer functions as a new way for puzzle designers to find or refine levels for puzzle games.

How the transformer works:
Designers can specify transformation rules according to which a current level design is transformed. The transformation rules follow a similar syntax to PuzzleScript and should be very easy to pick up for anyone familiar with PuzzleScript. It extends the language by introducing the keyword choose. choose 1 [Player | No Obstacle] -> [|Player] This chooses, with equal probability, any match of [Player | No Obstacle] (provided there is one) and replaces it with [ | Player] according to the normal rules of PuzzleScript. Notice that this can lead to multiple possible outcoming transformations. For example, the following level could be transformed into two different choices:  The final outcomes are then ranked according to their difficulty and presented to the designer. In this very simple example, the level where the player is moved to the right is considered slightly more difficult than the level where the player is moved to the right. The difficulty metric is based on the number of states the fastest solver requires in order to find the solution and does not almost match human judgment. The transformer works best if the ratio of interesting levels is high in the search space and the levels need a moderately low number of steps to be solved. For more details on how the transformer works read https://dekeyser.ch/puzzlescriptmis

Release notes: