For my game the player will be a TP or FP player in control of a boat. The boat will change over time (meshes, upgrades etc.) as the player gets new ship designs and technologies.
What would be the best way to handle this, in a team setting, so that everything can be changed as need be, but other classes like widgets and the gamemode/PC etc. can access it without breaking if something changes.
Right now I’m using class inheritance Pawn > Vehicle > Boat > Individual boat classes that can be controlled but the only way I can think to make that used is to have a struct in the GameInstance that sets the current players pawn class and have all classes cast to GI and get that class then cast/spawn/find actors of that class.
Would I be better off just having one class for all the boats an just switch out meshes etc. for all the technologies and classes. Were talking about 50 years of naval technology here…