Skip to content

CryptoSaga (SAGA) v4.1.1.0 Mandatory Update

Latest
Compare
Choose a tag to compare
@pedro-at-decenomy pedro-at-decenomy released this 27 Nov 18:30

Release Notes: CryptoSaga Version 4.1.1

Install before block 1,900,000

New Features

  • Dynamic Rewards Calculation:

    • Theoretical Basis: Inspired by Milton Friedman's monetarism, our dynamic rewards system aims to maintain economic stability by adjusting block rewards in response to changes in total and circulating supply. In this approach, we use fixed hard-coded percentage rates for the calculation of the block reward, which is dynamically adjusted based on actual blockchain indicators.
    • Mathematical Framework:
      • Reward Calculation Formula: The block reward value is adjusted by averaging the expected (static table) block reward by multiplying the TMS (Total Money Supply) with the total emission rate (5%) and the CS (Circulating Supply) with the circulating emission rate (10%). This results in a delta, which is then linearly damped to smooth out its response. After damping, the delta is subtracted from the previous reward to determine the next block reward, burning up the remainder.
      • Circulating Supply Calculation:
        • Subtract UTXOs allocated in masternodes from the total coin supply.
        • Remove coins at stake, which is determined by averaging the difficulties of the blocks in the current epoch.
        • Account for network UTXOs:
          • UTXOs aged 3 months or less are counted at 100%.
          • UTXOs decrease linearly in value until they reach 0% when they are 12 months or older.
      • Target Delta and Damping:
        • Determine the delta from the target value.
        • Apply a damping factor based on its percentage against the current reward.
        • Use a linear function for damping: at 100%, the damping factor is 10%, decreasing linearly to 1% at 0%.
    • Code Reference: View Code
  • Bootstrap File for Wallet Sync:

    • Added functionality to download a bootstrap file for faster wallet synchronization. Bootstrap files reduce the initial sync time by providing recent blockchain data up front, allowing the wallet to synchronize from that point forward instead of starting from the genesis block.
    • Code Reference: View Code
  • New RPC Call - getrewardsinfo:

    • We introduced a new RPC call to support the dynamic rewards feature, which provides detailed information on rewards and their calculations.
    • Code Reference: View Code
  • Deterministic Build System:

    • Implemented a deterministic build system using Docker files. This system ensures reliable and reproducible builds that align with the published code in our GitHub repository. By using Docker, we avoid extra layers of abstraction, making the process more reliable and less dependent on external tools, reducing vendor lock-in.
    • Benefits: This system allows users to verify that the binaries supplied by the team match 100% with the source code published, making the distribution of binaries completely trustless. Don't trust, Verify!
    • Code Reference: View Code and View Code

