Noticias

¡Ayuda a la Comunidad GM, haz una donación!

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - getnoff

Páginas: 1 2
1
Realmente no es posible que la calidad no disminuya, porque al igual que una imagen hecha a pixeles, al cambiar de resolución se verá un poco peor.
Los siguientes usuarios dieron las gracias a este tema: Boltzila

2
Juegos completos / Re:Dragon Ball Z Saiyan Pride [WINDOWS]
« en: Febrero 03, 2019, 12:45:33 pm »
Oye que gran juego, me entretuve un buen rato con él (gracias por crearlo me encantan los fangames).

- Buen contenido y abundante en cuanto a menús y sprites de todo (efectos y enemigos), se ve bastante completo y se nota que está hecho con esfuerzo.
- Me encanta que tenga los temas musicales de DBZ, hace que se sienta que estamos dentro del universo de los saiyajin.
- La dificultad es muy buena.
- Me agrada la preocupación de que pusiste una opción para desactivar efectos que ciertas PC no soportan, mientras mayor multicompatibilidad mucho mejor.

Ahora algunas sugerencias:

- Si presionamos seguidamente la tecla C, se escucha el grito de Vegeta montones de veces a la vez, sugiero que uses sound_stop para detener el sonido anterior cuando presionamos C de nuevo.
- El juego toma su tiempo para ejecutarse, y viendo el admin de tareas noto que tarda en reunir toda la memoria que necesita, en estos casos conviene no cargar tantos gráficos y sonidos de golpe, sino de a poco y de ser posible dejar las pistas de música fuera del exe.
- Me gustaría que se pudiera poner el juego a modo ventana también.
Los siguientes usuarios dieron las gracias a este tema: Yuzo

3
Para la comprobación se me ocurre esta idea, crea una lista que vaya guardando los valores que se van generando, entonces en tu algoritmo comprueba si el actual valor generado se encuentra dentro de esa lista, de esa forma si ese nuevo está repetido, que vuelva a generar otro hasta que sea distinto.
El como implementar esto, depende de como sea tu código generador de números. En todo caso es mejor ir comprobando cada valor que no se esté repitiendo antes de que ya se hayan creado todos.
Los siguientes usuarios dieron las gracias a este tema: Xabuki

4
Para evitar el problema de la persistencia, puedes usar variables globales, estas mantienen su valor sin importar si cambias de room o destruyes el objeto donde se crea, se declara así:
global.nombrevariable = valor;

Nunca he trabajado con rooms persistentes, pero según he leído conviene evitar usarlos porque causan efectos secundarios negativos. Usando las variables globales y las listas no debería hacer falta usar archivos ini.
Los siguientes usuarios dieron las gracias a este tema: wilmerroa

5
Para organizar los combates de forma aleatoria y sin que se repitan, lo mejor es usando una lista y luego desordenarla, y después ir borrando los valores que se hayan usado. Mira este post:
https://www.comunidadgm.org/preguntas-y-respuestas/duda-code-random/

Eso es lo que entendí ¿era eso?
Los siguientes usuarios dieron las gracias a este tema: wilmerroa

6
Me suena mucho a problemas de las áreas de colisión que tiene los sprites de Mario, revisa que todas sus cajas sean cuadradas, si ese es el problema este video podría ayudarte:
https://www.youtube.com/watch?v=y6Fg46uvzQ8

sino pues toca que muestres el código que usas para moverse y todo lo que sea necesario.
Los siguientes usuarios dieron las gracias a este tema: MoisesGamer132

7
General / Re:Fenris78 ¿como está?
« en: Noviembre 09, 2018, 02:48:24 am »
Fenris78 no te conozco pero quería comentarte que me alegra saber sobre tus proyectos de videojuegos de consolas viejas, yo igual soy un gran fan de informática clásica (me gustaría haber aprendido sobre esas cosas en el pasado).

Así que apoyo tus ganas, espero que veamos juegos nuevos para las consolas como gameboy y similares en el futuro.
Los siguientes usuarios dieron las gracias a este tema: dixon2010

8
Preguntas y respuestas / Re:Me explican las siguientes funciones?
« en: Octubre 28, 2018, 05:22:43 pm »
Si has visto algún manual de GM sabrás que son muchísimas las funciones que hay, como consejo consulta todo el manual y desde ahí pregunta de a poco las que más te urgen.
Si especificas bien lo que necesitas, es más fácil para los expertos saber como ayudarte y resolver tus dudas.
Los siguientes usuarios dieron las gracias a este tema: HKaichim

9
Juegos completos / Re:Head Life - Training Room (fangame)
« en: Octubre 09, 2018, 06:22:45 pm »
GitHub es como un servidor para subir archivos y compartirlos (como mediafire, dropbox, etc) solo que github está más enfocado a archivos informáticos complicados de programas y esas cosas.
https://github.com/
Los siguientes usuarios dieron las gracias a este tema: dixon2010

