/neverlose.money-contract

Primary LanguageSolidityBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

Neverlose.money - Gamified HODL Protocol

A lock-up smart contract HODL protocol on Ethereum that pays bonus to the winners with the losers penalty.

"If you aren’t willing to own a stock for ten years, don’t even think about owning it for ten minutes."
- Warren Buffet -

Source: https://youtu.be/vCpT-UmVf3g

Contracts

LockUpPool.sol

A lock-up smart contract that pays bonus to the winners with the losers' penalty when they break lock-up prematurely.

WRNRewardPool.sol

A governance token distribution contract on top of LockUpPool. A maximum of 1.2M WRN tokens will be distributed for 4 years depending on users' contribution to the lockup pool

Boost Factor

  1. Token Amount: Linear
  2. Lock-up period: 1x (3 months) - 40x (10 years)
  3. Pool multiplier: 2x (HUNT), 1x (WETH), 1x (WBTC)

Görli (goerli) Testnet

  • ETH faucet (to pay gas): https://faucet.goerli.mudit.blog/
  • Contract: 0xD5B9A9dB6E11E216e08bF10B0C0e53478315E8C3
  • Test tokens
    • WRN: 0x64B45af8ED1ABA874144802B34e99262E444202f
    • HUNT: 0x3cCc84296b4dDf99d628e1472F697c4649A9962F
    • WETH: 0x0370789664eCBc83a9a44766c2384b9d5A638Dfb
    • WBTC: 0xF0aa78e4Ea6C717891085879Bd78Fd87a98D8572

Gas consumption

·------------------------------------------|----------------------------|-------------|----------------------------·
|   Solc version: 0.7.1+commit.f4a555be    ·  Optimizer enabled: false  ·  Runs: 200  ·  Block limit: 6718946 gas  │
···········································|····························|·············|·····························
|  Methods                                 ·               38 gwei/gas                ·       433.90 usd/eth       │
··················|························|··············|·············|·············|··············|··············
|  Contract       ·  Method                ·  Min         ·  Max        ·  Avg        ·  # calls     ·  usd (avg)  │
··················|························|··············|·············|·············|··············|··············
|  ERC20Token     ·  addMinter             ·       73038  ·      73050  ·      73048  ·          23  ·       1.20  │
··················|························|··············|·············|·············|··············|··············
|  ERC20Token     ·  approve               ·       29166  ·      44274  ·      43976  ·         120  ·       0.73  │
··················|························|··············|·············|·············|··············|··············
|  ERC20Token     ·  initialize            ·      328285  ·     373313  ·     361760  ·          90  ·       5.96  │
··················|························|··············|·············|·············|··············|··············
|  ERC20Token     ·  mint                  ·           -  ·          -  ·      53096  ·          49  ·       0.88  │
··················|························|··············|·············|·············|··············|··············
|  ERC20Token     ·  transfer              ·       37283  ·      52343  ·      51623  ·          21  ·       0.85  │
··················|························|··············|·············|·············|··············|··············
|  LockUpPool     ·  addLockUpPool         ·       71475  ·      86559  ·      84932  ·          37  ·       1.40  │
··················|························|··············|·············|·············|··············|··············
|  LockUpPool     ·  claimBonus            ·       26883  ·     126955  ·      73598  ·           3  ·       1.21  │
··················|························|··············|·············|·············|··············|··············
|  LockUpPool     ·  doLockUp              ·      193432  ·     358373  ·     301556  ·          46  ·       4.97  │
··················|························|··············|·············|·············|··············|··············
|  LockUpPool     ·  exit                  ·       75503  ·     273991  ·     188522  ·          31  ·       3.11  │
··················|························|··············|·············|·············|··············|··············
|  LockUpPool     ·  initialize            ·           -  ·          -  ·     137233  ·          31  ·       2.26  │
··················|························|··············|·············|·············|··············|··············
|  LockUpPool     ·  setEmergencyMode      ·           -  ·          -  ·      43232  ·           4  ·       0.71  │
··················|························|··············|·············|·············|··············|··············
|  LockUpPool     ·  updateMaxLimit        ·       28907  ·      28967  ·      28937  ·           2  ·       0.48  │
··················|························|··············|·············|·············|··············|··············
|  Migrations     ·  setCompleted          ·           -  ·          -  ·      27335  ·           3  ·       0.45  │
··················|························|··············|·············|·············|··············|··············
|  WRNRewardPool  ·  addLockUpRewardPool   ·      100725  ·     224037  ·     133956  ·          30  ·       2.21  │
··················|························|··············|·············|·············|··············|··············
|  WRNRewardPool  ·  claimWRN              ·      147577  ·     203377  ·     184777  ·           6  ·       3.05  │
··················|························|··············|·············|·············|··············|··············
|  WRNRewardPool  ·  doLockUp              ·      327636  ·     416140  ·     393060  ·          24  ·       6.48  │
··················|························|··············|·············|·············|··············|··············
|  WRNRewardPool  ·  exit                  ·      196963  ·     358300  ·     297910  ·           7  ·       4.91  │
··················|························|··············|·············|·············|··············|··············
|  WRNRewardPool  ·  initialize            ·      283266  ·     283278  ·     283277  ·          23  ·       4.67  │
··················|························|··············|·············|·············|··············|··············
|  WRNRewardPool  ·  setEmergencyMode      ·           -  ·          -  ·      43277  ·           1  ·       0.71  │
··················|························|··············|·············|·············|··············|··············
|  WRNRewardPool  ·  updatePoolMultiplier  ·           -  ·          -  ·     223338  ·           1  ·       3.68  │
··················|························|··············|·············|·············|··············|··············
|  Deployments                             ·                                          ·  % of limit  ·             │
···········································|··············|·············|·············|··············|··············
|  ERC20Token                              ·           -  ·          -  ·    3022475  ·        45 %  ·      49.84  │
···········································|··············|·············|·············|··············|··············
|  LockUpPool                              ·           -  ·          -  ·    3052026  ·      45.4 %  ·      50.32  │
···········································|··············|·············|·············|··············|··············
|  WRNRewardPool                           ·           -  ·          -  ·    4470476  ·      66.5 %  ·      73.71  │
·------------------------------------------|--------------|-------------|-------------|--------------|-------------·