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 3 ... 7
1
Entre las formas de lograrlo, la más sencilla es que crees una variable que actúe de interruptor, por ejemplo:

inter = false;

Y cuando interactúas con alguien, la estableces a true.

Y luego en tu código en donde se mueve el personaje, encierras las acciones en un if
if inter == false
{
     //tus códigos de movimiento
}

O también se puede usar la función exit;

Aquí hay un videotutorial donde se aplica este método:
https://www.youtube.com/watch?v=hM-GBHANDrI

2
Preguntas y respuestas / Re:Quiero volver a pedir su ayuda.
« en: Noviembre 08, 2019, 03:48:25 pm »
Vamos compañero, no cuesta nada comprobar un script por tu cuenta e intentar entender cómo trabaja.

Piensa en lo siguiente: en el mundo de la programación existen miles y miles de trucos, efectos y formas de hacer las cosas, por lo que es imposible poder siempre encontrar ejemplos precisos para lo que uno busca hacer (y que además sea compatible con tu juego). Entonces la mejor forma de aprender es investigando conceptos, en este caso por ejemplo de ¿qué son las surfaces y cómo trabajan? o ¿cómo se utilizan los scripts?

Y una vez que entras en el mundo, aprenderás y si tienes dudas de algo en específico, puedes preguntarlas.

Y por último, no pusiste qué versión de game maker usas, como mencionas gmk parece que usas gm8 así que el script que te dieron quizás ni siquiera sea compatible, como ves es de gran importancia ser específico para poder ayudarte mejor.

3
Juegos completos / Re:Gatete Mario Engine: Anniversary Edition
« en: Noviembre 04, 2019, 10:10:34 pm »
Simplemente maravilloso, me ha encantado.

4
Preguntas y respuestas / Re:Necesito ayuda con juego de Mesa
« en: Septiembre 30, 2019, 03:56:09 pm »
De acuerdo, te envié un mensaje privado con el editable.

5
Juegos completos / Re:Super Mario Bros in Wacky Races
« en: Septiembre 27, 2019, 08:07:03 pm »
Por el título pensé primero que era juego de carreras.

Se ve bastante bueno, bien hecho y programado, pero mi única queja es que haya que pulsar flecha arriba para saltar, los que jugamos Mario estamos acostumbrados a saltar con un botón lejos de las teclas de direcciones. Pero podrías agregar un sistema para poder elegir los controles.

6
Preguntas y respuestas / Re:Juego de lucha 2
« en: Septiembre 10, 2019, 08:11:10 pm »
Ya lo solucioné. El código para el script del bloqueo lo dejé así:
///st_blok
if(state_new)
{                               // Primer fotograma al cambiar de estado
                                sprite_index = spr_billy_blok
                                image_speed = 0.15;
                                image_index = 0
                                mask_index = sp_billy_nomask;
       
   
}
                       
                               
if(image_index >=               //Animación
    image_number-image_speed)   image_speed = 0;
   
   

   
if state_timer >= round(room_speed)      // Cambios de estado
{
    mask_index = sp_billy_mask;
    state_switch("idle");
}


Mira el error era en primer lugar por sintaxis, cuando tenías puesto esto
if state_timer >=               // Cambios de estado
    round(room_speed )         state_switch("idle");
    mask_index = sp_sub_zero_mask ;
si te fijas tenías el if sin llaves, entonces sólo se estaba ejecutando la primera instrucción que era volver al estado idle, pero la otra que era volver a la máscara ya se tomaba como fuera del if

Algo más, me di cuenta que para el estado del block copiaste el del ataque puño del enemigo, supongo que era para aprovechar el state timer que daba un rato para que sub-zero se cubra, pero como ese estado ataque del enemigo no tenía cambios de máscara, por eso desde un principio no le estabas estableciendo que regresara la máscara del jugador del estado idle.

Para acabar te doy un consejo: debugea información, el mismo hektor lo dice en uno de los videos, en el objeto del jugador en su evento draw gui pon esto:
///Debug en GUI

