Making a number based strategy game fair?

I apologise for the lack of searching, I wasn’t even sure what to look up (if there’s an active thread, just let me know and I can request to take this one down or something?).

Basically, I have a very basic implementation of numbers dealing damage to each other (a tile based game where you expand with troops which are solely numbers).

So far, let’s assume you have a tile with 86 troops, attacking a tile with 21 troops. For every troop, is 100 health (so 8600 vs 2100). Damage is:

(health / 100) * 2

image

However, it’s a little unfair - so I randomised the multiplier a bit for the defending tile. Damage and health scales every 1/4th of a second, and every second the display is updated.

The bottom left battle seems in favour of the attacker. I guess I’m here to ask for suggestions to improve the formula so to speak, if that’s allowed?

Let me know if I need to elaborate on anything! (:

1 Like

Wow this is really nice, I love how it brings back a old classic board game if your going for that.

1 Like

Thank you! Inspiration from Risk and an old Roblox game, Territory Conquest.

I might not be interpreting the question correctly, but what’s wrong with the attackers having an advantage in the bottom left? The attacker has almost double the troops that the defenders have, so why WOULDN’T you want them to win?

1 Like

That’s true, but I would like the defending tile to have a slight buff - with the way I’m currently dealing damage, the defending team won’t deal a significant amount of damage in comparison, barely anything in fact. I tried randomising the multiplier for the defending tile, but then my next issue would be when troops are single digits. The damage is too low for the battle to end as quick as I’d like.

Something more ‘constant’ would be preferable.

I think its fair as long as its doable 80% of the time.

1 Like

Hi!
This is basically the formula I use for a similar game:

A = A - ceil(1.5*B/A)
B = B - ceil(1.5*A/B)

A and B are the raw number of units of each team (units have no “health”).

The problem with it is both parties will be substracted 1 regardless of their size (e.g. 1,000 vs 5 would result in 999 vs 0). Might have to tweak it.

The time spent on each iteration is variable. The bigger the squads are, the faster they will consume each other, so single-digit battles are not too slow.

I hope these ideas help!

Btw, nice job with the game. Looks like a modern version of TC!

1 Like

I’ll try it out, thanking you kindly! :smile:

1 Like