Ah I thought as much. However I had written another question earlier on Stack Overflow in which I had an InitCard function. But they advised me to put the parameters into the constructor
This is fun. I am slowly getting there though, I have managed to spawn from my cpp script using a blueprint object. I just need to assign their ranks etc in InitCard and should be good to go.
Will keep as rule-of-thumb for now to keep all my constructor functions clear of any parameters.