Ich denke das Problem lag darin, das ich onCreate und create quasi gemischt hatte, obwohl mir immernoch, aber das wäre nur eine Verständnisfrage, nicht klar ist, warum das dann nicht geht.
Das geht problemlos. Man muss nur die Reihenfolge der Aufrufe beachten. In (sehr viel) älteren Delphi-Versionen war das Verhalten Standard, das aktuell bei OldCreateOrder = true implementiert ist, nämlich daß das OnCreate (hier das FormCreate) bereits im TForm.Create aufgerufen wird (in deinem Fall also vor dem Setzen von Test := -1). Das neue Verhalten ruft den Event erst im TForm.AfterConstruction auf, also wenn schon alle abgeleiteten Create durchgelaufen sind.
Wenn du allerdings nie im Create der Basisklasse landest, ist irgendetwas anderes faul (oder du hast einfach nicht lange genug debugged).