Guía de desarrollo de juegos Indie

krew

#1048 la página está realmente completa, pero no sabría ni por donde empezar (bueno, udk lo controlo a un nivel bastante aceptable, en especial 'kismet', el año pasado hice mis pinitos)

#1049 creo que ya lo comenté unas páginas atrás, en la UPV te metes a informática y en 2º curso escoges el módulo. Por ahora, me matriculo en informática y luego cuando tenga más conocimiento de causa ya veré (en el apartado "tecnología específica" de esta web http://gradoinf.webs.upv.es/?page_id=321 están las opciones, me llaman sobre todo ing. software y computación)

#1050 Bueno, gracias, pero mi problema no está en cómo sino en qué centrarme. Modelar, he modelado un poco en la versión para educación de 3ds max (nada serio, un aparato de estos que pulen el suelo es lo más complicado que he hecho, y ni texturizado ni nada) y de música vi el SunVox que me encantó, pero claro, para hacer algo molón hay que saber como funciona el programa.

Tomo nota en lo de centrarme en programación, pero ahora no sé que es mejor, si estudiar C++ o tirar por ActionScript... De ActionScript toqué unas cosillas (básicamente nada, para hacer girar un logo en UDK con las teclas Q y E) y por lo que ví, si no tienes mucha idea de como programar puede ser un verdadero desastre porque hay varias formas de estructurar tu programa, unas más limpias y otras que, aunque funcionen, son un desastre.

1 respuesta
GreyShock

#1051 Yo recomiendo empezar por C++ porque es lo más chungo y así luego poder pivotar más con el resto de lenguajes, pero por ejemplo, yo hasta hace unos meses de C++ sólo sabía que existía xD Cada uno se busca las castañas como bien puede, así que lo que te recomiendo es que empieces por lo que más disfrutes y el resto vendrá sólo por tu sed de conocimiento xD

Yo empecé a estudiar Visual Basic a los 12 años y ahora no lo uso para nada, pero me enseñó a programar y a pensar en código. Luego mi vida ha sido actionscript, php, javascript... desarrollador web de pura cepa, vaya. Pero si sabes programar, sólo hay que echarle huevos y empaparse de la sintaxis y la filosofía de cada entorno/lenguaje.

#1053 la pregunta es si sabes programar... si no, yo empezaría por ahí.

A

Pues yo no se por donde empezar, no me quedo claro que programa usar ni leyendo #1

2 respuestas
KaR

Buenas, os voy a contar mi corto pero intenso bagaje.
(esto también vale como recomendación a #1053)

Introducción
Allá por marzo me picó la curiosidad. Tenía experiencia en desarrollo Web (java principalmente y .NET), pero nada de python o desarrollo con juego. Me gusta jugar a los juegos pero tenía más ganas de crearlos, además ahora hay muchas librerías/Frameworks y algunos libres.

Documentación
Encontré una página cojonuda con dos libros gratis para aprender de 0 a hacer juegos, incluso aunque no sepas programación:
http://inventwithpython.com/
-Su primer libro es para hacer juegos tipo texto simples. Y para aprender python.
-Su segundo libro ya usa pygame (libería multimedia) que permite mostrar imágenes y sonidos.

Versión papel, pdf y kindle. Código fuente incluido.

¿Porqué Python mola?
Rápido principalmente por su tipado dinámico, declaración implicita. Perfecto para prototipado, aprender y proyectos pequeños. Es el 8º lenguaje de programación más usado. De los más usados por Google.

Ejemplo de sintaxis:
VB: Dim nombre as Clase = new Clase
Java: Clase nombre = new Clase();
Python: nombre = Clase

Picas mucho menos código y haces lo mismo. Olvídate de puntos y comas, llaves y demás "chusta".
Yo lo uso en el curro para aplicaciones pequeñas (web, conexión con BBDDs) y da gusto :)

¿Porqué pygame mola?
Comunidad grande, bastantes ejemplos en la web oficial, incluso puedes subir tus creaciones allí. Es gratis. Por sacarle algún 'pero', no te ofrece de serie menus/widget predeterminados, huds, etc. Es decir, tu te picas todito. Que quieres hacer un menu, pues currate los bordes, los colores, la letra, y la transicion de ventana a ventana. Ventaja, entiendes como funciona todo por debajo ;)

Mis resultados
A día de hoy, casi tres meses después de mi comienzo, ya he creado 3 juegos simples. un video de mi último juego:

Para quién quiera jugar, aquí tenéis la versión para win32
https://bitbucket.org/apadentro/brainwashed_pyweek14/src/ef5a32278110/compilados
Fue para un concurso llamado pyweek, al estilo de ludum dare, pero menos estresante porque dura 7 días ;D

Otros
En teoria se puede portar un juego de pygame a android, ese es mi próximo objetivo, pero no es trivial, ojalá fuera sólo un click :P