draw_set_color(c_white);
draw_set_alpha(0.3);
draw_rectangle(0,0,200,150,false);

draw_set_alpha(1);
draw_set_color(c_black);
draw_text(20,20,
    "State: "+string(state_name) +
    "#image_index: "+string(image_index) +
    "#mask_index: "+string(mask_index));
Con esto se muestra el número de estado y mask que tiene el jugador todo el rato y me facilitó mucho encontrar la falla, si lo utilizas te servirá si te vuelve aparecer un error similar más adelante.

7
Preguntas y respuestas / Re:Menu de Pausa o Escape
« en: Septiembre 10, 2019, 02:08:36 pm »
Si con salvar la música te refieres a que se detenga y quede pausada, y después parta desde donde quedó, eso no se puede en game maker 8.x

Es necesario usar una dll de audio, yo te recomendaría SinBass, es fácil de usar y tiene ese efecto, tendrías que importar la dll y convertir tus archivos de audio a .ogg

8
Preguntas y respuestas / Re:Juego de lucha 2
« en: Septiembre 10, 2019, 12:07:59 am »
Muy bien ya te he enviado un privado, por mientras estaba aprovechando de mirar los videos de hektor para entender esa máquina de estados y parece interesante por su fácil uso, pero algo se te debe haber escapado en alguna parte, tu uso de la no_mask puede no ser compatible ya que originalmente era para la muerte del jugador.

9
Preguntas y respuestas / Re:Juego de lucha 2
« en: Septiembre 09, 2019, 04:26:23 pm »
Tienes 2 opciones cómodas:

Una que adjuntes el editable aquí mismo, escribes una respuesta más y luego le das a opciones adicionales - Adjuntar
Lo malo de esto es que cualquiera podría descargar el editable y luego creo que no se puede eliminar del foro (si es que te importa ello claro).

La otra opción es que subas tu editable a un servidor para alojar archivos como dropbox, mediafire o mega; y después vas a nuestros perfiles y nos envías por mensaje privado el enlace del editable para que podamos descargarlo.

10
Preguntas y respuestas / Re:Juego de lucha 2
« en: Septiembre 09, 2019, 01:13:47 am »
Es extraño que hagas un cambio de mask para producir un efecto de bloqueo.

Como usas una máquina de estados, no debería haber problema si al bloquear pasa al estado bloqueando y cuando sueltas vuelve al estado normal, podrías mirar el debug para comprobar que los valores de todas tus variables son correctos, es muy útil cuando tenemos ya un juego con muchas cosas.

Ahora por lo que mencionas quizás el problema no es el jugador, sino el enemigo que se le cambia algo cuando le bloqueas.

11
Preguntas y respuestas / Re:Necesito ayuda con juego de Mesa
« en: Septiembre 06, 2019, 12:02:13 pm »
Saludos.

Bien lo primero que diré es que crear juegos de mesa es difícil. Hay que saber un poco sobre estructuras de datos.

Ahora al tema: si yo hiciera un juego de parchís/ludo intentaría en lugar de usar paths, usar arrays (arreglos) para en ellos guardar las coordenadas de cada casilla. Como el trayecto suele ser irregular, hay que guardar manualmente todos los valores.

Entonces luego cuando una ficha tenga que mover cierta cantidad (por ejemplo 3 casillas), hago un algoritmo que desplace la ficha desde la casilla 0 a la 1, y cuando termine de la 1 a la 2, y al final de la 2 a la 3, y para que se mueva correctamente entre cada una, leer los datos de coordenadas de cada casilla que fue guardada en los arrays.

Hace un tiempo hice un prototipo de un parchís con este método, si te interesa verlo lo puedo subir.

