Es ist alles eine Frage des Testens. Werte eingeben, testen ob es ok ist, gegebenenfalls Werte leicht ändern und wieder testen. Das ganze solange bis man zufrieden ist.

Als Ansatz gebe ich jedem Monster gewissermaßen ein Level. Ein Slime zB. ist für mich ein Level-1 Monster, soll heißen ein Level1-Held sollte das Monster mit einigen Blessuren besiegen können.
Demnach werden die Werte des Slimes und die eines Level1-Helden sehr ähnlich liegen. Der Slime kriegt vielleicht noch kleine besondere Abweichungen (bisl mehr Defense, dafür weniger Attack) und fertig.
Wenn man dann noch darauf achtet, daß die Werte beim Leveln nicht sprunghaft ansteigen, ist für ein ausgewogenes Spiel gesorgt.

An jedem Punkt im Spiel wird überlegt welches Level die Party so im Schnitt hat und entsprechend werden Monster die diesem Level entsprechen dort eingesetzt. Will ich es etwas schwieriger haben, sind die Monster einige Level drüber. Bossgegner vielleicht deutlich über dem Helden-Level.

Die Tatsache, daß der Held in einer Party agiert negiert sich gewissermaßen, da auch Monster meist in Gruppen auftreten. Einzelgängerische Monster sind dann als Ausgleich dafür eben 2 oder 3 Level höher.
Ebenso kann man die EXP anpassen. Wenn der Held für den Aufstieg von Level 10 auf 11 sagen wir mal 5000 EXP braucht und ich möchte, daß er ca. 20 Kämpfe dafür bestreiten muss und das typische Level10-Monster immer in 2er Gruppen unterwegs ist kriegt jedes Monster (5000 / 40) Exp.

PS: Was du an der Formel ablesen kannst ist, daß jeder Angriffspunkt etwa doppelt soviel wiegt wie ein Verteidigungspunkt. Für also mathematisch korrekte Ausgewogenheit müßtest du, wenn du bei einem Monster den Angriff um 1 erhöhst, die Verteidigung um 2 senken.