I'll probably post a few of these, so they can all go in here :)
First one, a really oldschool effect popular back in the amiga and atari days when computers were 16 bit: infinite bobs. I tried to do this when I first started with QC, and failed miserably. Now I've figured it out :) So, what it is and how it works...
Back in the olden days, you could only move a limited number of sprites around the screen at once (and actually the same applies now, it's just that modern hardware can probably push more than you could actually see at once!). With this effect, you can put 'infinite' sprites onto the screen, all moving at once, even with oldschool hardware.
It works by having multiple frame buffers (I've used 5 here), switching between them each frame, and rendering the sprite to each buffer in turn as it moves. The buffers are never cleared, so when you get back to the first buffer, you get 2 sprites shown on screen. Because the 5 buffers capture a short sequence of animation, you get the illusion that more and more sprites are appearing on the screen, where there's really just one.
To make this work in QC, I've used 5 accumulators to build up the images, and a multiplexer and demultiplexer to switch between them. The movement is just a moving sprite in a render in image patch.
Because it's frame-rate dependent, it'll look ugly if anything slows it down. Also, it's only running at 30fps because the counter patch seems to stop working at 60fps, and it does strange things as it approaches it :( Anyone know of a better way of switching frame buffer, preferably per frame?