12
Preguntas y respuestas / Re:Ayuda con armaduras o resistencias
« en: Agosto 12, 2019, 09:26:08 am »
Hola.
La primera cuestión es sencilla, pasa porque pones las asignaciones en mal orden, deben ir así:
ataque = resistencia;
vida -= ataque;
if vida <= 0 instance_destroy();
Pensemos con lógica:  si el ataque no se asigna antes pues sigue siendo 50, por ende la vida resta 50 y sólo después el ataque se establece a 25 cuando ya se ha restado, por eso hay que establecer primero que el ataque es la mitad (25) para que luego la vida se reste 25 correctamente.

Y ahora lo segundo, tengo una duda que no creo que estés usando instance_destroy(obj_bala) porque el instance destroy no contiene argumentos, asumo que tienes puesto un with(obj_bala) instance_destroy();
Bien el problema es que cuando escribes "obj_bala" está abarcando a todas las instancias de la bala, así que para sólo referirte a la que colisiona al enemigo puedes hacer lo siguiente, en el obj_bala en el evento colisión con el enemigo, sólo pon:
instance_destroy();
Como estamos en el obj_bala, game maker sabe por la colisión a cual instancia nos estamos refiriendo.

13
Preguntas y respuestas / Re:Mapear joystick en GM7.
« en: Agosto 11, 2019, 07:31:35 am »
Casualmente justo ahora andaba indagando sobre los joysticks y sus eventos.

Busqué en la sección de descargas, pero no encontré el ejemplo que mencionan. ¿Podrían mostrar el enlace?
Nunca he utilizado timelines, tengo curiosidad por saber cómo se hace el mapeo.

Creo que Vector se refiere a este:
https://www.comunidadgm.org/index.php?page=verdescargas&accion=descargaD&download_id=2138

Estuve probándolo con mi joystick y parece que funciona algo pero no lo entiendo bien, tiene mucho drag and drop.

:GM7: Me gustaría mapear teclas a joystick USB de PC en GM7.

En la sección descargas hay un ejemplo de mapeado con time lines pero no sé si funciona para todos los eventos: press, releassed, check del joystick.

Quería comentar que el ejemplo de crypter también lo he probado y se ve que funciona de lujo los tres eventos, si ves el editable hay una ligera explicación de cómo está hecho y además es fácil de usar. Deberías echarle una mirada:
https://www.comunidadgm.org/index.php?page=verdescargas&accion=descargaD&download_id=1919


14
¿Cómo hiciste para pasar el último cuarto de Toxic Cavern?

Algo así: primero destruyo todas las máquinas tira ondas paralizadoras cuanto antes, me deshago del barril pólvora porque estorba, luego me refugio abajo y espero al pequeño enemigo de las tres fases a que baje (con mucha paciencia) para matarlo.
Y subo para dañar al enemigo grande, cuando cambia a verde esa parte es fácil, sólo hay que moverse en círculos para esquivar y mientras vuelvo a matar al enemigo chico que aparece. Vuelvo al grande y cambia a morado, esa era la peor parte; vuelvo con mucha paciencia a esperar al enemigo chico a que baje al refugio y lo mato.
Y pues se me ocurrió la idea de quedarme en un solo lugar abajo y subir disparando mientras hago dos dash para no recibir daños y volver al refugio de inmediato, y repitiendo el patrón de la misma forma pude matar al enemigo grande.

Cambiando de tema ya logré llegar a la caverna antigua, imagino que es el final, no encuentro forma efectiva de derrotar a los pájaros rojos que sus balas bloquean las nuestras >:(

15
Preguntas y respuestas / Re:Problemas de animación
« en: Agosto 08, 2019, 08:11:14 am »
En lugar de hacer una sola animación con todas las sub-images juntas, mejor crea un sprite solo con esa primera imagen y crea otra animación aparte con los sprites que quieras repetir el ciclo, así es mucho más fácil.

Y luego estableces esa primera imagen (animacion1) al jugador y después con una alarma le dices cuando pase a la otra animación (animacion2).
sprite_index = animacion1;
alarm[0] = 5;
Evento alarm[0]
sprite_index = animacion2;
Hay otras formas más óptimas como crear máquinas de estados y/o usar timelines pero es más avanzado.

Páginas: 1 2 3 ... 7