10
Preguntas y respuestas / Re:worl map
« en: Mayo 28, 2018, 09:03:25 pm »
En este video se explica como ir creando un sistema de ir entrando y desbloqueando niveles que puede ser muy útil como guía
https://www.youtube.com/watch?v=oe7Ej6v382Q

Igual se requiere un poco de conocimiento básico de gml, para luego poder adaptar el código a como uno lo desea.
Los siguientes usuarios dieron las gracias a este tema: Zorropa

11
Es verdad, fue mi error que se me pasó ese detalle, no lo había probado pero ahora lo hice y ya funciona bien, aquí lo dejo:
if distance_to_object (obj_personaje) < 100
{
    mp_potential_step(obj_personaje.x,obj_personaje.y,3,false);
}
else
{
    if point_distance(x,y,xstart,ystart) > 5
    {
        move_towards_point(xstart,ystart,5);
    }
    else
    {
        speed = 0;
    }
}
Los siguientes usuarios dieron las gracias a este tema: antuxd12

12
Preguntas y respuestas / Re:mover un objeto repentinamente
« en: Mayo 17, 2018, 03:14:44 am »
Te falta poner ord antes de la letra de la tecla:
keyboard_check(ord("D"))
Los siguientes usuarios dieron las gracias a este tema: GGrayonar

13
Preguntas y respuestas / Re:Continues
« en: Mayo 07, 2018, 08:58:23 pm »
Saludos, primero como ya dijeron, siempre que uses funciones que finalizan un programa/código como room_restart game_restart, break, exit, hay que poner todas las instrucciones que deseas antes de ellas, para que se ejecuten.

Según entiendo el código ¿la variable "intentos" son los continues verdad? bueno el problema es que cada vez que se muere llamas al "obj_jugador_muere" y con "intentos = 3" los continues siempre se van a reiniciar a 3, por tanto nunca terminará.

Una forma fácil de solucionar sería crear la variable intentos como variable global, y la declaras en otro objeto que gestiona el juego en general, como un obj_main, por ejemplo:

- Crea el obj_main y lo pones en cualquier lugar del primer room

obj_main - evento create
global.intentos = 3;

y tu código sería algo así:

obj_jugador_muere - evento create
alarm[0] = 50;
image_speed = 0.3;

obj_jugador_muere - evento alarm[0]
if (lives > 0)
{
    lives-=1;
    room_restart ();
   
}
else
{
    if global.intentos > 0
    {
        show_message ( " has muerto " );
        lives+=2;
        global.intentos-=1;
        room_restart ();
    }
    else
    {
        global.intentos = 3;
        game_restart ();
    }
}
Los siguientes usuarios dieron las gracias a este tema: Neodreamer

14
Te dejo este código que hace que el primer sprite vaya desapareciendo de a poco y a su vez el segundo vaya apareciendo de a poco, usando el alpha, como el valor de alpha va de 0 a 1.

Supongamos que el personaje se llama "obj_player" que está usando el "sprite1" y va a cambiar al "sprite2"

evento step
if sprite_index == sprite1
{
    image_alpha -= 0.01; //cada step del juego será más transparente hasta desaparecer
     
    if image_alpha == 0 //cuando ya no se ve, se le asigna el otro sprite
    {
        sprite_index = sprite2;
        image_alpha = 1;
    }
}

Y esto en el evento draw pero en otro objeto que no use sprites, como por ejemplo un obj_controlador

evento draw
with (obj_player) //como si estuviésemos dentro del obj_player
{
    if image_alpha > 0 and sprite_index == sprite1
    {
        draw_sprite_ext(sprite2,0,x,y,1,1,0,c_white,1-image_alpha); //se irá dibujando de a poco el segundo sprite
    }

}

¿por qué en otro objeto? porque al usar un evento draw en un objeto que tiene sprites asignados hacen conflicto entre ellos.
Los siguientes usuarios dieron las gracias a este tema: nonoroman

15
Preguntas y respuestas / Re:Ataque Cargado (como smash bros)
« en: Abril 26, 2018, 10:20:58 am »
Yo intentaría algo así.
Primero creo una variable "tiempo" para que guarde el tiempo que el jugador mantiene presionada cierta tecla.
Luego otra variable "nivel" para indicar el nivel que tiene el jugador

supongamos que se carga manteniendo la tecla Z:

evento create
tiempo = 0;
nivel = 1;

evento step
if keyboard_check(ord("Z"))
{
    tiempo += 1; //aumenta en 1 cada step del juego
}
else //como opcional puedes agregarle que si suelta la tecla, entonces tiempo se reinicia a 0
{
    tiempo = 0;
}

luego que por ejemplo pase al nivel 2 si lleva cargando por 10 segundos
evento step
if tiempo >= 300 //10 segundos son 300 steps si el juego va a 30 frames por segundo
{
    nivel = 2;
}
una vez que se está en nivel 2 ya tendrías que poner todos los cambios que sufre el jugador en ese nivel, y luego tendrías que especificar que luego de cierto tiempo el jugador vuelva al nivel 1, todo depende de como deseas tu juego.
Los siguientes usuarios dieron las gracias a este tema: GaryVega, Zorropa

Páginas: 1 2