Post
Topic
Board Announcements (Altcoins)
Re: [TEK] TEKcoin Mandatory Update! 40%+ SuperStake in 30+ days
by
presstab
on 28/08/2014, 18:00:58 UTC
Code:
11:43:00

getmininginfo


11:43:00

{
"blocks" : 508747,
"currentblocksize" : 1000,
"currentblocktx" : 0,
"PoW difficulty" : 167585.84269629,
"PoS difficulty" : 0.00232112,
"stakeinterest" : 2017694,
"errors" : "",
"generate" : false,
"genproclimit" : -1,
"hashespersec" : 0,
"networkhashps" : 19189754640830,
"pooledtx" : 0,
"testnet" : false
}

Looks like as long as the difficulty is around 0.0023, then the stake % given is going to be at the current 201% annual rate (see stakeinterest above).

I don't think this was done intentionally, but you can clearly see why NVCS is now kicking in. One of the revisions issued to the code changed the bnTargetLimit calculation.

The NVCS code:
Code:
CBigNum bnMidValue = (bnLowerBound + bnUpperBound) / 2;
        if (fDebug && GetBoolArg("-printcreation"))
            printf("GetProofOfStakeReward() : lower=%"PRI64d" upper=%"PRI64d" mid=%"PRI64d"\n", bnLowerBound.getuint64(), bnUpperBound.getuint64(), bnMidValue.getuint64());
        if (bnMidValue * bnMidValue * bnMidValue * bnMidValue * bnTargetLimit > bnRewardCoinYearLimit * bnRewardCoinYearLimit * bnRewardCoinYearLimit * bnRewardCoinYearLimit * bnTarget)
            bnUpperBound = bnMidValue;
        else
            bnLowerBound = bnMidValue;

See that if the multiple of bnMidvalue^4 * bnTargetLimit > bnRewardCoinYearLimit^4 * bnTarget, then it will change bnUpperBound to equal bnMidValue.  


then bnUpperBound is assigned as the reward
Code:
nRewardCoinYear = bnUpperBound.getuint64();
    nRewardCoinYear = min(nRewardCoinYear, MAX_MINT_PROOF_OF_STAKE);

The getmininginfo command I posted above returns nRewardCoinYear in the "stakeinterest" JSON.

Hope this helps everyone understand the reward system.  I got rid of this altogether in HYP because it wasn't my cup of tea.