Hi,
Do genesis block spendable ? if yes, why other altcoins use the block 1 instead of genesis block to premine ?
How much time do AUROCOIN, CANADACOIN or other countrycoins took time to premine that amount of coins ?
Some members will say just to change the block reward difficulty, yes but programmatically where and how to do that ?
For example:
CAmount GetBlockSubsidy(int nHeight, const Consensus::Params& consensusParams)
{
int halvings = nHeight / consensusParams.nSubsidyHalvingInterval;
// Force block reward to zero when right shift is undefined.
if (halvings >= 64)
return 0;
if (nHeight == 1)
return 10500000 * COIN;
CAmount nSubsidy = 50 * COIN;
// Subsidy is cut in half every 210,000 blocks which will occur approximately every 4 years.
nSubsidy >>= halvings;
return nSubsidy;
}
Here we set 1050000 coins for the first block, but how to get all that coin to a newly generated address ?
Do i have to use a miner or a fast method to get them there in no time ? if i use a miner, how time this will take to get them all into my wallet ?
The last question is, if i premine about 80% of max money supply, do this algo will be ok for the new altcoin or you can give a suggestion for it:
CAmount nSubsidy = 50 * COIN;
if (nHeight < consensusParams.nSubsidySlowStartInterval / 2) {
nSubsidy /= consensusParams.nSubsidySlowStartInterval;
nSubsidy *= nHeight;
return nSubsidy;
} else if (nHeight < consensusParams.nSubsidySlowStartInterval) {
nSubsidy /= consensusParams.nSubsidySlowStartInterval;
nSubsidy *= (nHeight+1);
return nSubsidy;
}
assert(nHeight > consensusParams.SubsidySlowStartShift());
int halvings = (nHeight - consensusParams.SubsidySlowStartShift()) / consensusParams.nSubsidyHalvingInterval;
if (halvings >= 64)
return 0;
if (nHeight == 1)
return 10500000 * COIN;
nSubsidy >>= halvings;
return nSubsidy;
Hope i will get some answers from experimented users.