Nice work; a bit wondering about the reward not hitting zero? (actually minimum mining fee) at high difficulty values.
I grabbed GetProofOfWorkReward() from main.cpp, which has an if (nSubsidy < 3) nSubsidy = 3; in the PoW phase 2 code.
Now that I look at this, having had some more sleep, should I be using the GetProofOfWorkRewardV2()? Which I guess would mean GetProofOfWorkReward_OPM()?Edit: I swapped the script to use
GetProofOfWorkReward_OPM(), for ( BLOCK_REWARD_ADJT_M7M_V2 < nHeight < END_MAGI_POW_HEIGHT_V2). But the block reward still continues indefinitely as MIN_TX_FEE if (nHeight >= END_MAGI_POW_HEIGHT_V2), as per the code.
I also fixed point calculation because it was concatenating floats as strings, which screwed up middle points on the plot when low difficulty was greater than 0.
Hard refresh (Ctrl+F5) or clear your cache if you're stuck on the old one.