• Teoría del caos

    En los comentarios al artículo acerca del retraso de Cuphead se critican los retrasos en los lanzamientos de juegos. En otras ocasiones se ha criticado también (con razón) que los juegos salgan a medias o con pésimo rendimiento.

    Debido a la naturaleza y la tasa de incertidumbre del desarrollo los retrasos son inevitables en mi opinión. Sin embargo esto, que para mi es evidente como alguien que trabaja en esto, no lo es tanto visto desde el otro lado. Con esta entrada quería enumerar una serie de ejemplos, la mayoría basados en experiencias que han vivido compañeros o yo misma, con el fin de ilustrar un poco las mil maneras en las que un desarrollo puede retrasarse:

    - Un equipo novato pretende hacer un juego de acción con mundo abierto y multijugador. No ase falta desir nada más.
    - Se produce un salto tecnológico en mitad de un desarrollo de por sí largo. Mantener la tecnología original supone el riesgo de salir ya obsoleto, por lo que se decide migrar a la nueva.
    - Un desarrollo internacional está distribuido entre dos estudios con un desfase horario significativo. Las comunicaciones en general se ralentizan, y puede haber problemas adicionales debidos a malentendidos por el dominio de un idioma común.
    - Un diseñador se olvida de tratar una serie de casos a la hora de definir las reglas para una característica concreta. Entre él y el programador asignado pierden una hora reunidos hasta que terminan de rellenar esos huecos. El programador pierde un par más haciendo cambios en otros sistemas que se ven afectados por los casos no cubiertos.
    - La plataforma de turno actualiza sus librerías y herramientas de desarrollo, y es obligatorio para cualquier juego que corra en ella utilizar esa versión.
    - Los artistas se ponen creativos con los nombres de los ficheros y el juego deja de cargar. Casi todo el equipo pierde un par de horas en renombrar, corregir y asegurar que todo vuelva a funcionar.
    - En una conferencia le roban el portátil de desarrollo a un miembro de un estudio independiente
    - Márketing exige un trailer cinemático para la famosa feria F4. Los artistas han de dejar lo que estaban haciendo para ponerse con él. Esto retrasa también a un par de programadores que tenían tareas dependientes de arte.
    - Se cae la conexión de internet de la oficina.
    - Un tester reporta un bug y omite un paso que hace que el desarrollador pierda un par de horas en reproducirlo.
    - Dándole la vuelta a la tortilla, un programador se ocupa de un bug que parecía sencillo de arreglar y que termina haciéndole perder dos horas. El tester asignado se retrasa también.
    - Un programador de engine que trabajaba en unos shaders X se pone enfermo en mitad de un sprint y no puede ir a trabajar durante un par de días. Esto retrasa a un artista que estaba esperando a que terminara.
    - Un paro ferroviario retrasa un par de horas a un diseñador. Eso hace que una de las tareas asignadas para ese día se desplace al siguiente.
    - Un desarrollador de hardware presenta una consola nueva, y desde dirección/márketing se decide que hay que estar ahí para el lanzamiento.
    - Un jefecillo va a un evento del sector en el que le vende la moto uno de tantos gurús. La tecnología XYZ es el futuro. El jefe regresa convencido de que hay que adoptar esa tecnología aunque no aporte nada al proyecto.
    - Otro jefecillo pasa el fin de semana con el "jitazo" de turno. Tiene una epifanía y decide que hay que cambiar el diseño para que se parezca a ese. A la semana siguiente sale otro "jitazo".
    - El equipo tiene la idea clara, mantienen la visión, terminan a tiempo y realizan una sesión de playtest para estar seguros. Ninguno de los testers entiende el juego. Toca replantear varias mecánicas base y reimplementar el tutorial, afectando a todo el mundo.
    - La empresa de repente consigue un contrato publicitario con la empresa ACME. Una de las condiciones de la empresa es utilizar "product placement", pero sus logos, etc, etc, no casan con el estilo artístico del juego.
    - El equipo lanza un kickstarter y recaudan 3 veces lo planificado. Con tanto dinero deciden implementar funcionalidad no planeada que no termina de encajar bien con el diseño original.
    - Etc, etc, etc.

    Se pueden tomar muchas medidas para gestionar algunos de estos riesgos o errores y mantener los tiempos más o menos bajo control, pero aun así siempre va a ocurrir algo que repercutirá negativamente en el tiempo (el caso contrario es mucho menos frecuente, por desgracia). También es imporante el factor experiencia. Como digo, todos la podemos liar y seguramente lo haremos en un momento dado, pero alguien curtido estará más al tanto o sabrá cómo encarar esos problemas cuando ocurran.

    Si algún otro desarrollador me lee seguramente pueda aportar otras razones. Sed bienvenidos, en la medida que os lo permitan vuestros NDAs :P
    5
    5 Comentarios
    • ithil, 13/10/2016
      ¡Gracias, @amaldito! Ha sido un poco eso mismo que dices lo que me ha llevado a escribirlo. Llevo un tiempo leyendo comentarios muy ofensivos contra los devs en general por parte de gente que nunca se ha molestado en pensar lo que cuesta desarrollar un juego y la gente que está detrás, y a veces me asalta la tentación de responder a las borderías con un "¿pero tú de qué coño hablas sin tener ni puñetera idea?". Como, ya en frío, es probable que efectivamente no lo sepan y porque al final creo que es más productivo y sano para todo el mundo que entrar al trapo, pues me he liado a escribir.
    • rdemr, 25/10/2016
      Me ha encantado tu entrada, @ithil. Soy uno de esos que no sabe nada de ese mundillo, aunque NO soy de los que lo critica sinsentido, porque sí soy "artista" y entiendo que estos universos están llenos de peros y dificultades extra, tan enormes como la copa de un pino. Hasta intenté realizar un juego simple con Unity y me moría a la hora de programar. Que mi personaje tenía que correr, bailaba Ska y se tiraba él solo de la plataforma. Que tenía que saltar, toma elevación Mariana hasta desaparecer de la pantalla. Vamos un caos absoluto, que he tenido que guardar en un cajón por falta de tiempo. Y si eso ya me parecía exasperante, tu lista es para alucinar y ser comprensivos, desde luego.
      pd: he alucinado con la causa del robo del portátil de desarrollo en una conferencia, la gente puede ser muy odiosa.
Loader
Arriba