Construir clases derivadas a partir de variables heredadas

Quizás el título sea un poco confuso, así que haré todo lo posible para asegurarme de que sea lo más claro posible.

Básicamente, estoy tratando de crear un juego donde hay una clase base abstracta llamada "Criatura" y tiene varias clases de criaturas de fantasía derivadas.

Ahora mi pregunta es:

si tengo una clase base que tiene variables protegidas int fuerza y armadura int, ¿cómo puedo construir una clase derivada usando fuerza int y armadura int para que obtengan su propio valor sin definir realmente las variables de fuerza y armadura dentro de esa clase?

Déjame escribir el código que estoy tratando de lograr.

class Creature
{
  public:
    Creature();
  private:
    int armor;
    int strength;
};

class Human: public Creature
{
   public:
      Human(int a, int b): armor(a), strength(b)
      {
      }
};

int main() 
{ 
  Human Male(30, 50);
  cout << Male.armor;
  cout << Male.strength;
  return 0;
}

¿Cómo haría esto? Necesito tener armadura y fuerza dentro de la primera clase, así que no puedo declararla en todas las clases derivadas.

Cualquier ayuda es apreciada. ¡Gracias!

Respuestas a la pregunta(3)

Su respuesta a la pregunta