Пару дней отсутствовал, ну что есть новости или ждём 28-го числа ?
Ждем, хотя в телеграмме куча постов постоянно, но я не вникаю, так как бесполезно, ничего уже не изменить нам.А что за бонусы и как выбивают? Мы ведь то же монеты отправили, может и нам полагается ?
![Roll Eyes](https://bitcointalk.org/Smileys/default/rolleyes.gif)
P.S
тут в телеграмме аларм по поводу проблем у 1up, зашел к ним в дискорд, у кого-то якобы по 49 монет списывается вместо награды за мастерноду. Ну я решил глянуть в их код, как никак они потомки нашего. О-очень интересное увидел:
Quote
int64_t GetMasternodePayment(int nHeight, int64_t blockValue, int nMasternodeCount)
{
.....
if (nHeight <= 43200) {
ret = blockValue / 5;
} else if (nHeight < 86400 && nHeight > 43200) {
ret = blockValue / (100 / 30);
} else if (nHeight < (Params().NetworkID() == CBaseChainParams::TESTNET ? 145000 : 151200) && nHeight >= 86400) {
ret = 50 * COIN;
} else if (nHeight <= Params().LAST_POW_BLOCK() && nHeight >= 151200) {
ret = blockValue / 2;
} else if (nHeight > Params().LAST_POW_BLOCK()) {
int64_t nMoneySupply = chainActive.Tip()->nMoneySupply;
int64_t mNodeCoins = mnodeman.size() * 25000 * COIN;
....
{
.....
if (nHeight <= 43200) {
ret = blockValue / 5;
} else if (nHeight < 86400 && nHeight > 43200) {
ret = blockValue / (100 / 30);
} else if (nHeight < (Params().NetworkID() == CBaseChainParams::TESTNET ? 145000 : 151200) && nHeight >= 86400) {
ret = 50 * COIN;
} else if (nHeight <= Params().LAST_POW_BLOCK() && nHeight >= 151200) {
ret = blockValue / 2;
} else if (nHeight > Params().LAST_POW_BLOCK()) {
int64_t nMoneySupply = chainActive.Tip()->nMoneySupply;
int64_t mNodeCoins = mnodeman.size() * 25000 * COIN;
....
Сейчас как раз у них перевалило за 86400 блок. А значит, награда за мастерноду стала 50 монет. Но.... 50 монет абсолютных. Хотя должно высчитываться относительно входящего значения blockValue - ака награды за майнинг (ПОС+мастернода). Ну а дальше
Quote
CAmount masternodePayment = GetMasternodePayment(pindexPrev->nHeight, blockValue);
....
else {
txNew.vout.resize(2);
txNew.vout[1].scriptPubKey = payee;
txNew.vout[1].nValue = masternodePayment;
txNew.vout[0].nValue = blockValue - masternodePayment;
}
....
....
else {
txNew.vout.resize(2);
txNew.vout[1].scriptPubKey = payee;
txNew.vout[1].nValue = masternodePayment;
txNew.vout[0].nValue = blockValue - masternodePayment;
}
....
Так как masternodePayment как правило больше blockValue, то получаем отрицательное значение. Естественно, оно не проходит проверку клиентами. Что там у них стало твориться с блокчейном - х.з. У кого там эта монета? Держите в курсе
![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif)
З.Ы.2 Гугл указал что ноги растут из кода PIVX, там то же самое. Но у них blockValue был и так больше 50 PIVX по началу и только после 302399 стал снижаться, так что там было некритичен этот баг. В Sub1x zSub1x такого нет, в этом смысле можно быть спокойным.