Ok, what I need to do is create an address counter, and send it like "payout x number of blocks mined". It's the only way to do it unfortunately. On the plus side, once I've written it, I'll have a hell of a lot less payouts to send out, as I'll only have to pay each miner once proportional to how many blocks they've mined.

Going to go grab some food, then I'll write the function. I'll be ready to go then!
You might want to store the block number up to which point payouts have been made and set it to a new value each time the script has been called, even if it just suffices for catching overflows.