Combat Engine

I’m thinking of making a combat engine where each unit has a base DPS, then an extra critical hit is factored in.

I want range, armour class and stance to take effect. I’ve found an example which is used by dice RPGs. I’m just thinking, given I want weapons for each class, would it just make more sense that each class has double the HP of the last?

Combat example:
totalroll = (roll+cover+stance+enemystance +ammotype
IF total > range factor, then its a hit

I’m thinking that all shots hit, but misses are like “armour saves/luck” so would that make more sense of removing an armour factor and just increasing HP for each class?