Nigma is a web3 free-to-play and play-to-earn 5v5 shooter with the emphasis on gameplay first economy second designed for players to have fun.
Unable to verify that contract auditor is trusted: Certik, Quantstamp, Hacken, Solidity, Paladinsec, Openzeppelin, Verichains
Contract ownership is not renounced (belongs to a wallet)
EnigmaToken.setMarketingPool(address)._marketingPool (#639) lacks a zero-check on :
- marketingPool = _marketingPool (#640)
Check that the address is not zero.
Additional information: link
EnigmaToken._transfer(address,address,uint256) (#668-691) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(lastTrade[sender] < (block.timestamp - tradeCooldown),string(No consecutive sells allowed. Please wait.)) (#680)
Avoid relying on block.timestamp.
Additional information: link
EnigmaToken._transfer(address,address,uint256) (#668-691) compares to a boolean constant:
-liquidityPool[sender] == true (#673)
EnigmaToken._transfer(address,address,uint256) (#668-691) compares to a boolean constant:
-liquidityPool[receiver] == true (#676)
Remove the equality to the boolean constant.
Additional information: link
Context._msgData() (#19-21) is never used and should be removed
ERC20._burn(address,uint256) (#464-479) is never used and should be removed
Remove unused functions.
Additional information: link
Pragma version^0.8.0 (#2) allows old versions
solc-0.8.13 is not recommended for deployment
Deploy with any of the following Solidity versions: 0.5.16 - 0.5.17, 0.6.11 - 0.6.12, 0.7.5 - 0.7.6 Use a simple pragma version that allows any of these versions. Consider using the latest version of Solidity for testing.
Additional information: link
Event EnigmaTokenchangeBlacklist(address,bool) (#590) is not in CapWords
Event EnigmaTokenchangeCooldown(uint8) (#591) is not in CapWords
Event EnigmaTokenchangeTax(uint8,uint8,uint8) (#592) is not in CapWords
Event EnigmaTokenchangeLiquidityPoolStatus(address,bool) (#593) is not in CapWords
Event EnigmaTokenchangeMarketingPool(address) (#594) is not in CapWords
Event EnigmaTokenchangeWhitelistTax(address,bool) (#595) is not in CapWords
Parameter EnigmaToken.setBlacklist(address,bool)._wallet (#615) is not in mixedCase
Parameter EnigmaToken.setBlacklist(address,bool)._status (#615) is not in mixedCase
Parameter EnigmaToken.setWhitelist(address,bool)._address (#620) is not in mixedCase
Parameter EnigmaToken.setWhitelist(address,bool)._status (#620) is not in mixedCase
Parameter EnigmaToken.setCooldownForTrades(uint8)._tradeCooldown (#629) is not in mixedCase
Parameter EnigmaToken.setLiquidityPoolStatus(address,bool)._lpAddress (#634) is not in mixedCase
Parameter EnigmaToken.setLiquidityPoolStatus(address,bool)._status (#634) is not in mixedCase
Parameter EnigmaToken.setMarketingPool(address)._marketingPool (#639) is not in mixedCase
Parameter EnigmaToken.setTaxes(uint8,uint8,uint8)._sellTax (#648) is not in mixedCase
Parameter EnigmaToken.setTaxes(uint8,uint8,uint8)._buyTax (#648) is not in mixedCase
Parameter EnigmaToken.setTaxes(uint8,uint8,uint8)._transferTax (#648) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
EnigmaToken.constructor() (#600-609) uses literals with too many digits:
- _mint(msg.sender,1000000000 * 1000000000000000000) (#601)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#70-72)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#78-81)
name() should be declared external:
- ERC20.name() (#246-248)
symbol() should be declared external:
- ERC20.symbol() (#254-256)
decimals() should be declared external:
- ERC20.decimals() (#271-273)
totalSupply() should be declared external:
- ERC20.totalSupply() (#278-280)
balanceOf(address) should be declared external:
- ERC20.balanceOf(address) (#285-287)
transfer(address,uint256) should be declared external:
- ERC20.transfer(address,uint256) (#297-301)
approve(address,uint256) should be declared external:
- ERC20.approve(address,uint256) (#320-324)
transferFrom(address,address,uint256) should be declared external:
- ERC20.transferFrom(address,address,uint256) (#342-351)
increaseAllowance(address,uint256) should be declared external:
- ERC20.increaseAllowance(address,uint256) (#365-369)
decreaseAllowance(address,uint256) should be declared external:
- ERC20.decreaseAllowance(address,uint256) (#385-394)
Use the external attribute for functions never called from the contract.
Additional information: link
Young tokens have high risks of scam / price dump / death
Young tokens have high risks of scam / price dump / death
Young tokens have high risks of scam / price dump / death
Token has no active CoinGecko listing / rank
Token has no active CoinMarketCap listing / rank
Unable to find Blog account (Reddit or Medium)
Twitter account has few posts