I've been reading up on a lot of articles covering data driven design for games. It seems to come down to:
- No hard coding
- No game-specific code in the engine
- Scripting for AI, cutscenes, et cetera.
- Generalizing code for reusability
- Component design
- Modularity
- Low coupling
- Editors (for data, maps, scripts)
- External data retrieval
- Constants kept in text files (
.ini
or otherwise) - Expose data through editors for scripting and manipulation by designers
Now, my question is, is this understanding correct?