Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(1 edit) (+1)

Magic man plays plinko into the evil spiderverse. 

I've seen a lot of people saying that the mana regeneration is too slow and that mana potions too infrequent. But rather than repeat that, I want to use it as a chance to explore why people might feel that way. Using math. It might get a bit rambly but I think I have something interesting to say about it. 

Disclaimer: I say math but there's not actually going to be that many numbers I promise. This isn't going to every resource called mana or even all resources. There are games that break what I'm about to say. I'm mostly just saying to have a think about the numbers you put in your game. 

Anyway.

The first component is how much of the resource (mana) you have. M

Next is the amount regenerated on its own in a minute. R

Then you have how much mana you're expected to use for weapons in a minute. C

The cost is defined as how many [S]hots to kill an enemy * [m]ana per shot * how many [e]nemies could a player reach in a minute

So, together we have 

if M / (-sum(all_costs) + R < 0:

If you're here, you're running out of mana faster than you think you should be. Your character's been running on fumes for what seems like minutes but the game keeps throwing enemies at you. But you keep pushing forward because the alternative is to just sit here? It's tense at first, but at extremes boredom can overcome caution. 

else:

Otherwise you're here. The promised land. The game begs you to shoot lasers everywhere. And you can deliver. Your mana does run out after a while, but it comes back pretty quick so it's usually available whenever you see anything to use it on. It's great at first, but at extremes why even have the resource? It's basically meaningless. 

M / (-sum(all_costs) + R = ?

The number that we're looking at is the time it takes to run out of the resource. If it's positive, it's almost always available for use. If it's negative, your player's going to run out sooner or later and that can cause friction between the game and the player. The player wants to go, but the game says "no." 

We can use this number to guide the level design. If you want to have 12 minute cycles where there's a tense battle at the end where you have to use everything you have to succeed, I'd try to get that number close to 12. Higher if you want the game to be easier, lower for more difficulty.

If you're expected to run out of mana every 5 minutes and have to regenerate over 2 minutes and then you make a 15 minute section of your game, the player's going to run out of mana at least 3 times. That's six minutes of just waiting for the game to say "go ahead." I say at least because we're using perfect numbers. If there's accuracy involved, expect your costs to be higher.

But what if we take that 15 minute section and cut it into three 5 minute sections. Then add some kind of interlude between them where the resource recharges. I would argue that would create a more streamlined-feeling 15 minutes of gameplay. The player isn't left feeling like they have nothing to do but wait. 

And the interludes don't actually need to be checkpoints, though they can be. You could have upgrades that recharge mana when acquired, a cutscene before a boss battle, or potions that recover the resource. But they need to provide enough of the resource to get the player to the next recharge or again, friction. 

To add any of those to the equation, just use basically the same aspects as cost. resource gain * uses per minute * found per minute

So in the end we have

max_resource / (-sum(all_costs) + sum(all_gains)) = MinutesUntilEmpty

Not exactly complicated math, but I think it's neat to have a think about. I don't feel like anyone should do the maths on every single interaction with this method. You'd drive yourself mad. There's a lot of guesswork involved and it's heavily dependent on playstyle. It's probably better as something to keep in mind when designing games. 

Anyway, just explaining a thought I had. I hope someone finds it useful. 

And sorry about the wall of text. 

TL;DR: If you use more mana than you gain, you run out.

Thanks for your well thought out comment! I can't tell but I hope you enjoyed playing ;p

I agree there's definitely a curve you could plot for a given set of mechanics that you could use to tweak when the game is intense vs those moments of rest.

I really just made the mana regeneration about 1/2 or maybe even 1/4 what it needed to be, it was intended to still allow you to rebound but make firing a bolt something you needed charge for and so think about before using constantly. Periods of waiting for the mana to charge should have been shorter but I hoped it would give moments of intensity as you're hoping another spider-person doesn't drop near you.

What I would say is one of the problems with devving for a game jam is that you play your game over and over again as you go. You eventually get 'good' at your own game mechanics and when it comes to tweaking you can accidentally make it harder for new players as you're actually tweaking it to give YOU a challenge again. This is especially true of a Roguelike, as there's often a mechanic that is intended to be learned by the player for them to practice and improve on. Post-voting I might tweak it so the starting point is easier, as well as increasing the mana regen.

(+1)

Yes, sorry, I did enjoy playing. Got a bit carried away there.

Good points about difficulty. It can be tricky in jam games, given how quickly everything can change.