Update on my side of Dev.. just so you guys know stuff is actually going on....
I couldn't get in touch with cryptowest today.. may just be we're in diff timezones.. Decided instead just to continue with my code base. This strategy isn't necessarily a bad thing: there's precedents in the industry for 2 teams to race to a project finish.. and then we have the luxury of picking the safest route. Steve Jobs somewhat famous for driving his teams like that @ apple back in the day.
Anyways after getting home from work, doing the family stuff.. hosting some guests. after everyone asleep.. picked up the code that I had from sunday night and made a few modifications and started testing. Now I didn't actually just fork vertcoin/pandacoin code base to start this project, instead i took Realstackcoin, and that was from RPC and manually integrate the KGW and N-factor changes. Not especially hard.. but you do have to be careful when splicing in other people's code in a code base where you might only understand 10% of (which in all honesty... I'm pretty noob at this, since i started hacking this code... just last week on RSC
). A little nervous that i had some typos here and there or whatever... so started testing...
Found bug #1: TYPO on the premine.. 40M instead of 400M.. oops that would have been embarrassing
Found bug #2: had Nonce set incorrectly on genesis block (but bug was hidden behind the fact that i turned searchgenesis code block on.. which somehow modified my block.nonce to be.. correct.. i still don't get how that happens.. ) but anyways that was fixed.
Started mining on my 2 machines using linux daemon client gen=1 on CPU.. found premine block.. so basics are working....
Next test: check that block reward in GetBlockValue is working as expected (that was the relaunch2 FUBAR).
Temporarily turned off KGW through return of bnProofOfWorkLimit in GetNextWorkRequired function
Temporarily turned off the slow ramp Subsidy code (block 1-200 =0, block 200-720 =1 reward).
Temporarily turned lowered block havling down to 40 (from 250000)
Started pointing my vertcoin GPU cluster onto solo mining.. finding lots of blocks fast...
Check listaccounts, to ensure that i'm actually getting block rewards that I'm expecting.
Mining... waiting for my blocks to mature so i can start testing sending/receiving (should work.. but better test to make sure)
meantime : Provisioned 2 VPS nodes, one in Toronto, and one in Chicago.. to be the DNS seed , and 1 Blockchain seed node... this is for backup. GPUC already has some nodes he purchased so we are probably going to use those nodes
Here's the full dev plan that I'm tracking to... yes it may seem a bit complicated for such a small project, but it really helps with NOT making mistakes...
Development plan
-------
Coding:
- (done) Temporarily remove checkpoints
- (done) Change ports
- (done) Update GPUcoin_seeder with ports.
- (done) All name changes, and symbol changes: GPUC
- (done) Change max coins amount, and original COIN amount
- (done) Change KGW retarget time
- (done) Add in DNSSeed address, and hardcoded 3 node seed addresses, 3 data center VPSes: 2 in US, and 1 in canada
- (done) Revert fix micro, milli units (this was changed before to avoid integer overflows for 100B+coins)
- (done) Update subsidy schedule
- (done) change confirmations needed to account for 60second blocktimes changed to 12
- (done) nfactor schedule
Internal Testing:
- testing phase on intranet using linux CLI daemon
- (done) test client mining
- (done) test rewards
- test KGW
- test send/receive
- test client mining (cpu)
- test GPU mining - solo
<< -- we are here now -- >>
- blow away all temp datadirs.
Final Modifications:
- Get PNG logl & graphics from GPUC, and populate QT folder
- Change address prefix from S to G
- Build windows_alpha client
- Test windows alpha client, test send on test network.
- Add launch Seed nodes to DNSseed main.cpp hard code
Real Genesis blocks, and fork prevention:
- Update to launch pszTimestamp
- Update to launch nTime to curent POSIX time
- Create *real* genesis hash, merkle root, and get nonce
- Mine to ~200 blocks
- Get checkpoints, and update checkpoints.cpp
- Settle on final node IP address hardcodes, and any changes to DNS seed host addresses
Deployment:
- Build Final Windows and OSX client release
- Deploy on VPS behind firewall: DNSSeed, and Seed node
- Setup IP tables, etc.
Final Test:
- Test Run DNSseed and make sure it can ping seed nodes, and shows as available
- Test that DNS seed is working using nslookup
- Test Final windows build can connect immediately from fresh start (no previous blockdb)
- Test Final windows build sends / receive coins working
- Test GPU mining against "real" network for blocks 200-210 (reward=1)
- Send private build to GPUC
- Send 400M premine coins to GPUC's wallet
Final Launch:
- Upload windows build to mega, post launch code to github
- Launch