Planning is a big part of efficient game design. If you decide after having made a lot of a game that you want to add a new feature, but the infrastructure and architecture of the game don’t allow for it, you’ll have to make some changes to the game’s code. These changes have to allow the previous features to still work as they did before while allowing you to add the new feature, which could take a lot of changing the way things work.
While the player might never know of these changes other than through a bug, it can take a long time for the developer to change everything involved in this.
When I decided to add the scenarios mode, I wanted to use the same planning stage as the missions used. The missions’ planning stage however was only built to work with the missions; it placed units as soon as the “room” changed from the Planning Room to anything else, so since I didn’t use the planning room in the scenarios mode, it tried to make units immediately before the player had a chance to place them. It would take you to the current mission instead of the scenarios map.
The pause menu would even take you to the current mission if you tried to pause and return to the game, and the planning stage once placed units on the pause menu. I had built in exceptions for the Simulator but I didn’t think I’d be adding a different mode, so I’ve had to fix a lot of the code to make sure it works as I wanted.
Professional game designers probably -ALL- know this, and I knew it too before making games, it makes sense. What you should learn from this is that if you want to make a game, design as much as you can, and when you’re making the game, make sure the systems you make will work for a variety of situations. It helps to make sure individual systems can work independently of each other without needing a specific other system to work. Don’t be afraid to go back and fix a system when you realise it won’t work with what you’re adding (unless it takes TOO long), even if it takes a long time it will probably make the game more organised. Preferably though, plan out the game.