Formulas

Congratulations gamers, you’ve made it to the formulas section! We previously discussed how NFTs have rarity levels that correspond to their advantage for energy, health, rewards, and game mechanics. The question now is, how do we convert these levels into actual formulas? In this section, we will review the utility and basic formulas for each attribute. However, there are secret formulas and/or coefficients associated with each game that can be uncovered by the community. We encourage the community to use statistics and experience to find the optimal value for your attributes, and then use our marketplace to acquire your dream NFTs.

Check out our community-driven DeFi Land calculator for some approximations on rewards, attribute upgrades, and energy.

When developing a Play and Earn ecosystem, the functions that distribute rewards and govern NFT advantages are crucial. Linear rewards do not properly incentivize higher levels and better gameplay. Exponential rewards do a great job incentivizing higher levels, but won’t benefit the new and improving players as much. To reconcile this, we are basing our main in-game functions off an intuitive, yet powerful function.

This is the main formula for the in-game mechanics, so x can be thought of as your level, and y is your advantage. The y-value output is plugged into many of the formulas we use to determine rewards and NFT advantages. This is a linear function between each 5-level interval. After each 5-level interval, the slope of the line increases. The basis of this formula is that it will strongly incentivize players to make high scores and use their legendary NFTs, but still makes it meaningful to play with common NFTs and lower scores. As it’s a combination of linear functions, it’s easy to calculate your next reward/advantage. The simplest application of this formula in action is your NFT energy level. A minimum energy level (1) will let you play 2 games before needing a cooldown, while a maximum energy level (100) will let you play 25 games. In other instances, we will incorporate additional coefficients and formulas alongside our base formula to calculate the advantages and costs of different mechanics. If you are trying to do some detective work on how to optimize your attributes and gameplay, it would be smart to start with this formula and then reinforce your theories with statistics and gameplay experience. But that’s all we will say on that. Throughout this section, we will refer to any instance of this function as F(x), where x can represent any attribute level or game value.

Here are a few public formulas to show how this equation is incorporated into various gameplay mechanics. Let’s start with energy, which is calculated from your energy attribute level using the main formula:

energy = F(energy_attribute_level)
# if energy_attribute_level = 100, energy = 25
# if energy_attribute_level = 60, energy = 11

Your energy attribute level is also used to calculate your energy restoration rate. A higher energy attribute level correlates with a faster energy restoration rate, as seen below:

energy_restoration_rate = F(energy_attribute_level) / (24* (1 + 0.005 * energy_attribute_level))

NFT upgrades allow you to increase the potential of your NFT attributes. After paying a fee and locking your NFT up for a set period of time, we will return to you an upgraded NFT. This will not change the visuals or rarity of the NFT, but it will increase the in-game advantages. You can upgrade your attributes by 1 level at a time, and you can upgrade all of your attributes at once without stacking the upgrade time. Every 5 levels, you will have to pay $DFL on top of the $GOLDY cost. We eliminated the $DFL cost for your final upgrade. The equations for upgrade time and upgrade cost are shown below:

upgrade_time_in_hours = (level * (1 - C * level) + (1 - level / 100) * 2
upgrade_cost_in_goldy = 10 * C * F(attribute_level)^1.5
upgrade_cost_5th_lvl = 10 * C * F(attribute_level)^1.5 + 10 DFL * attribute_level
# C being a constant that will be changed periodically to balance the game.
# Starting value of C will be 1.
#DFL cost = 0 to achieve max level

Reward formulas are carefully designed and regularly considered for rebalancing. Your rewards depend on both your reward attribute level and a health multiplier. The health multiplier diminishes every 10% your health points go down on your NFT. Therefore, you need to keep your items above 90 HP to prevent missing out on rewards. Here is the base equation for tool rewards:

reward = your_score/max_game_score * F(reward_attribute_lvl) * health_multiplier * balancing_reward_constant
# health_multiplier decreases by 10% each 10 levels

Pets follow a different formula because they are a mostly idle game. Our objective is to ensure that pets offer rewards that are approximately 85-90% of tools with the same attribute levels.

#Ducks, Cows, Chickens:
reward = 35 * loveMeterPercent * head_reward_multiplier * health_multiplier * flattener * f2
flattener = (1 + levelFunction(head.level) / 100)
f2 = head.level > 50 ? 1 : (head.level / 100 + 0.5)

#Cats and Dogs:
reward = bonus * loveMeterPercent * adventureMultiplier * head_reward_new * 10 * flattener * f2
f2 = head.level > 90 ? 1 : ((head.level / 100) * 0.4 + 0.6)
adventureMultiplier = {'1h': 0.1, '4h': 0.2, '12h': 0.4, '24h': 0.}[adventureTime]

While we always aim for complete transparency on our platform, we would be remiss if we didn’t give you the opportunity to have fun discovering gameplay mechanics. Remember, it is not all about the numbers. Gameplay is subjective, and you might find your special niche within the game that gives you the advantage over the NFT attributes.

Last updated