The way LevelCompatibility subclasses work right now, some kind of black magic / static analysis is performed where it won't be applied if the current map's checksum doesn't appear in single quotes in a valid statement in the Apply method (at least that's sufficient to get it to run, haven't found an easier way).
Can that behavior be done away with for subclasses of LevelCompatibility? The problem here is that LevelCompatibility changes other people's maps, while its user-created subclasses likely (or at least potentially) change maps distributed along with them. This really slows down mapping, since the checksum needs to be updated every time you want to test a map.