Siguiendo tus definiciones, diría que un videojuego, en término general, es un conjunto finito de estados, donde cada estado representa el "estado" o "fase", por así decirlo, donde nos encontramos (menú principal, nivel 1, cinemática entre nivel 1 y el 2...o incluso dentro de un propio nivel, el jugador con un accesorio u otro).
En cada uno de estos estados, se encuentra la información relacionada con ese estado (por ejemplo, en un estado "nivel 1", podríamos tener la posición x,y,z de nuestro personaje, su vida, enemigos, etc...), pudiendo cambiar dicha información, así como de estado, mediante una interfaz que conecte nuestro juego con el usuario que esté jugando (pulsando alguna tecla del teclado o del ratón).
Ahora que releo lo que he escrito, me ha quedado una definición un tanto rara
![más risas [+risas]](/images/smilies/nuevos/risa_ani3.gif)
y parecía fácil definirlo al principio
![partiéndose XD](/images/smilies/biggrin.gif)
Edito y amplio un poco mas
![partiéndose XD](/images/smilies/biggrin.gif)
:
En un juego medianamente grande, la información o estados que tenemos es demasiado grande/compleja para tenerla en un mismo archivo, por tanto, para tenerlo todo mejor repartido y ordenadico, se divide todo en diversos archivos (siguiendo la analogía de niveles que he dicho antes, pues un fichero por nivel, por ejemplo).
Aunque estén separados en diversos ficheros, a la hora de programar, se "incluyen" los ficheros que un fichero necesite (por ejemplo, en un nivel 1, necesitaremos incluir las funciones o acciones necesarias para mover a un jugador, etc...).
Por tanto, aunque en nuestra carpeta del juego veamos muchas carpetas y ficheros, se comportaría como uno sólo.