I personally use 16x16 metatiles for level data and collision. I store the screens using RLE and decompress when the player enters the room (which may be 2 scrolling screens or 1 screen).
The decompression routine updates both VRAM *and* a metatile buffer in RAM, which I later use for collision. The size of this buffer is pretty manageable in the built-in 2Kb of RAM. I've never run out of RAM.
16x16 metatiles are mapped. They reuse the same patterns once and again so I can have the variety I need while keeping the room size small.
Progress Thread - Metroid-esque
Moderator: Moderators