Xardas2014
|
|
April 08, 2014, 02:41:57 AM |
|
Unfortunately most of the devs decided it was better to have a nap during the most crucial time of the coins existence. Maybe a plan can be made to get the coin back into proper hands and get the coding fixed. Until then, I think all mining and trading should be stopped immediately.
|
|
|
|
IntroVert
|
|
April 08, 2014, 02:49:22 AM |
|
Unfortunately most of the devs decided it was better to have a nap during the most crucial time of the coins existence. Maybe a plan can be made to get the coin back into proper hands and get the coding fixed. Until then, I think all mining and trading should be stopped immediately.
I agree with this, however I question why they didn't go the stop mining and trading route once the error was discovered. Although the fork didn't work as expected at least the crazy coin generation was stopped. The team should take some time to review and test code now without the sword of coin issuance hanging over their heads. It is important to get this right. And TEST, please!!!
|
|
|
|
|
YouIsPeng
|
|
April 08, 2014, 02:52:26 AM |
|
Unfortunately most of the devs decided it was better to have a nap during the most crucial time of the coins existence. Maybe a plan can be made to get the coin back into proper hands and get the coding fixed. Until then, I think all mining and trading should be stopped immediately.
I agree with this. Although the fork didn't work as expected at least the crazy coin generation was stopped. The team should take some time to review and test code now without the sword of coin issuance hanging over their heads. It is important to get this right. And TEST, please!!! You would hope they would test the next fix, however a dev has just said in IRC: [03:49] <cryptowest> i fixed it already [03:49] <cryptowest> fork at 8500 ...
|
|
|
|
voxelot
|
|
April 08, 2014, 02:55:17 AM |
|
It seems the fork did not work as expected. Miners only earn TX fees now. Check https://water.suprnova.cc/index.php?page=statistics&action=blocks or the explorer at http://cleanwatercoin.altstrade.cc/chain/CleanWaterCoinOut of main.cpp, the following is the relevant code: static const int64 nMinSubsidy = 1 * COIN; static const int CUTOFF_HEIGHT = 1000000000; // Temp max height. May need to be forked based on varied reward system // miner's coin base reward based on nBits int64 GetProofOfWorkReward(int nHeight, int64 nFees, uint256 prevHash) { int64 nSubsidy = 150 * COIN; double coinDifficulty = (double)GetDifficulty(); int64 rewardCalc = 1/(sqrt(coinDifficulty + 500)); if (nHeight == 1) { nSubsidy = 10000000 * COIN; // first block is premine } else if (nHeight >1 && nHeight <= 55) // 55 blocks for confirmation of premine { nSubsidy = 1 * COIN; } else if (nHeight >55 && nHeight <= 7000) { nSubsidy = 1000 * COIN; } else if (nHeight >7000 && nHeight < 8000) { nSubsidy = (int64)((double)(20000 * sqrt(coinDifficulty + 500)) * COIN); } // fork here for proper block reward - 8000 per cleanwatercoin guys else if (nHeight >= 8000 && nHeight <= 250000) { nSubsidy = (int64)((double)(20000 * rewardCalc) * COIN); } else if (nHeight > 250000 && nHeight <= 500000) { nSubsidy = (int64)((double)(15000 * rewardCalc) * COIN); } else if (nHeight >500000) { nSubsidy = (int64)((double)(10000 * rewardCalc) * COIN); } else if (nHeight > CUTOFF_HEIGHT) { nSubsidy = 0; } return nSubsidy + nFees; } Note that rewardCalc is int64 type. Given that its calculation will always be less than 1/sqrt(500) < 0.05 it will be always rounded down to 0. So once it is used in a formula like nSubsidy = (int64)((double)(20000 * rewardCalc) * COIN) it will default to 0, and the nSubsidy would be 0 as well. You are practically now mining for TX fees from here till eternity. The fix? Change rewardCalc declaration to double (in the line bolded above). Because it is obvious that THIS AGAIN HAS NOT BEEN TESTED, here is some help for that. Copy this code into a main(), envelope it with a for loop going from 1 to 500002 and then another loop from CUTOFF_HEIGHT - 2 to CUTOFF_HEIGHT + 2 and run it standalone while writing the block height and subsidy into a file. Shouldn't take you long to review the file and see if the code is working correctly. Now where is that fork picture from earlier? Everybody thank Introvert for finding the data type error so quickly and to cryptowest for being the only dev that hasn't quit.
|
|
|
|
IntroVert
|
|
April 08, 2014, 02:58:38 AM |
|
It seems the fork did not work as expected. Miners only earn TX fees now. Check https://water.suprnova.cc/index.php?page=statistics&action=blocks or the explorer at http://cleanwatercoin.altstrade.cc/chain/CleanWaterCoinOut of main.cpp, the following is the relevant code: static const int64 nMinSubsidy = 1 * COIN; static const int CUTOFF_HEIGHT = 1000000000; // Temp max height. May need to be forked based on varied reward system // miner's coin base reward based on nBits int64 GetProofOfWorkReward(int nHeight, int64 nFees, uint256 prevHash) { int64 nSubsidy = 150 * COIN; double coinDifficulty = (double)GetDifficulty(); int64 rewardCalc = 1/(sqrt(coinDifficulty + 500)); if (nHeight == 1) { nSubsidy = 10000000 * COIN; // first block is premine } else if (nHeight >1 && nHeight <= 55) // 55 blocks for confirmation of premine { nSubsidy = 1 * COIN; } else if (nHeight >55 && nHeight <= 7000) { nSubsidy = 1000 * COIN; } else if (nHeight >7000 && nHeight < 8000) { nSubsidy = (int64)((double)(20000 * sqrt(coinDifficulty + 500)) * COIN); } // fork here for proper block reward - 8000 per cleanwatercoin guys else if (nHeight >= 8000 && nHeight <= 250000) { nSubsidy = (int64)((double)(20000 * rewardCalc) * COIN); } else if (nHeight > 250000 && nHeight <= 500000) { nSubsidy = (int64)((double)(15000 * rewardCalc) * COIN); } else if (nHeight >500000) { nSubsidy = (int64)((double)(10000 * rewardCalc) * COIN); } else if (nHeight > CUTOFF_HEIGHT) { nSubsidy = 0; } return nSubsidy + nFees; } Note that rewardCalc is int64 type. Given that its calculation will always be less than 1/sqrt(500) < 0.05 it will be always rounded down to 0. So once it is used in a formula like nSubsidy = (int64)((double)(20000 * rewardCalc) * COIN) it will default to 0, and the nSubsidy would be 0 as well. You are practically now mining for TX fees from here till eternity. The fix? Change rewardCalc declaration to double (in the line bolded above). Because it is obvious that THIS AGAIN HAS NOT BEEN TESTED, here is some help for that. Copy this code into a main(), envelope it with a for loop going from 1 to 500002 and then another loop from CUTOFF_HEIGHT - 2 to CUTOFF_HEIGHT + 2 and run it standalone while writing the block height and subsidy into a file. Shouldn't take you long to review the file and see if the code is working correctly. Now where is that fork picture from earlier? Everybody thank Introvert for finding the data type error so quickly and to cryptowest for being the only dev that hasn't quit. Thank you cryptowest, looking forward to the fix!
|
|
|
|
ficklepickle
|
|
April 08, 2014, 03:01:08 AM |
|
Is we going to build wells on the moon or not‽
|
|
|
|
WALKEN-COIN
|
|
April 08, 2014, 03:03:15 AM |
|
It seems the fork did not work as expected. Miners only earn TX fees now. Check https://water.suprnova.cc/index.php?page=statistics&action=blocks or the explorer at http://cleanwatercoin.altstrade.cc/chain/CleanWaterCoinOut of main.cpp, the following is the relevant code: static const int64 nMinSubsidy = 1 * COIN; static const int CUTOFF_HEIGHT = 1000000000; // Temp max height. May need to be forked based on varied reward system // miner's coin base reward based on nBits int64 GetProofOfWorkReward(int nHeight, int64 nFees, uint256 prevHash) { int64 nSubsidy = 150 * COIN; double coinDifficulty = (double)GetDifficulty(); int64 rewardCalc = 1/(sqrt(coinDifficulty + 500)); if (nHeight == 1) { nSubsidy = 10000000 * COIN; // first block is premine } else if (nHeight >1 && nHeight <= 55) // 55 blocks for confirmation of premine { nSubsidy = 1 * COIN; } else if (nHeight >55 && nHeight <= 7000) { nSubsidy = 1000 * COIN; } else if (nHeight >7000 && nHeight < 8000) { nSubsidy = (int64)((double)(20000 * sqrt(coinDifficulty + 500)) * COIN); } // fork here for proper block reward - 8000 per cleanwatercoin guys else if (nHeight >= 8000 && nHeight <= 250000) { nSubsidy = (int64)((double)(20000 * rewardCalc) * COIN); } else if (nHeight > 250000 && nHeight <= 500000) { nSubsidy = (int64)((double)(15000 * rewardCalc) * COIN); } else if (nHeight >500000) { nSubsidy = (int64)((double)(10000 * rewardCalc) * COIN); } else if (nHeight > CUTOFF_HEIGHT) { nSubsidy = 0; } return nSubsidy + nFees; } Note that rewardCalc is int64 type. Given that its calculation will always be less than 1/sqrt(500) < 0.05 it will be always rounded down to 0. So once it is used in a formula like nSubsidy = (int64)((double)(20000 * rewardCalc) * COIN) it will default to 0, and the nSubsidy would be 0 as well. You are practically now mining for TX fees from here till eternity. The fix? Change rewardCalc declaration to double (in the line bolded above). Because it is obvious that THIS AGAIN HAS NOT BEEN TESTED, here is some help for that. Copy this code into a main(), envelope it with a for loop going from 1 to 500002 and then another loop from CUTOFF_HEIGHT - 2 to CUTOFF_HEIGHT + 2 and run it standalone while writing the block height and subsidy into a file. Shouldn't take you long to review the file and see if the code is working correctly. Now where is that fork picture from earlier? Everybody thank Introvert for finding the data type error so quickly and to cryptowest for being the only dev that hasn't quit. Thank you cryptowest, looking forward to the fix! Thanks for picking up the slack you guys! Nice to see people rising to this challenge instead of just giving up. I wish I could code, I would be helping too if I could. My father is a coder for aerospace companies, and when he codes, he suddenly disappears and doesn't come out for hours on end. There is a possibility one or more of the devs is doing this too. Not good for communication, but when they go in to zen mode, they get shit done (professional coders that is).
|
|
|
|
|
|
Xardas2014
|
|
April 08, 2014, 03:15:04 AM |
|
BTW, if you are mining or can, please continue to do so. We have to make it to the fork to see if it works correctly.
AFAIK you will only be getting transaction fees until the fork. You won't be earning many coins but will be supporting the network while it tries to heal.
|
|
|
|
ibfragalot
Member
Offline
Activity: 98
Merit: 10
|
|
April 08, 2014, 03:15:56 AM |
|
...suddenly disappears and doesn't come out for hours on end. There is a possibility one or more of the devs is doing this too. Not good for communication, but when they go in to zen mode, they get shit done (professional coders that is).
As a coder myself, yes, this is how it works. You need 110% of your concentration with the code, NOTHING else. Good on you CryptoWest. Wishing you luck this fork goes as planned.
|
|
|
|
Water_kel
|
|
April 08, 2014, 03:17:48 AM |
|
Ha, Good performance cryptowest. The next fork after 8500 will be 9000?.
|
|
|
|
Xardas2014
|
|
April 08, 2014, 03:22:15 AM |
|
Ha, Good performance cryptowest. The next fork after 8500 will be 9000?. <----------slaps Water_kel with a cold dead fish
|
|
|
|
IntroVert
|
|
April 08, 2014, 03:22:50 AM |
|
Ha, Good performance cryptowest. The next fork after 8500 will be 9000?. Give cryptowest a break man, he is the one trying to make it right here. Edit: BTW, I just realized you are the person that is supposed to help build up the Chinese community, so hopefully you are in contact with the team. If you are, could you please let them know that it would be nice of them to finally show up in this forum, which you remember is the place they announced the coin and charity and where they solicited funds for the PLC? Thank you!
|
|
|
|
Darbu
Newbie
Offline
Activity: 47
Merit: 0
|
|
April 08, 2014, 03:33:09 AM |
|
wallet worked fine synced up fine no issues . thanks
|
|
|
|
IntroVert
|
|
April 08, 2014, 04:05:44 AM |
|
Miners and pool operators have taken over this coin. The "devs" are nowhere to be found. There must be a short term profit incentive in this last rush to pick up 425,000 coin block rewards. I would imagine this coin is going to get dumped on harder than a not so clean water porta potty.
I've been thinking about this and Voxelot is absolutely right when he says that miners and pool operators have taken over control of this coin. If you are right (and I think you are) that a massive dump will start once this forking business gets straightened out, there is a chance for the dev team to take back control of the coin by buying it up on exchanges for mere satoshies. There should be enough dry powder from the PLC, and I think it is very reasonable to use a substantial part of it to buy up a sufficient amount of coins so they reestablish control. Once they do, the coin should be able to serve its initial mission and as the team would control most of WATER they should be able to guide the project in the originally envisioned direction.
|
|
|
|
WALKEN-COIN
|
|
April 08, 2014, 04:09:45 AM |
|
Miners and pool operators have taken over this coin. The "devs" are nowhere to be found. There must be a short term profit incentive in this last rush to pick up 425,000 coin block rewards. I would imagine this coin is going to get dumped on harder than a not so clean water porta potty.
I've been thinking about this and Voxelot is absolutely right when he says that miners and pool operators have taken over control of this coin. If you are right (and I think you are) that a massive dump will start once this forking business gets straightened out, there is a chance for the dev team to take back control of the coin by buying it up on exchanges for mere satoshies. There should be enough dry powder from the PLC, and I think it is very reasonable to use a substantial part of it to buy up a sufficient amount of coins so they reestablish control. Once they do, the coin should be able to serve its initial mission and as the team would control most of WATER they should be able to guide the project in the originally envisioned direction. Yep. And those coins they bought up? Can be used like an Airdrop (Auroracoin/Mazacoin) for a water project.
|
|
|
|
louiseth1
Legendary
Offline
Activity: 924
Merit: 1000
Bitfarms.io
|
|
April 08, 2014, 04:12:31 AM |
|
After all those strugles to get all the payouts out, and more wallet updates, this is officially screwed.
There has been many forks through the last 24 hours, some coins that were mined on the wrong fork got credited on the correct one. We updated the wallets over 7 times due to update pushes by the devs, this only screwed up more the numbers.
We pushed every payout we could, but now 37M coins won't confirm and we're out of coins. Thing is they were confirmed before the latest update. This is beyond repair.
http://Water.Suchpool.pw is now closed.
|
Bitfarms.io - Powering Blockchains with Sustainable Energy
|
|
|
voxelot
|
|
April 08, 2014, 04:13:02 AM |
|
Miners and pool operators have taken over this coin. The "devs" are nowhere to be found. There must be a short term profit incentive in this last rush to pick up 425,000 coin block rewards. I would imagine this coin is going to get dumped on harder than a not so clean water porta potty.
I've been thinking about this and Voxelot is absolutely right when he says that miners and pool operators have taken over control of this coin. If you are right (and I think you are) that a massive dump will start once this forking business gets straightened out, there is a chance for the dev team to take back control of the coin by buying it up on exchanges for mere satoshies. There should be enough dry powder from the PLC, and I think it is very reasonable to use a substantial part of it to buy up a sufficient amount of coins so they reestablish control. Once they do, the coin should be able to serve its initial mission and as the team would control most of WATER they should be able to guide the project in the originally envisioned direction. I just did a test with your suggested loops and the outputFile looks good. This new fork should fix the nSubsidy bugs. While this has been a great blunder I hope that you guys can continue and do good work for charity.
|
|
|
|
|