Busca aquí http://opengameart.org/ y aquí http://www.vg-resource.com/
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
946
Preguntas y respuestas / Re:Como hacer un EndlessRun?? :) Solucionado :v
Febrero 11, 2016, 04:05:40 PM947
Preguntas y respuestas / Re:Como hacer un EndlessRun?? :)
Febrero 10, 2016, 11:56:58 PM
Como dice Iros, haz un programa de plataformas básico y desplaza todas las instancias hacia un lado. Este es un ejemplo de desplazamiento: http://www.comunidadgm.org/preguntas-y-respuestas/generador-de-objetos-aleatorios-mediante-scripts-problema/
948
Propuestas y soporte / Re:[Propuesta] Poner un botón para eliminar tu tema
Febrero 10, 2016, 11:53:36 PM
Una alternativa es usar reportar al moderador, usando el enlace que aparece abajo de cada mensaje, así es más seguro que lo borren.
949
Preguntas y respuestas / Re:Generador de objetos aleatorios mediante Scripts problema.
Febrero 10, 2016, 11:48:45 PM
¿Qué versión de GM utilizas? Si es 8.0 prueba con el archivo de abajo.
950
Preguntas y respuestas / Re:Generador de objetos aleatorios mediante Scripts problema.
Febrero 10, 2016, 06:39:27 AM
No se cómo funciona tu proyecto, pero hice un ejemplo suponiendo que la vista es fija y las instancias se desplazan.
Al inicio del juego, el objeto creador genera las estructuras necesarias para llenar un área determinada, después, en cada step se desplazan todas las instancias (incluyendo al creador).
Si las instancias llegan a la izquierda de la pantalla, se destruyen, y si el creador llega a una posición en el lado derecho, se genera otra estructura. Las posiciones donde se crean y se destruyen las instancias se deben modificar para que queden fuera de la vista, las puse así a modo de ejemplo.
Usando este método es posible variar la velocidad de desplazamiento, usa la tecla derecha para avanzar más rápido y la iquierda para frenar.
(Los sprites fueron sacados de http://unluckystudio.com/)
Al inicio del juego, el objeto creador genera las estructuras necesarias para llenar un área determinada, después, en cada step se desplazan todas las instancias (incluyendo al creador).
Si las instancias llegan a la izquierda de la pantalla, se destruyen, y si el creador llega a una posición en el lado derecho, se genera otra estructura. Las posiciones donde se crean y se destruyen las instancias se deben modificar para que queden fuera de la vista, las puse así a modo de ejemplo.
Usando este método es posible variar la velocidad de desplazamiento, usa la tecla derecha para avanzar más rápido y la iquierda para frenar.
(Los sprites fueron sacados de http://unluckystudio.com/)
951
Preguntas y respuestas / Re:hacer flip del sprite en un path
Febrero 10, 2016, 06:09:36 AM
Cuando una instancia sigue una path, además de la posición, también se modifica la variable direction, entonces puedes hacer una comparación como esta:
[gml]
if( direction<90 or direction>270 ) image_xscale = 1;
if( direction>90 and direction<270 ) image_xscale = -1;
[/gml]
[gml]
if( direction<90 or direction>270 ) image_xscale = 1;
if( direction>90 and direction<270 ) image_xscale = -1;
[/gml]
952
Preguntas y respuestas / Re:Funcionamiento de modos de mezcla extendidos (blend_mode_ext)
Febrero 09, 2016, 05:56:13 PM
Este es un resumen.
Cuando se dibuja en GM se tienen dos partes; el destino, que es en donde se va a dibujar (ya sea una surface o directamente en la pantalla), que puede tener algo dibujado previamente, y la fuente, que es lo que se va a dibujar (ya sea un bitmap o una primitiva).
Cada pixel está compuesto de 4 canales (RGBA), de 8 bits cada uno, y tienen valores de 0 a 255, pero al usar "mezclas" se manejan como números con punto flotante de 0 a 1.
Los 4 canales de cada pixel se multiplican por el factor indicado en el "modo de mezcla"; el primer argumento multiplica los pixeles de destino y el segundo multiplica los pixeles fuente, después los dos resultados se suman y se almacenan en el buffer de destino (surface o pantalla).
Los canales se manejan como números de 0 a 1 para que las multiplicaciones generen números en el mismo rango.
Veamos como ejemplo el modo normal, que se establece de esta forma:
[gml]
draw_set_blend_mode_ext( bm_src_alpha, bm_inv_src_alpha );
[/gml]
Al dibujar un sprite sus pixeles se multiplican por su valor de transparencia; si un pixel es completamente opaco se multiplica por 1 y su color se conserva, si un pixel es transparente se multiplica por un valor menor a 1 y su color se atenúa. El destino se multiplica por el inverso de la transparencia del sprite; si se dibuja un pixel completamente opaco el pixel de destino se multiplica por 0, con lo que se descarta el color de destino y sólo se conserva el color del sprite, y si se dibuja un pixel transparente el color de destino se multiplica por un valor mayor a 0, entonces los 2 pixeles se combinan.
Cuando se dibuja en GM se tienen dos partes; el destino, que es en donde se va a dibujar (ya sea una surface o directamente en la pantalla), que puede tener algo dibujado previamente, y la fuente, que es lo que se va a dibujar (ya sea un bitmap o una primitiva).
Cada pixel está compuesto de 4 canales (RGBA), de 8 bits cada uno, y tienen valores de 0 a 255, pero al usar "mezclas" se manejan como números con punto flotante de 0 a 1.
Los 4 canales de cada pixel se multiplican por el factor indicado en el "modo de mezcla"; el primer argumento multiplica los pixeles de destino y el segundo multiplica los pixeles fuente, después los dos resultados se suman y se almacenan en el buffer de destino (surface o pantalla).
Los canales se manejan como números de 0 a 1 para que las multiplicaciones generen números en el mismo rango.
Veamos como ejemplo el modo normal, que se establece de esta forma:
[gml]
draw_set_blend_mode_ext( bm_src_alpha, bm_inv_src_alpha );
[/gml]
Al dibujar un sprite sus pixeles se multiplican por su valor de transparencia; si un pixel es completamente opaco se multiplica por 1 y su color se conserva, si un pixel es transparente se multiplica por un valor menor a 1 y su color se atenúa. El destino se multiplica por el inverso de la transparencia del sprite; si se dibuja un pixel completamente opaco el pixel de destino se multiplica por 0, con lo que se descarta el color de destino y sólo se conserva el color del sprite, y si se dibuja un pixel transparente el color de destino se multiplica por un valor mayor a 0, entonces los 2 pixeles se combinan.
953
Preguntas y respuestas / Re:Generador de objetos aleatorios mediante Scripts problema.
Febrero 09, 2016, 04:59:09 PM
Hola. En primer lugar, no es necesario escribir script_execute, mejor solo escribe el nombre del script:
[gml]
///Create o Alarm 0
generate();
[/gml]
Esta es mi sugerencia para el script generate, los demás scripts se encuentran dentro de este:
[gml]
///Script generate
alarm[0] = 120; //reactivar alarma
randomize(); //secuencia aleatoria
x = room_width + 100; //posicion horizontal fija
switch irandom(2) //elegir una posibilidad
{
case 0: //primera opcion
repeat( 3 ) //generar 3 objetos
{
while not place_free( x,y ) //si no hay lugar vacio
y = irandom( room_height ); //posicion vertical aleatoria
instance_create( x,y, ob1 ); //crear instancia
}
break;
case 1: //segunda opcion
repeat( 2 ) //generar 2 objetos
{
while not place_free( x,y ) //si no hay lugar vacio
y = irandom( room_height ); //posicion vertical aleatoria
instance_create( x,y, ob2 ); //crear instancia
}
break;
case 2: //tercera opcion
y = irandom( room_height ); //posicion vertical aleatoria
instance_create( x,y, ob3 ); //crear instancia
}
[/gml]
Si es un endless runner, lo que debería cambiar es la altura de los obstáculos y la posición horizontal inicial no debería cambiar. El while se va a ejecutar hasta encontrar un punto vacio, después se crea el obstáculo. Aun es posible que los obstaculos queden encimados, porque solo se revisa la colision de un punto, para mejorar el resultado, es mejor que el objeto creador tenga máscara de colision y se use la función place_meeting
[gml]
///Create o Alarm 0
generate();
[/gml]
Esta es mi sugerencia para el script generate, los demás scripts se encuentran dentro de este:
[gml]
///Script generate
alarm[0] = 120; //reactivar alarma
randomize(); //secuencia aleatoria
x = room_width + 100; //posicion horizontal fija
switch irandom(2) //elegir una posibilidad
{
case 0: //primera opcion
repeat( 3 ) //generar 3 objetos
{
while not place_free( x,y ) //si no hay lugar vacio
y = irandom( room_height ); //posicion vertical aleatoria
instance_create( x,y, ob1 ); //crear instancia
}
break;
case 1: //segunda opcion
repeat( 2 ) //generar 2 objetos
{
while not place_free( x,y ) //si no hay lugar vacio
y = irandom( room_height ); //posicion vertical aleatoria
instance_create( x,y, ob2 ); //crear instancia
}
break;
case 2: //tercera opcion
y = irandom( room_height ); //posicion vertical aleatoria
instance_create( x,y, ob3 ); //crear instancia
}
[/gml]
Si es un endless runner, lo que debería cambiar es la altura de los obstáculos y la posición horizontal inicial no debería cambiar. El while se va a ejecutar hasta encontrar un punto vacio, después se crea el obstáculo. Aun es posible que los obstaculos queden encimados, porque solo se revisa la colision de un punto, para mejorar el resultado, es mejor que el objeto creador tenga máscara de colision y se use la función place_meeting
954
Juegos en desarrollo / Re:AssasinFox
Febrero 09, 2016, 12:36:23 AM
Aunque no está terminado tiene posibilidades de competir, lo hubieras enviado.
Las animaciones están bien hechas y el sistema de plataformas es bastante sólido; no tiene los bugs que se ven frecuentemente, sólo faltaría hacer más grande el área de colisión de la espada para que sea más rápido matar a los enemigos.
Las animaciones están bien hechas y el sistema de plataformas es bastante sólido; no tiene los bugs que se ven frecuentemente, sólo faltaría hacer más grande el área de colisión de la espada para que sea más rápido matar a los enemigos.
955
Juegos completos / Re:Jeffer Soccer
Febrero 09, 2016, 12:29:10 AM
Está divertido, pero la inteligencia artificial a veces se pone muy difícil. El principal problema es que el balón se mueve muy rápido y a veces es difícil distinguir el jugador que será cotrolable, pero en general es un buen juego.
956
Preguntas y respuestas / Re:Sistema para cambiar Sprites
Febrero 07, 2016, 11:00:01 PM
Otra método es con la función asset_get_index
http://docs.yoyogames.com/source/dadiospice/002_reference/game%20assets/asset_get_index.html
http://docs.yoyogames.com/source/dadiospice/002_reference/game%20assets/asset_get_index.html
957
Preguntas y respuestas / Re:No muestra el Sprite con el Sprite_index [Solucionado]
Febrero 06, 2016, 12:43:50 AM
Mejor cambia el código del evento Draw a End Step, así evitas usar draw_self()
958
Preguntas y respuestas / Re:¿como puedo agarrar a un enemigo o que él me agarre a mi y golpearlo o lanzarlo?
Febrero 06, 2016, 12:29:03 AM
Coincido con getnoff; los personajes deben tener un estado en el que sólo se muestren las animaciones del agarre. Es posbile hacerlo con las aciones DnD, pero es más fácil con GML.
Estos comportamientos complicados se programan por lo general en forma de "máquina de estados"; recuerdo haber leído un buen artículo en el que se implementaban máquinas de estados en un juego de peleas, pero no lo encuentro, sólo pude encontrar este video, que te puede dar una idea de los estados que vas a necesitar en el juego: https://www.youtube.com/watch?v=HSXqGfks8bc
Estos comportamientos complicados se programan por lo general en forma de "máquina de estados"; recuerdo haber leído un buen artículo en el que se implementaban máquinas de estados en un juego de peleas, pero no lo encuentro, sólo pude encontrar este video, que te puede dar una idea de los estados que vas a necesitar en el juego: https://www.youtube.com/watch?v=HSXqGfks8bc
959
Preguntas y respuestas / Re:El Game Maker 8.0 No me reproduce el sonido
Febrero 06, 2016, 12:13:26 AM
En la ventana de propiedades del sonido, marca la opción "use multimedia player"
http://www.dazlog.com/manual_GM/Mas_sobre_sonido_y_musica.htm
http://www.dazlog.com/manual_GM/Mas_sobre_sonido_y_musica.htm
960
Noticias / Re:Concurso Comunidad Game Maker 2016
Febrero 04, 2016, 03:36:14 AM
Si, las carpetas son necesarias, pero en lugar de copiarlas manualmente, ve al menú File y elige Export para generar un solo archivo con el proyecto completo.