There is hell lot of controversy about document generation in software development. Some say it's needed for communication and some say it will only waste the programmers' time.
I say that there is a minimal set of documentation every projects needs. These documents need to contain the reasons behind the choices that are made. There is always this problem in change process of the software (especially games) that a feature or design choice seems arbitrary and will be changed and further on you realize that the whole system's consistency is jeopardized.
Of course, reviewing the change will lessen probability of such mistakes. But such documents will minimize the effort to find such reasons and dependencies.