Recomendaciones
-Si eres nuevo, busca algo que use mucha gente. Mayor comunidad, mayor probabilidad de encontrar info.
-Elige un lenguaje con el que estés cómodo. Yo recomiendo Python. Python... Python!!!
-Otra buena opción es HTML5 + javascript. ¿Porqué? Porque con tener un navegador web, ya no necesitas más para jugar. El usuario no tendrá que instalar librerías, ni descomprimir zips. Pega: nunca llegará a adaptarse a un móvil tan bien como una aplicación nativa APK (cualquier solución basada en Python tiene el mismo problemo). Unity pinta bien, pero nada más abrirlo asusta. Yo le veo para nivel avanzado.
-No te flipes. Para empezar 2D y si es un poco a bajo nivel mejor. Game Maker te da todo masticadito y no sabes que pasa por debajo. Es muy importante entender el gameloop (leer input de teclado, actualizar estado del juego, pintarlo, leer, actualizar, pintar, leer, actualizar, pintar,...etc etc xD)
-Repito, no empezar por 3D. OpenGL no es fácil. Recuerda, es una coordenada más. Aceleración gráfica. Rendimiento.Vistas. Buffers. En resumen, más problemas para el iniciado.
-Hackear juegos de otros. Una buena idea es modificar los juegos que hay en los libros que os he comentado antes.

Resumen
En mi caso HA FUNCIONADO, aunque hay que echarle horas chavales ;)

Un saludo y el que quiera más info que me avise

PD: este hilo esta genial, hay información y enlaces buenísimos, gracias :)

3 2 respuestas
eisenfaust

#1054 "El 2º más usado por Google".

¿Fuente? Dudo que lo usen más que C++, Java y Javascript.

Yo particularmente lo odio.

1 respuesta
KaR

#1055 no he encontrado la fuente donde lo leí. Del lado servidor estoy seguro que está en el top3 de Google.

Tampoco he encontrado nada de la popularidad en Google de los lenguajes que mentas ;)
Lógicamente C++ se usará siempre por ser de los más eficientes para tareas en las que el tiempo es crítico y Java por Android ha subido mucho.
Javascript del lado cliente evidentemente no tiene rival...

De todas formas edito mi hilo, rectificar es de sabios :D

Isotoperd

Por si a alguien le interesa practicar animación en Blender, aquí tenéis un modelo que os va a servir para practicar.
Blender es gratuito y se complementa muy bien con OpenGL.
Descargar modelo

dr_Rouman

Google siempre le ha dado bastante importancia a Python, sin ir más lejos AppEngine al principio era Python only, no? Luego ya se abrireron a Java también.

Los lenguajes de programación son herramientas al fin y al cabo. Em este caso Python y pygame está bien, pero no puedes fliparte mucho. Para juegos sencillos, aprender algunas y prototipar es maravilloso. En cuanto te quieras flipar necesitas algo mejor. No hay más que ver las cosas que hay hechas con Pygame por ahí, ninguna es nada especialmente increíble.

KaR

si, como bien indica dr_Rouman, pygame es válido para empezar y prototipos pero evidentemente no es el medio definitivo, y no es tan profesional como UDK o Unity.
Todo depende de necesidades y gustos :)

Achiss

#1054 Yo aprendí a programar con python y en un par de semanas con pygame siguiendo un curso hice un pequeño arkanoid, ahora me lo he bajado y lo he visto un poco cutre, pero me ha hecho gracia, quedó tal que así:

Pero para alguien que no sepa python y que el interés que tenga sea únicamente por los juegos no podría ser una mejor idea (aunque sea un poco más duro el inicio) empezar con C++ y SDL?

1 respuesta
Meleagant

#1060

Es bastante más duro ese inicio xD

GreyShock

Hombre.. no sé cómo de fácil será, pero los juegos que salen en la web de pygame son bastante regulares :P Alguien que haya tocado las dos cosas sabría decirme en qué se diferencia de trabajar con HTML5?

Ya que estamos, os traigo dos webs interesantes pero que aún están en pañales.

http://desarrolladoresdevideojuegos.es
Es un portal de desarrollo español que pretende hacer también de bolsa de trabajo y de expositor para los que quieran promocionar sus juegos de navegador.

http://clay.io/
Está recién hecha y pretende ser una especie de kongregate para juegos HTML5. Han contactado exprésamente conmigo porque les ha molado Brutal Collage :D Está muy verde aún, pero ofrecen servicios de leaderboards, logros, monetización del juego, salas de juego para multiplayer y otras herramientas útiles para difundir nuestros juegos.

Jastro precisamente me hablaba ayer del problema de vender juegos HTML5 y la ausencia de palataformas como kongregate, y yo creo que clay.io, si evoluciona bien, puede ser una buena plataforma para sacarles beneficio.

