That kind of environment is not entirely easy to do in Blitzmax because not only is it very inefficient and clumsy to read from the graphics buffer, but it's also difficult to implement a sustainable game world larger than the screen. The backbuffer is usually trashed when you Flip() the screen into view so it's not as if you can keep making modifications to the same landscape image over and over without some other techniques. Since those games read the graphics buffer quite a bit that is also a serious bottleneck. I recommend doing all modifications that you want to keep track off off-line in main memory, and only using the visible display as a display device. You should then spool pieces of landscape to the images in video ram when they alter. Something like that. Or just go with non-scrolling. But you said you want it scrolling one way - so.... endless game world that scrolls is much easier to maintain than one that preserves all changes everywhere.