Creo que una de las cosas más importantes que puedes hacer es elegir un juego que disfrutes jugar. Esto ayudará a mantenerlo interesado en él y lo familiarizará con la forma en que el código se traduce en la perspectiva de los jugadores.
Una vez que hayas elegido ese juego, independientemente de cuán grande sea, no tienes que tratar de descubrir cómo funciona cada línea de código. Elige un pedazo y mira eso. Por ejemplo, intente descubrir cómo se almacenan los datos del jugador o cómo se dibuja un elemento del menú, etc.
Lo siguiente que puede hacer, que va junto con mi parte anterior, es intentar cambiar algo. No es algo enorme (al principio), solo algo simple y notable en el juego. Incluso algo tan simple como el texto de un botón en un menú o agregar un elemento de menú o cambiar los cálculos de daños. Tal vez piense que deberían haber hecho algo diferente, intente cambiarlo usted mismo.
Cuando me interesé por primera vez en el desarrollo de juegos, estaba realmente interesado en los juegos de rol 2D en línea. Así que encontré la fuente de uno en línea y comencé a desarrollarlo. Agregar mis propias características y ajustar cosas, corregir errores, etc. Eso fue en VB6 hace unos años y ahora estoy usando C # y XNA y escribiendo mi propio juego desde cero. Debido a que disfruté los juegos, me motivó a querer trabajar en ello, para mejorarlo. Casualmente, esta es también la forma en que aprendí muchas de las técnicas de programación, depuración y resolución de problemas que uso hoy en mi trabajo diario no relacionado con gamedev.
También es muy útil si el juego tiene una comunidad de modders a la que puedes hacer preguntas y obtener ayuda y ejemplos. Pero, de nuevo, incluso si eso no existe, usted ya está aquí y estamos listos para ayudarlo.