Despite the planning, are there situations that results in too many "parameter passing" from one class to the class the programmer wants to be in?
As a self taught game programmer who has been writing the codebase for one month and 2 weeks for a role playing game, I also want to know the thought process of how game programmer think or approach a codebase they are about to write.
Do they write psuedo code just to spot as much future problems in implementing a feature that would make their life easier?
Do they talk to every programmer on the team about how to build their side of the codebase or is this abstracted away from the other programmers?
What exactly would they talk about before writing a single line of code?
How do they put the codebase together before writing a single line of code if they never written the code before?
What is the process like? Is it necessarily
1) communicate some. write pseudo code on whiteboard to spot bad code design.
2) everyone build their side of the codebase
3) merge the codebase together
Repeat the above steps
Since I never worked on a team before, understanding how a team of programmer works in terms planning and approaching the codebase design of a game would be super useful to me. It would probably make me a better programmer so my code can actually work well with the other programmer codebase.
On a side note: When does one start joining a team? How many games does one need to write before joining a team to gain team experience? I heard joining a team can be pretty complicated.
I made 5 games so far in a year time(the role playing game being the most complicated thing I have ever done The DialogueSystem being the most complicated I ever build for a game and took many days before it worked the way I wanted it to work despite some improvement that can be made on the code design ).
I feel I have much to learn before joining a team. I fear I need team experience before I can join the game industry as a game programmer intern.
Any feedback about the above would be appreciated.