Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Práctica de uni: Caracol of Duty

Iniciado por Zaelsius, 22 de Mayo de 2008, 09:56:23 AM

« anterior - próximo »

Zaelsius

Caracol of Duty es un pequeño shooter ala Heavy Weapon que hemos realizado entre cuatro compañeros de la Universidad de Alicante para la asignatura de Juegos y Realidad Virtual :)

Aunque yo me abré comido como un 40% del trabajo, el juego es prueba viviente de que teniendo una experiencia previa en programación (mis compañeros), es posible comenzar a desarrollar juegos si se pone empeño.

Aunque en el apartado técnico no he hecho nada nuevo, esta práctica me ha permitido desarrollar un poco más mi lado gestor y mi lado grafo.



Enlace a la presentación que hicimos en clase, que aunque pierde bastante sentido sin el comentario hablado, quizá os resulte interesante:
http://www.slideshare.net/julio.gorge/caracol-of-duty

Finalmente, la descarga del juego para Windows y Mac OS X:
http://www.lemonteam.com/cod/Caracol-of-Duty-Win.zip
http://www.lemonteam.com/cod/Caracol-of-Duty-Mac.zip


Ah, el juego se entregó tal está y así se quedará, a pesar de tener errores obvios y poderse mejorar en muchos apartados. Ale, a disfrutar de los dos minutos que dura el juego.

PD: Podéis cambiar las opciones de vídeo tocando el fichero .ini.

Harko

Jajajaja, esta entretenido el jueguillo ete :D

No esta nada mal, hasta podria daros por ampliarlo algun dia y todo jeje
-=Harko´s Blog=-
Fui el primer civil en probar el "Lord of Creatures" y ademas usaban mis cascos. :D

-=Portfolio=-

Alguno de mis juegos:
-=Feed The Frog=-

Neroncity

Pogacha

Lo han hecho en poco tiempo segun veo, y segun los slides ha salido bastante bien dentro de lo planeado.

Supongo que la parte mas importante ha sido la de gestionar el proyecto con lo aprendido del curso ese que estabas tomando.
Felicitaciones ;)

Lo unico que se me ocurre objetar es el tema de la interpolación, por que no han usado interpolación lineal?
He de suponer que el bicho final que escala algunas cosas es el culpable.

PD: Aparte te sacaste el gusto de hacer un heavy weapon :D

RobiHm

Web : Indómita
Blog : MiBlog
Evobas : Evobas
Kobox : Kobox

ethernet

Interesantes las slides, mi opinión sobre la planificación del proyecto:

- podrías haber desgranado un poco lo que hicisteis en cada milestone
- milestones de 4 semanas me parece muchísimo. Mi experiencia me dice que los milestones cuando más cortos mejor y las razones son claras: cuando haces un milestone largo terminas por tirar mucho tiempo, "dale a un programador 3 semanas para hacer una tarea y terminará desperdiciando 2". Un milestone requiere tener cierta funcionalidad o hito implementado, esto es, algo visible y eso es bueno porque te centras en lo que de verdad importa, el feedback es muy rápido ya que tienes funcionando el software al instante. Además sube la moral del equipo, anda que no mola ver como en una semana tienes lo planteado funcionando.
milestones cortos->feedback rápido-> corrección de bugs rápido -> nuevo código en base a código cerrado.
Nosotros al comienzo hacíamos milestones de dos o tres semanas, pero es mucho mejor hacerlos de 1 semana, así también nos permite replanificar. Es cierto que no es la cosa super mega c00l de planaificar un proyecto a meses vista, pero cuando el equipo es pequeño, la comunicación es rápida y no considero necesario atarse.

- En cuanto a subversion: tener un repositorio es importante, pero más importante es tener integración continua, esto es, en cada commit se haga un build y este build quede publicado para jugarlo. Las razones para esto son claras, primero exige que el código compile y así el equipo no se para nunca y exige lo mejor de los "commiters", siempre tienes feedback y da moral, porque no tienes que esperar para tener tu juego. Montar esto es un día como mucho y ahorra tiempo. Además si es necesario implementar una tarea "larga" se puede hacer en ramas.

- última fase de test: Para mi la fase de test es desde el primer día
- Memorias y documentos: qué objetivo tienen? el feedback de horas lo tienes de los propios commits y no hay nada mejor que eso para sacar estadísitcas y esas cosas. Todo se puede hacer automático con muy poco trabajo por parte del programador.

Zaelsius

Cita de: "ethernet"Interesantes las slides, mi opinión sobre la planificación del proyecto:

- podrías haber desgranado un poco lo que hicisteis en cada milestone

Claro, cada hito tenía unas tareas y entregables asociados que comenté de manera somera, pero no aparecen en las diapositivas.


Citar- milestones de 4 semanas me parece muchísimo.
Exceptuando el primer hito, todos tomaron 2 semanas (la segunda fase tiene dos hitos). Durante las cuatro primeras semanas (4 sesiones de laboratorio) simplemente nos dedicamos a conocernos, decidir qué tipo de juego ibamos hacer y realizar la documentación previa del proyecto que tenía que ser validada por el profesor de turno.

También tuve que enseñar el manejo básico de SVN, PTK y VC++ 2005 a mi equipo... despacito y con tacto (no nos conocíamos ninguno).

No era factible hacer los hitos más cortos dada la situación personal de la gente (que si el trabajo, el resto de asignaturas, el PFC, el máster), aunque todas las semanas nos juntábamos al menos una vez para programar por parejas e ir progresando.


Citar- Memorias y documentos: qué objetivo tienen? el feedback de horas lo tienes de los propios commits y no hay nada mejor que eso para sacar estadísitcas y esas cosas. Todo se puede hacer automático con muy poco trabajo por parte del programador.

Las memorias nos las exigían para que el profesor pudiese hacer un  seguimiento del proyecto.

Por cierto, ¿cómo obtienes tú el número de horas que toma implementar una tarea mirando el log de SVN? ¿Lo añades en la descripción del commit usando un cierto formato o..?


En general creo que nos fue bien, hemos terminado la práctica y aun nos llevamos bien ^^

ethernet

Sí, usando un formato de commit:

fixed #1234


de esa forma haces referencia a un ticket del tracker donde se detalla la tarea.

http://trac-hacks.org/wiki/TimingAndEstimationSVNPostCommitHook

De esta forma cada commit queda enlazado con una tarea del tracker automáticamente,  muy útil porque una tarea casi siempre se refleja en código y porque puedes sacar releases con ciertos changesets al ser independientes. Además allí quedan reflejadas las horas del ticket.

sietrix

Puff !! que vicio XD.
Me ha encantado lo poco que llevo jugado, es muy fluido.
Y como te curras las presentaciones, eres un máquina !!
Un saludo.






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.