Improvements and Fixes

  • Blockchain Status Tab:

    • Added a new tab to the tool window that provides detailed Return on Investment (ROI) statistics, allowing users to monitor their staking and masternode earnings in real-time. This includes metrics for staking ROI, masternoding ROI, and detailed masternode counts.
      • Return on Investment:
        • Staking ROI: Displays the return on investment for staking coins.
        • Smooth Staking ROI: Shows a smoothed version of the staking ROI to reduce variability.
        • Staked Coins: Indicates the total number of coins currently staked.
        • Masternoding ROI: Displays the return on investment for running masternodes.
        • Masternoded Coins: Indicates the total number of coins allocated to masternodes.
      • Masternode Count:
        • Total: Total number of masternodes in the network.
        • Stable: Number of stable masternodes.
        • Enabled: Number of enabled masternodes.
        • In Queue: Number of masternodes waiting in the queue.
        • IPv4: Number of IPv4 masternodes.
        • IPv6: Number of IPv6 masternodes.
        • Onion: Number of Onion (Tor) masternodes.
      • My Masternodes:
        • Total: Total number of masternodes owned by the user.
        • Active: Number of active masternodes owned by the user.
  • Collateral Change Enforcement Fix:

    • During the 7-day collateral change window, the wallet previously accepted both the old and new collateral. This has been fixed to ensure that only new collateral can be created after the start of the 7-day window in the masternode creation UI panel.
  • Difficulty Algorithm Adjustment:

    • The difficulty algorithm was tweaked to be more stable and deliver more precise results regarding the number of blocks per day and, consequently, stable numbers per week and month. This accuracy was necessary for the dynamic rewards algorithm to function as expected.
    • Overview of the New Difficulty Adjustment Algorithm:
      • The updated algorithm introduces a dynamic approach to difficulty adjustment, aiming to maintain consistent block times and enhance network security.
      • Key Features:
        • Dynamic Adjustment: The algorithm evaluates the time taken to mine recent blocks and adjusts the difficulty to target a consistent block interval.
        • Responsive to Network Conditions: By analyzing the timestamps of the last 24 blocks, the algorithm swiftly responds to changes in network hash rate, preventing abrupt fluctuations in block times.
        • Stability Measures: To avoid drastic changes in difficulty, the algorithm imposes limits on the maximum adjustment per interval, ensuring gradual transitions and maintaining network stability.
      • Technical Details:
        • Parameters and Consensus Rules: The function begins by retrieving blockchain parameters and consensus rules, which are used to determine the next difficulty target.
        • Block Height and Time Protocol Version: The current block height is calculated, and the function checks if the Time Protocol V2 is in effect. This affects the Proof of Stake (POS) limit.
        • Target Block Spacing: The target number of blocks for daily, weekly, and monthly intervals is calculated based on the intended average block spacing.
        • Actual Block Spacing Calculations: The function calculates the actual spacing between recent blocks and the accumulated spacings for daily, weekly, bi-weekly, and monthly periods.
        • Dynamic Adjustments: The actual spacing is multiplied by a factor to increase resolution, and adjustments are made for different periods to smooth the response.
        • Weighted Adjustments and Final Target Calculation: Weighted adjustment factors are applied to the target spacings, and the final target spacing is calculated, limited to ±10% of the intended target to avoid extreme changes.
        • Difficulty Calculation: The new difficulty is determined by applying the actual spacing and the final target spacing to adjust the previous difficulty value. If the new difficulty exceeds the POS limit, it is capped accordingly.
    • Code Reference: View Code
  • Locking Mechanism Enhancements:

    • Improved locking mechanisms to address sporadic deadlocks, leading to a smoother and more reliable wallet experience, particularly in UI mode.
  • Curl and Zip Integration:

    • Incorporated curl and zip functionalities for downloading and compressing data, preparing the codebase for future features that may require these capabilities.
  • Enhanced User Experience (UX):

    • The latest changes to the wallet bring lighter software, reduced resource consumption, and thus a better and smoother user experience. From regular interactivity with the software to more intensive processes like staking and coin control management, everything feels more fluid and responsive.
  • Masternode Configuration Improvements:

    • The previous masternode.conf button, which was previously on the home screen, is now located inside the masternode tab, centralizing all masternode-related actions. Additionally, users can now export the activemasternode.conf for a more straightforward way to deploy a masternode using the multinode script available on our GitHub. The current method to launch a masternode is easier than ever.
  • Dashboard Icon Reorganization:

    • Reorganized the upper dashboard icons by removing redundant functions found elsewhere in the software. Specifically, the FAQ, masternode.conf, and wallet.conf buttons have been moved inside the Settings tab. The QR code is now only visible upon user request.

Continuous Improvement and Community Involvement

We are committed to continuous improvement and value community feedback. Please report any issues and suggest features to help us enhance the wallet's functionality, security, and user experience.

Looking Ahead

We are excited about future developments and look forward to implementing new features inspired by our community. Our development roadmap includes advanced security features, enhanced privacy options, and further optimizations to ensure that our wallet remains at the forefront of the cryptocurrency landscape.

Stay tuned for more updates, and thank you for your support and trust in our software. Together, we are building a brighter future for cryptocurrency.