2 respuestas
dr_Rouman

No he hecho de juegos con HTML5, pero seguramente no se programará con el típico bucle de input() -> update() -> render(), sino que ser hará con eventos asíncronos (más Javascript ese planteamiento)

Pygame te da las funciones para dibujar cosas, controlar la entrada, para reproducir audio y para el reloj, lo demás te lo curras tú xD En realidad es prácticamente un port 1:1 de SDL

Clay.io tiene muy buena pinta, lo llevo siguiendo desde hace tiempo y me mola. El multiplayer será con Websockets o Socket.io supongo, no?

1 respuesta
Jastro

#1062 han escuchado mis lloros xDDDDDDD

B

Bueno, pues finalmente aquí os lo traigo, cutre, inacabado y seguro que con bugs, os presento el proyecto en el que estoy trabajando para final de curso (me quedan 2 semanas para su entrega.)

Morir jugando a algo muy cutre.

Información previa:

  • Movimiento con las flechitas del teclado.
  • Se pueden mover los cubos con el ratón y clic izquierdo.
  • Hay 2 niveles jugables.
1 1 respuesta
KaR

#1062 sin haber probado a hacer juego en HTML5 + javascript, creo que ir por HTML5 tiene más proyección. En cuanto a diferencias.. pues ni idea a la hora de crear juegos.

En pygame hay mucho juego cutrecillo pero también los hay muy buenos. Eso depende más del programador que de la herramienta ;D

GreyShock

#1065 Enhorabuena! Un juego que se puede jugar :P El concepto está bien, aunque es bastante cutrillo, se le podría dar más jugo al rollo de mover las cajas :)

#1063 No sé cómo es HTML5 a pelo, pero con ImpactJS sí que hay bucle de input, update y render :P

Por cierto, para presumir un rato, deciros que brutal collage ya está publicado en clay.io :clint:

http://clay.io/store

Ahí podéis verlo. Me ha costado mucho publicarlo porque el backend de developer aún tiene muchos bugs y he estado haciendo de tester intercambiando mails con uno de los creadores de la página xD Pero son simpáticos y parece que van a llevar esto a buen puerto :)

1 1 respuesta
B

#1067 Tu juego comparado con los demás de esa página parece el mejor, la verdad.

Como va el proyectillo ese nuevo del que estabais haciendo conceptos?

1 respuesta
GreyShock

#1068 Pues estamos precisamente haciendo pixelart a saco este finde. Hacemos maratones intensivas de viernes a domingo para darle caña al desarrollo. En la web hay un resumen de las jornadas del finde pasado, y en el hilo de pixel art también vamos poniendo cosillas.

http://www.deconstructeam.com/explorando-el-pixelart/

Este lunes recapitularemos qué tal las jornadas de este finde, y a ver si podemos sacar animaciones ya :D

#1070 No tío, yo soy el que hace la foto xD En la próxima pixelizaré mis barbas y mi cabellera indie xD

2 respuestas
B

#1069 Eres el que sale más cantoso?

Estaré atento a la web entonces.

PD: A la chica le habéis puesto cara de feto xD

1 respuesta
Humanoide

#1069 vaya tela como os lo montais.
desde luego lo flipo viendo como estais aprendiendo todos con el pixel art a lo tonto en nada, eh?

1 respuesta
GreyShock

#1071 Pues nos estamos pegando mogollón de horas entre pecho y espalda para que parezca easy xD

Mirad que precioso artículo han escrito de Brutal Collage en el blog de clay.io !

http://blog.clay.io/brutal-collage

Que gustirrinín ver que gente empieza a fijarse en tu curro :D

2 1 respuesta
Meleagant

#1072 Qué envidia más sana dais :)

¿Estáis preparando algo con AGS? Lo digo porque he visto en Twitter lo del Gemini Rue.

1 1 respuesta
GreyShock

#1073 Jajajajaj qué va, lo jugamos para fijarnos en su arte y hubo que pasárselo porque es una maravilla :P

Aunque me molaría un montón hacer una aventura gráfica, sí señor. Con ImpactJS sería bastante fácil, y así podría hacerla para navegador e incluso para móvil, siendo point & click.

Por cierto, los decorados de Center 7 de Gemini Rue, son una PUTA BASURA xD parece que los hayan hecho deprisa y corriendo porque en comparación con la ciudad, se nota el photoshop a saco y pinceladas con desgana.

Eso sí, grandiosos los cameos de Cowboy Bebop

Es un digno homenaje, porque se nota mogollón que el juego bebe de la serie.

#1075 Precisamente, este finde también hemos jugado al Superbrothers, además lo cargamos en una tele 1080p y el juego corre a 1920x1080! Y se ve PRECIOSO. La música es brutal también, a ver si le dedicamos más horas porque es digno de admirar.

