doesn't work if you have 2 turfs in the same location
Hi Kisioj, can you elaborate? Do you mean that if you place one turf on top of another, the lower turf isn't extracted? I just tested it, and it seems to work properly, so if you could give me more details I would appreciate it.
One workaround would be to specifically tell MDE about that turf type so it can include it. You can both scan the map and manually specify types by passing a list with a null element first, followed by whatever types you want to manually include:
var/MapDataExtractor/mde = new/MapDataExtractor(whitelist = list(null, /turf/OtherType, /turf/AnotherType)) |
The included Demo.dm has some more information.

Just investigated your library again and I know circumstances when it won't work. For example try to place this mob on your demo's map:
If you do this, your library won't ever finish and will just stop at line:
As a result, MDE_Map_Project folder and the new .dm file won't be ever created.