Developers LogYes these miners really took advantage of the "fair" launch. I must admit I did launch it prematurely, I wish I had another day or two to work out quirks but when "TurboPascal" launched earlier and got INSTA-mined 1000 blocks within 1 hour, I figured to launch it fairly as soon as possible. I already fixed the Genesis block issue and the "TESTNET" was very successful, no issues.
I launched at exactly 4PM EST as promised and when I launched only 13 blocks were mined. I mined 10 with different rigs to make sure it was working. The other 3 were people who managed to sneak in connecting and mined 3 blocks before the official launch, they had the test version which doesn't check for Genesis block and just cleared their APPDATA, so I shut the node down before others took advantage.
Almost all the 10 blocks that I mined in the pre-launch I donated to the miners who had issues mining their first block.
Then little did I know that the original PASCAL code has a bug that you can easily take advantage of if you got large hash power. The bug is related to this piece of code
unixtimediff := UnivDateTimeToUnix(DateTime2UnivDateTime(Now)) - Bank.LastOperationBlock.timestamp;
If (unixtimediff<0) then begin
WhyNot := 'Invalid Last Block Time';
exit;
end;
It basically doesn't send your block to the network if your computer clock is behind the last block mined.
Whether Albert fixed this in the original version I am not sure. He added "node banning" that happens when you submit blocks according to this line
if Not IsValidTime(connection_ts) then begin
DisconnectInvalidClient(false,'Invalid remote timestamp. Difference:'+inttostr(FLastKnownTimestampDiff)+' > '+inttostr(CT_MaxSecondsDifferenceOfNetworkNodes));
end;
However the node banning wasn't tight enough to ban these miners because the blocks were still too close together. And there was a small numbers of nodes at the time. So they could of hosted a node, moved the clock up on their node and the difference would be further apart. And they knew exactly what clock to set their computer at manually to not get banned. I notice this issue when solomining the original PASCAL Coin however didn't think much of it.
Right now this is less of an issue and when the block time finally stabilizes at 300 seconds it will be a non-issue for sure. That's probably why Albert just left the original code the way it was because it was harder to perform with a larger network.
Regarding the "RELAUNCHING".
Situation is very similar to what happened to ETH during the DAO hack and with ETC being created.
As much as I would think its fair to do another relaunch, I won't for a few reasons. One being that there are a numerous amount of nodes now and I only control one of them, so even if I wanted to do a relaunch I couldn't unless most of those nodes upgraded to the new wallet with a fresh blockchain. Second is that "CODE IS LAW" ideology where even though those miner cheaters did cheat, they didn't actually do anything wrong because it was all in the code.
So even if I did try to relaunch, half the nodes might not agree and there would be a "Pascal Lite Classic" formed AND by relaunching it makes the coin not immutable which is what the basic principle of decentralized cryptocurrencies is all about.
I also contacted OCMiner to see if we can get a Suprnova pool going, i'll let you know if I get a reply. Since the difficulty now is higher than what PASCAL Coin's difficulty was before it got launched on Poloniex.