¿Cuáles son tus consejos y trucos para terminar con éxito un proyecto de juego de pasatiempos en tu tiempo libre? ¿Cómo te motivas para seguir así y conducir hasta el final sin perder interés o motivación en el camino?
¿Cuáles son tus consejos y trucos para terminar con éxito un proyecto de juego de pasatiempos en tu tiempo libre? ¿Cómo te motivas para seguir así y conducir hasta el final sin perder interés o motivación en el camino?
Respuestas:
Estos consejos se aplican a cualquier proyecto de software de hobby, y no solo a juegos.
Establece pequeños hitos. Tener un objetivo como "el sistema de elementos funciona en mi juego de rol" está muy bien, pero eso implica una gran cantidad de funcionalidades poco especificadas que probablemente ni siquiera sabías que necesitabas. ¿Qué pasa con la "configuración del entorno gráfico"? O "Se muestra un sprite en la pantalla".
Haz un poco cada día. Las sesiones de maratón son geniales y todo, pero estás tratando de exprimir un compromiso a largo plazo en una vida ya abarrotada. Si hace un poco cada día, está haciendo progresos medibles y estableciendo una estructura dentro de la cual puede alcanzar sus hitos.
Escala de nuevo. Cualquiera que sea su gran visión, intente averiguar cuál es la porción más pequeña posible y haga eso. ¿Hacer un juego de rol? Comienza con una misión y sin NPC. ¿Haciendo un juego de plataformas? Comienza con un nivel y sin enemigos.
Prototipo temprano. Antes de meter un montón de tus horas de pasatiempo ganadas en un juego, averigua si sería divertido primero. No hay nada tan desalentador como esforzarse en algo durante docenas de horas solo para descubrir que el concepto básico apesta.
Desarrolla algo iterable. Mis proyectos de software de hobby favoritos son aquellos en los que el concepto básico permite retoques posteriores. ¿Tu juego es así? ¿Puedes enviar algo y luego volver a visitarlo más tarde y agregar cosas interesantes?
No construyas un motor o un marco. No quieres un motor, quieres un juego. No te preocupes por los bits reutilizables de framework y hasta después de que se envíe tu juego. Una vez que comience el segundo juego, puede volver al primero y ver si hay algo que pueda traer. Eso no quiere decir que no deba usar una práctica de desarrollo de software sólida, pero no comience escribiendo una clase de Sprite hasta que sepa lo que necesita que hagan sus sprites; se sorprenderá de lo poco que resultará ser. Comienza con una clase de Héroe, luego una clase de Monstruo, y luego, ¡mira! ¡Hay algunas cosas comunes!
El envío es una característica. Nunca terminarás tu juego, solo lo abandonarás. (= ¿Cuál es la cantidad mínima que puedes hacer antes de no sentirte completamente avergonzado de mostrar tu juego a otra persona? Lo más probable es que puedas hacer menos que eso y aún así tener un juego del que estar orgulloso.
De hecho, acabo de escribir un blog sobre cómo abordé el diseño y el desarrollo de mi último proyecto de iPhone. Puede encontrar valor al leerlo.
Algunos pensamientos para dejar aquí son
Aplicación de tareas pendientes
Utilizo Things para Mac y ToDoList (gratis) para Windows. Alternativamente, puede saltar a sourceforge.net o codeproject.com para obtener una aplicación de tareas pendientes. Me gusta ToDoList. Tendrá muchos bocetos, ideas, información de diseño que realmente necesita agregarse en un solo lugar. Tener una aplicación como esta con su lista de funciones lo ayudará a mantenerse enfocado.
Tareas pequeñas
"Implementar vista de tabla de clasificación" no es una tarea suficiente. ¿Qué implica eso? Descomponerlo -
Ver la imagen con mayor detalle reducirá sus posibilidades de perder un elemento clave de su implementación y le proporcionará motivación a medida que marca cada tarea.
Mantenga el alcance pequeño
No intente construir Starcraft III si es solo usted, desaliñado y purrdoodle. Simplemente no es factible. Baje sus expectativas y encuentre algo que aún le gustaría construir.
Eye-candy
Obtenga algo en la pantalla: puede que se sorprenda de la sacudida de su motivación. Tiendo a concentrarme en conseguir obras de arte temprano. Además, también puedo trabajar con un músico que también comienza a mostrarme cosas relativamente temprano.
Diviértete
Si estás esclavizando tu sistema de guardar estado durante toda esta semana, asegúrate de seguirlo la próxima semana con algo que sea divertido. Uno de mis momentos divertidos fue rediseñar el sistema de animación para mi interfaz de usuario.
Colaborar
Técnicamente no necesita comenzar a agregar personas a su equipo, pero hable con otras personas sobre lo que está haciendo. Vaya a tigsource.com o gamedev.net y comience a establecer contactos.
Prueba de
juego Comienza a recibir comentarios sobre tu juego. Estoy hablando justo después de que termines tu prototipo inicial. Deje que algunos de sus amigos jueguen con lo que tiene, obtenga comentarios, tome notas y revise su plan si es necesario. Asegúrate de probar fuera de tu reino de comodidad y lanza una red que incluya a otros desarrolladores de juegos. A veces, los amigos y seres queridos no son personas críticas.
Inicie un blog
Hablar sobre lo que está haciendo le permite crear una marca para usted. Esto no tiene precio cuando llega el momento de enviar su producto. Solo mira lo que Wolfire está haciendo. Son absolutamente pura victoria en la construcción de una marca para ellos mismos.
Tómese un descanso
Si su mente no está en el proyecto en un momento específico, no intente forzarlo. Levántate y sal a caminar o toma una siesta rápida. Ese es el lujo de ser independiente. Al final, crearás un mejor producto para hacerlo.
Mi mayor consejo # 1: ¡ Desconecte su cable de red!
Tengo el ritual de desconectar mi cable de red antes de acostarme. A la mañana siguiente: no estoy en línea, así que no tengo sitios para visitar, ni correos electrónicos para leer, ni personas para chatear, etc. Así que, naturalmente, me pongo directo a trabajar en mi juego.
No me vuelvo a conectar hasta que sea absolutamente necesario. Si necesito algo en línea, lo escribo para buscarlo más tarde o uso el navegador de mi iPhone.
Es útil tener cosas como MSDN descargadas y disponibles sin conexión.
El mayor problema con los proyectos de pasatiempo es no tener un alcance bien definido. Muchas personas comienzan queriendo hacer el mejor juego con horas de juego y todas las ideas geniales que tienen. En su lugar, debe intentar reducir su idea a algo manejable y luego elaborar un horario razonable. Es cierto que los plazos están en desacuerdo con que el juego sea un proyecto de pasatiempo y no un trabajo a tiempo completo, pero son buenos para mantenerse motivado y dividir las tareas grandes en pequeñas tareas manejables.
También puede mantener un archivo de historial de versiones que se actualiza cada vez que agrega algo al juego. Mejor aún, debe usar el control de versiones y usar el historial de confirmación para eso. Es una buena forma de medir tu progreso y mantenerte motivado más tarde (mirando todas las cosas que ya hiciste).
El creador del juego Grauioutous Space Battles, un desarrollador independiente solitario, resumió algunos consejos útiles sobre cómo hacer tu propio juego en una publicación de blog. Algunos de ellos pueden ser motivadores incluso para proyectos de hobby.
Blog de Cliffski: cómo mantenerse motivado mientras se programa un juego
Extracto:
- Codifica algo que te guste
- Rodéate de inspiración
- Mantenga un registro de lo que hizo cada día.
- Hacer algo brillante
- Duras lecciones en dinero
- Esté atento a lo alto que está el listón (conozca a su competencia)
- Toma descansos cortos.
Recientemente me di cuenta de que cada vez que leía la publicación de blog de otro desarrollador independiente sobre sus actualizaciones, inmediatamente abro mi IDE y empiezo a trabajar. Entonces, mi consejo para mantenerte motivado es: lee otros blogs (desarrolladores de juegos) ;)
Aquí hay una lista rápida:
Comience creando un juego que sea estúpidamente simple, y termínelo y publíquelo en línea en algún lugar. Recuerda que incluso algo aparentemente simple como el pong podría resultar bastante complejo si eres un nuevo desarrollador de juegos, y comenzar con un juego simple te mostrará si tienes la paciencia para emprender un proyecto más grande.
Trabajé en Snapshot (www.retroaffect.com) además de mi trabajo a tiempo completo durante casi 8 meses antes de convertirlo en mi trabajo a tiempo completo. Trabajaría todo el día, luego volvería a casa y trabajaría en Instantánea hasta que me durmiera. A veces era demasiado, pero otras veces (la mayoría de las veces) era increíble.
Definitivamente sugeriría leer sobre esto: http://positech.co.uk/cliffsblog/?p=753
También recuerda que si es algo que solo estás haciendo por diversión, recuerda mantenerlo así ... divertido. Si te quemas, entonces tu proyecto nunca terminará o se mostrará en el producto final.
Según mi propia experiencia, es más fácil mantenerse motivado si tienes a otros trabajando contigo. Entonces:
Ciertamente, mis consejos clave serían compartir su entusiasmo y mantener el proyecto en un estado que funcione .
He estado trabajando en mi proyecto de pasatiempo ahora por alrededor de 2-3 meses. Eso significa una o dos noches de vez en cuando, más ocasionalmente los fines de semana. El proyecto está quizás 2/3 hecho para una primera versión adecuada. Tal vez sea demasiado pronto para llamarlo éxito, pero aquí están las cosas que me han mantenido hasta ahora:
1. Compre un bloc de notas para guardar cada idea que tenga. No tienes que ponerlos en tu juego, pero puedes usarlos para obtener más inspiración.
2. También estoy tratando de mantener todo lo que todavía tengo que hacer en una pizarra de corcho o pizarra para que siempre pueda buscar mis próximos objetivos para terminar.
3. No intente implementar las cosas de la mejor manera en el primer intento. Intenta hacer que las cosas funcionen y hazlas agradables en un paso posterior.
Entonces podría tener diferentes características en diferentes estados de simpatía:
Ayuda mucho en la motivación si las cosas funcionan primero antes de considerar hacerlas agradables y suaves. La desventaja de este método es que codificará más código que pondrá en la papelera al final.
4. No implemente demasiadas características paralelas. Intente concentrar en <= 3 características a la vez. Por lo tanto, tiene un lugar al que puede cambiar si se detiene en una característica, pero no en tantas características que le agobia la cantidad de trabajo por hacer.
La respuesta corta: iterar, iterar, iterar. Comience con poco y ejecute algo antes de intentar implementar todo el sistema. Todavía es importante hacer un diseño y planificación de alto nivel, pero poder ver con qué estás trabajando y probar las partes a medida que avanzas es increíblemente importante para mantenerte motivado; es difícil para mí (y para la mayoría de los programadores que conozco) trabajar día tras día en algo que en realidad no les muestra resultados visibles.
Tengo una buena imaginación, pero malas habilidades de organización. En el lado creativo, me ha resultado útil en mi caso utilizar una herramienta que me ayude a realizar un seguimiento de todo e imponer cierta estructura general. Utilizo Writer's Café, que es lo suficientemente flexible como para adaptarse al diseño del juego. Estoy seguro de que hay otras herramientas disponibles. Lo más importante, creo, es establecer hitos. Eso te mantiene enfocado, te permitirá medir el progreso y te dará una sensación de logro cuando los alcances.
Otro pequeño consejo. - Reúna un equipo - Comuníquese con su equipo de forma regular (skype, live, correo electrónico, etc.)
Todos los consejos mencionados por otros son buenos. Si crea un equipo, los miembros del equipo pueden apoyarse mutuamente. Además, al tener reuniones periódicas, lo alienta a trabajar en su proyecto para mostrar el progreso o alcanzar su fecha límite.
Otras personas pueden ser tu mayor recurso.
Así es como ensamblé mi estudio de juegos. Somos tres socios trabajando en el juego durante los últimos dos años como pasatiempo de fin de semana. Estamos viendo la luz al final del túnel ahora.
Diviértete con eso.
Utilizo collabtive para mis proyectos, y esto me permite configurar tareas e hitos. Cuando trabajo en un proyecto con varias personas, también me permite chatear con ellos y asignarles tareas específicas. Además del software de gestión de proyectos (que es de código abierto), también uso Subversion para ayudar a que varias personas trabajen en el código al mismo tiempo. Ambos programas se ejecutan en un pequeño servidor Linux, y honestamente, ¡aún no he tenido un problema con esta configuración! :)
Para administrar un proyecto de juego de pasatiempos necesitas algunas cosas: motivación y las herramientas adecuadas.
Mi respuesta se centrará en usar las herramientas adecuadas, ya que si te tomas en serio hacer un juego en tu tiempo libre, con suerte ya tienes la motivación baja. :)
Recomiendo usar alguna forma de control de versiones para tu juego. Sitios como Github o Bitbucket proporcionan alojamiento para git y mercurial (soporte de bitbucket mercurial, no github). Este es su primer paso para organizar su código y sus activos.
Lo siguiente es poder definir bien una acumulación de tareas y características que deben realizarse. El mejor proceso para esto depende de usted, el desarrollador. Algunas opciones incluyen la creación de un Documento de diseño del juego (GDD), un Documento de diseño técnico (TDD) y un Registro de funciones. Puede encontrar una buena muestra de un GDD aquí: http://www.runawaystudios.com/articles/chris_taylor_gdd.aspPara el TDD, ejecútelo de manera similar al GDD, pero céntrelo más en los detalles técnicos de la programación. Entonces, qué lenguaje va a utilizar, marco, motor y otros detalles técnicos. Tanto el GDD como el TDD lo ayudarán a comprender mejor el alcance del proyecto y descubrir cuál es la lista de tareas pendientes. Puede hacer esto en la mitad del proyecto si ya lo ha comenzado, ya que siempre es importante cambiar el alcance y saber cuáles son exactamente sus objetivos y características.
Una vez que hayas hecho eso, deberías estar listo para comenzar a desarrollar. He escrito una publicación de blog sobre cómo usar github para desarrollar un juego de manera efectiva, incluido el uso de sus características wiki, problemas para el seguimiento de errores y simplemente administrar su proyecto. Puedes encontrar eso aquí: Uso de Git y Github para el desarrollo de juegos
La definición de una fecha límite flexible para su proyecto puede o no ayudarlo a mantenerse encaminado. Cada individuo es diferente, y solo usted sabrá cómo motivarse. Pruebe diferentes técnicas y vea lo que funciona para usted. El desarrollo de juegos (y el desarrollo de software) generalmente demoran mucho más de lo que la gente estima inicialmente. Así que no se desanime y quédese con eso.
Si necesita más ejemplos de GDD y TDD, tengo el mío en Google Doc's, ¡y no me importaría compartirlos!
Lo primero en tu mente debe ser que trabajas para ti y para tu propio entretenimiento. No permita que su proyecto sea secuestrado por las expectativas y deseos de otros, particularmente cuando sus intereses cambian con el tiempo.