MagicCraft Token Logo

MCRT [MagicCraft] Token

About MCRT

Listings

Token 13 months
CoinGecko 13 months
CoinMarketCap 14 months
white paper

In the Magic Craft metaverse there are powerful Castles built by the Elders. Every week your clan goes to war for the ownership of one of the 7 castles, where the King of the castle gets taxation in our native cryptocurrency $MCRT.

Each character has different collectible NFT traits, items, weapons, armor, spells, magic scrolls, clothes, attacks, and poses. You can trade these collectibles in the NFT marketplace for $MCRT.

On the platform there are higher staking rewards for powerful castles, weapons, armor and castles. You hold the value of your character in $MCRT

Laser Scorebeta Last Audit: 24 September 2022

report
Token seems to be legit.

Token.unFinalized(uint8) (#81-84) uses a dangerous strict equality:
- require(bool,string)(privateSaleEnd[saleIndex] == 0,already distributed) (#82)
Don't use strict equality to determine if an account has enough Ether or tokens.

Additional information: link

Pragma version>=0.8.0 (#3) allows old versions
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

Token.totalTeamTokens (#63) should be constant
Add the constant attributes to state variables that never change.

Additional information: link

Token._transfer(address,address,uint256) (#104-109) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(spendableBalance(sender) >= amount,insuffficient unlocked balance) (#105)
Token.distributePrivateSale(uint8) (#166-182) uses timestamp for comparisons
Dangerous comparisons:
- require(bool)(block.timestamp != 0) (#167)
Token.spendableBalance(address) (#183-197) uses timestamp for comparisons
Dangerous comparisons:
- i < privateSaleEnd.length (#185)
- teamVestingStart > 0 && teamTokenBalance[account] > 0 && block.timestamp < teamVestingStart + 31557600 (#188)
- block.timestamp > teamVestingStart (#189)
Token.lockedBalanceFromSale(address,uint8) (#198-211) uses timestamp for comparisons
Dangerous comparisons:
- privateSaleBalance[saleIndex][account] > 0 && block.timestamp < privateSaleEnd[saleIndex] + 39447000 (#200)
- block.timestamp < privateSaleEnd[saleIndex] + 7889400 (#202)
Token.withdrawLeftoverPrivateSale(uint8) (#212-217) uses timestamp for comparisons
Dangerous comparisons:
- require(bool)(teamVestingStart != 0 && canWithdraw == true) (#213)
Avoid relying on block.timestamp.

Additional information: link

Token.withdrawLeftoverPrivateSale(uint8) (#212-217) compares to a boolean constant:
-require(bool)(teamVestingStart != 0 && canWithdraw == true) (#213)
Remove the equality to the boolean constant.

Additional information: link

Token.addMultipleToTeam(address[],uint256[]) (#158-165) has costly operations inside a loop:
- teamToDistribute = teamToDistribute.add(amounts[i]) (#163)
Use a local variable to hold the loop computation result.

Additional information: link

Token.constructor(string,string,uint8) (#94-103) uses literals with too many digits:
- _totalSupply = 10000000000 * 10 ** _decimals (#96)
Token.constructor(string,string,uint8) (#94-103) uses literals with too many digits:
- balanceOf[address(0)] = 3800000000 * 10 ** _decimals (#98)
Token.constructor(string,string,uint8) (#94-103) uses literals with too many digits:
- balanceOf[msg.sender] = 6200000000 * 10 ** _decimals (#99)
Token.constructor(string,string,uint8) (#94-103) uses literals with too many digits:
- privateSaleTotalTokens[0] = 250000000 * 10 ** _decimals (#100)
Token.constructor(string,string,uint8) (#94-103) uses literals with too many digits:
- privateSaleTotalTokens[1] = 350000000 * 10 ** _decimals (#101)
Token.constructor(string,string,uint8) (#94-103) uses literals with too many digits:
- privateSaleTotalTokens[2] = 400000000 * 10 ** _decimals (#102)
Token.slitherConstructorVariables() (#49-221) uses literals with too many digits:
- totalTeamTokens = 2800000000 (#63)
Use: Ether suffix, Time suffix, or The scientific notation

Additional information: link

Holders:
No disclosed threats
No disclosed threats


BscScan page for the token does not contain additional info: website, socials, description, etc.

Additional information: link


Unable to find token on CoinHunt

Additional information: link


Unable to find code repository for the project


Token is not listed at Mobula.Finance

Additional information: link


Token has relatively low CoinGecko rank


Young tokens have high risks of price dump / death

Price for MCRT

News for MCRT