A rather broad code design question
Hi, I apologise if this is too broad or if it sounds like "how do you make a game?".
I have made several mini games, mostly not utilising OOP concepts, although I have done a few with atleast a few classes. I am now looking to undertake a bit more of a major project, specifically a turn based (hotseat) strategy game, so no AI or networking for now.
I like to thoroughly plan my code before I write it, but with a project this size I really struggle through this stage, so obviously I can't start coding it just yet.
I am looking for any pointers, tips or examples on game code structuring, it is essential that these are in c++ and contain extensive use of c++ features, they don't have to be games but it would be preferred. I have looked at source code for many games and they are usually coded only in C and generally seem to be quite a mess, this is something I want to avoid as I would like to be able to continue to work on this project and maintain it. I do have Battle for Wesnoth lined up for a download on my off-peak though.
My basic idea of the "correct" way to do it would be to have a header/source pair for each class, but that's about as far as my certainty goes. I have also been introduced to the idea of having a base game class, which contains all game elements, minus things like rendering and object creation. Is that a good way to go? Opinions? Tips? :)
Sorry for such a long, rambling post. Any help will be greatly appreciated.