Instead of reading all Players and especially Entities and TileEntities into RAM and than applying the filter functions onto them, filter functions are used after each parsed chunk to get only the markers of this chunk and not all Entities. This reduced the RAM usage dramatically: On a 233 MB map over 200 MB of RAM was used before. Using these changes (and only having two filter functions for signs) not more than 36 MB of RAM was used.