Passing Abilities and attributes between pawns

I have a player character that needs to be able to posses multiple pawns (e.g flying, horse, car, human etc). This player character has attributes and abilities (using GAS) what is the best architecture design approach for passing attributes and stats around between the pawns?

E.g the human pawn has 10 heath and Special attack, and I want them to still have 10 health and special attack when they posses the flying pawn.

Should I package up all the required data and pass it between pawns on possession, or have the pawns read and write attributes and ability data to some abstract location, like a datatable, so they never pass the data between each other?

I think you could save all this data to PlayerState which wont be changed when you possess/unpossess.

Probably you could build everything around PlayerState if you change pawns during game.
imho

1 Like

Thanks that looks promising.

I found a number of insightful discussions of this topic linked in this thread: