Planning may solve things, there's however 1 major problem: he's the one who comes up with the game concepts, and he's the coder of them. The problem is that it's *so* incredibly tempting to think of a new feature during development, a feature you didn't think of at forehand, because the possibility of such a feature is only a result of seeing new possibilities during the programming of the planned features. In that situation you can do 2 things: stick to the plan (and swallow all your frustrations of not being able to expand), or gradually add things as the ideas pop up during development. The latter may work, but only if you have a well thought-out program base that allows for easy expansion. This is tough tho..
The problem of adding things is esp. relevant when you are creating a creative tool (e.g. a drawing tool or something). By working with the planned functionality you see patterns and you may wish to add a dedicated new feature that replaces those. In the end, your functionality becomes like a tree: you start simple but you end up with tiny twigs and leaves.
The problem of adding things is esp. relevant when you are creating a creative tool (e.g. a drawing tool or something). By working with the planned functionality you see patterns and you may wish to add a dedicated new feature that replaces those. In the end, your functionality becomes like a tree: you start simple but you end up with tiny twigs and leaves.