1 respuesta
Isotoperd

#1074 Aun no he jugado GR, pero Sword & Sorcery EP también es point & click, y ese juego lo tengo en un pedestal, el estilo de pixelArt me parece una jodida maravilla.

EDIT:

2 1 respuesta
B

Creo que me voy a poner a currar en el proyecto ahora en las prácticas.. hum..

txandy

Simplemente me ha parecido curioso: http://www.calle20.es/1236/artes/diseno/el-arte-del-pixel/

Humanoide

cada vez le doy más vueltas a mi proyectillo, viendo que se me está escapando de las manos en cuanto a complejidad y que yo solo no voy a ser capaz de hacerlo más que nada a nivel artístico, y la verdad es que no sé qué hacer. Porque aunque pueda recortarlo en alguna que otra cosa, también necesito ampliarlo en cierto modo con respecto a todo lo que ya tengo pensado y pf, la verdad es que no sé cómo seguirlo.
no voy a hacer borrón y empezar de cero porque la idea está ahí y me gusta demasiado como para simplemente dejarlo ahí pero el problema es que también me gusta demasiado como para acabar recortando cosas.
y aquí estoy comiendome la cabeza pensando qué coño hacer xDDD

1 respuesta
Isotoperd

#1078 Expón el problema, aquí todos sabemos un poco de todo y igual te podemos guiar.

1 respuesta
Humanoide

#1079
aquí lo poco que enseñé http://www.mediavida.com/foro/9/guia-desarrollo-juegos-indie-443345/28#827

actualmente tengo más cosas ya hechas de lo que hay ahí, y de momento el resto está garabateado en cuadernos. uso gm y aunque manejo gml más o menos (el lenguaje interno), no creo que sea minimamente comparable a ninguno otro lenguaje con lo cual... , pero aun así supongo que quizás me podais echar una mano.

la idea del juego es básicamente un tds espacial basado en exploración y supervivencia con los típicos elementos rpg. mundo abierto bastante grande, dividido en 'sectores' -para hacer más fácil el tema de llevar un mundo enorme que es algo que en gm falla bastante lo intentes como lo intentes- aunque el juego consta de tres tramas principales (algo así como objetivos muy generales relacionados con lo poco que se sabe de la trama que ayudan a expandirla y a hacerte ir a algun sitio en concreto, pudiendo ir a por cualquiera de las tres y 'resolviendo' la trama principal en el orden que quieras) quiero basar la gracia del juego en explorar "just for fun".
para eso metí el radar, el cual muestra lentamente gran parte de lo que tienes a tu alrededor. pero pensé que quizás sería más divertido añadir algo más (y que el hueco de abajo a la derecha no me cuadraba para una consola de texto y quería meter otra cosa) así que pensé en una radio. puedes cambiar entre frecuencias y alguna que otra, dependiendo de donde estés, emitirá un sonido. en el borde del círculo de la radio, te mostrará de que dirección viene el sonido, para así facilitar la tarea de encontrar "cosas" en un mundo abierto y desconocido (más o menos como podría ser el tema de los iconos en el radar de fallouts / elder scrolls) y así meter la gracia de captar soniditos del espacio joeajeajoe.
toques rpg lo decía también porque el jugador puede mejorar características mientras progresa, mediante el típico sistema de niveles y skills, con dos tipos: de la nave en sí (nuevas funciones como el sistema de defensa, un superturbo para atravesar sectores en cero coma, mejoras para el radar para pillar un rango más amplio, más protección... lo típico, vaya) y de ataque (con tres botones para el ataque, uno de un único disparo, otro a ráfaga, y otro rollo misil. con su respectivo progreso cada uno desde la mierda más simple al abuso más grande de cualquier juego de navecitas japonés).

yyyyyyyyyy... pf, la verdad es que no sé qué más contar, que ya me estoy perdiendo un poco, que tengo hecho un lío increíble.
básicamente el principal problema que tengo es que una vez hecho todo eso, le veo que aun así le falta algo de 'chicha'. en un principio pensaba en algo como poder entrar en planetas que te encontrases. en plan que le das y te metias en el planeta con una animación y aparecías en plan humano con la nave al lado para pillarla en cualquier momento y pirarte, pudiendo explorar tranquilamente el planeta que fuese. y a través de esa movida, poder meter otro rollo más de puzzles e incluso recopilación de materiales. pero básicamente lo deseché por que no era capaz de hacer un puto escenario mínimamente decente. así que aquí estoy mirando formas de cómo cojones solucionar el problema o rellenar el hueco o sdfghjk.

básicamente que lo que más me está puteando es el tema de diseño en sí, más concretamente los escenarios. y como no le encuentro un 'arreglo' o alternativa, pues aquí ando dandole vueltas.

3 respuestas
Tema cerrado