So here is what I’m trying to do. I have a custom pawn that I want ACharacter to inherit from. The only way I can think of doing this is by editing ACharacter’s source code, which I’d rather not do. My question is, am I correct in that this is the only way to do what I want? Would I run into any problems if I went down that route?
You should consider to make a customized (derived)
ACharacter class, instead of customizing
APawn, because you cannot hook into an existing inheritance structure. Multiple inheritance is also not supported, because the UHT does not support it.
To answer the question: yes you are right, you cannot reparent the ACharacter without modifying its source code. And yes i believe you will run into trouble doing this, at least you have to redo your change with every engine update.