Hey everybody. I'm working on a third person shooter right now (actually based off a drawing my bro and me created when we were 12 and 8 years old respectively, lol) and am in the very early stages. I have a working tps controller that works well.
My current plan is to have around 4 classes for the player to choose from. Something like Assault, engineer, etc haven't figured out all of them yet. I think the classes will each carry 1 gun, although it may change to 2, and the player will be able to choose from a small selection of guns specific to each class.
So far, I have a scene which is my working 3rd person controller, which has a script with the basic movement. I am going to create a scene for each class, and add the controller scene to each class scene. My idea is that each class scene will have a script which deals with everything specific to the class.
How would you recommend I design the guns? Should I have a scene for each gun, and have my class script have a dictionary of all the gun scenes available to it for my player to choose from? Or is there a better way?
The game is multiplayer, btw although I don't think this will alter the design much.
If some of the structure I already have figured out doesn't make sense, feel free to let me know. I want a system that's flexible and isn't overthinking stuff. (For instance having a base gun and each gun deriving from that feels like overkill, it would be easier just to have a scene for each gun and just copy and paste code that is the same, although there won't be much) basically I'm trying to avoid a ton of heavy object oriented stuff because it gets confusing and difficult to work with after a while.
To anyone who read all of that, thank you, and if you want to hear more about the game (it's penguins with high tech gear shooting polar bears with high tech gear etc) feel free to comment!