I have a suggestion for a better block subsidy as was being discussed a few weeks ago. Sorry for lurking, but I never had anything to say before. How about introducing the more traditional block halving from a set point in the future. Something along the lines of
main.cpp:
CAmount GetBlockValue(int nHeight, const CAmount& nFees)
{
//...
} else if (nHeight > 1400000) {
int halvings = nHeight / Params().SubsidyHalvingInterval(); // 675000 blocks or 6 months
// Force block reward to zero when right shift is undefined.
if (halvings <= 64) {
nSubsidy = 10 * COIN;
nSubsidy >>= halvings;
}
}
}
return nSubsidy + nFees;
This would reduce the block schedule significantly in about 7 months from now.