Mostrar Mensajes

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.

Temas - DHX

1
Hola a todas/os,

Tengo un problema a la hora de usar los servicios de google play para android. Creo que he seguido todos los pasos necesarios, pero no me funcionan.

- APP subida y publicada en la store
- APP vinculada a servicios de juegos en la consola de desarrollo
- Creados 5 logros de prueba y un marcador
- Servicios google play para la app publicados
- GMS, está activa la casilla de google play services
- GMS, ID de la APP añadido en la casilla correspondiente
- GMS, Extensión ( ver 2.3.0 ) para google play, descargada y añadida al proyecto

A pesar de todo, a la hora de compilar, me da un montón de warnings... Aunque crea el apk, pero sin funcionar los servicios de google.

Al inicio del juego, se para la intro y sale una ventana con el mensaje "Error desconocido relacionado con los servicios de google play".

Alguien podría ayudarme?

Gracias de antemano y saludos.
2
Hola makeros,

Llevo un par de semanas atascado con un problema, he leído temas del foro relacionados con articulaciones pero no consigo nada... a ver si me podeis ayudar.

Veamos, tengo un enemigo ( cazador ) que dispara al jugador. Al principio lo tenía funcional, aunque con 4 frames "fijos" para cubrir unos 90 grados. De este modo quedaba poco vistoso, ya que no se veía un seguimiento suave al apuntar.

Ahora lo que intento es, utilizando un solo sprite del cazador "despiezado", que apunte rotando como si fuese una torreta. Lo que tengo en este momento es:

- El torso no rota, únicamente se desplaza de derecha a izquierda de la room. Bien.
- La cabeza rota siguiendo el objetivo. Bien.
- El brazo que tiene el dedo en el gatillo también rota y apunta correctamente al objetivo. Bien.
- El brazo de "atrás", que sujeta la escopeta. No consigo que rote, a la vez que esté "anclado" al arma.

Tanto la cabeza como los 2 brazos, apuntan con "image_angle = point_direction(x,y,obj_player.x,obj_player.y)". Pero me es imposible, que el brazo de detrás rote y a la vez no se despeque del arma.

Adjunto imagen con el sprite en cuestión, por si sirve de algo.

Gracias de antemano y un saludo a todos.
3
Preguntas y respuestas / Problema colision suelo
Febrero 26, 2016, 11:49:03 AM
Hola a todas/os,

Tengo un problema con la colisión del jugador con el suelo. Hasta hace poco, no me había parado a solucionarlo ya que incluso le daba un "no se que"  :P que me gustaba. Pero al incluir plataformas a diferente nivel, estoy teniendo problemas para que quede jugable.

El tema es que el jugador va por el suelo caminando y puede saltar ( doble salto incluído ). Cae al suelo y para su caída. Si das un doble salto y coge una altura determinada, se posa correctamente sobre el suelo. Pero si das un salto simple, con lo que no se eleva demasiado, al posarse sobre el suelo se hunde un par de pixels. Llevo días buscando una solución y no doy con ella. He probado cambiando el código y diferentes tipos de configuración de colisión en los sprites, pero nada.

A ver si alguien me puede indicar el camino  :-[


// Step
// Comprueba contacto con suelo para hacerlo caer con gravedad o frenarlo
if ( place_meeting ( x, y+1, obj_ground ) )
    {
    vspd = 0;
    }
    else
        // Gravedad
        {
        if ( vspd < 20 )
            {
            vspd += grav;
            }
        }

// Colisión vertical
if (place_meeting(x, y+vspd, obj_ground))
    {
    while(!place_meeting(x, y+sign(vspd), obj_ground))
        {
        y += sign ( vspd );
        }
    vspd = 0;
    }

4
Hola makeras/os. Tengo un enemigo en mi juego, que utiliza path para entrar en la view para atacar y otro para salir tras el ataque.

Tengo la pausa ya hecha, pero a este enemigo no lo para y se ve como continua su recorrido del path.

He mirado en el manual y no he visto ninguna instrucción de código con la que pueda pausar el path. No puedo usar el deactivate_object, ya que de ese modo desaparece de la view y queda mal. Hay algún otro modo?

Gracias y un saludo.
5
Juegos en desarrollo / Last Attack [Demo]
Noviembre 30, 2014, 11:28:34 PM

Last Attack

Otro

GM: Studio

Lo primero que quiero dejar claro es que este juego es "mi" visión actualizada de una Nintendo Game&Watch, que guardo desde pequeño. Se llama Fire Attack y podeis ver esta maravilla de la tecnología aquí (el video no es mío): https://www.youtube.com/watch?v=HmQZw03SqrY

Igual que en el original, Last Attack es un arcade muy sencillo y con poco guión. El jugador está en una construcción en el centro de la pantalla, defendiendose de ataques enemigos por izquierda y derecha. El único arma disponible es una maza. Y la finalidad no es otra que conseguir el mayor número de puntos.









Primera demo: https://www.dropbox.com/s/xu5wjii0wxe2r2s/Last_Attack-Default-1.0.0.0.exe?dl=0
19/12/14 : https://www.dropbox.com/s/ty1rw57pmpckfza/Last_Attack-Default-1.0.0.1.exe?dl=0
23/04/15 : https://www.dropbox.com/s/m7pzry9s17miiqx/Last_Attack_Default-1.0.1.3.exe?dl=0



* CONTROLES:
- Flechas arriba/abajo/derecha/izquierda para mover al player.
- "Espacio" para golpear.
- Esc para pausa... aunque ahora no sirva de mucho.
- Tecla Y para salir del juego al menú.

* PARTES QUE FALTAN:
Casi todo XD, lo más importante ahora:
- Cambio de sprites... en progreso
- Solucionar fallo del jugador... a veces de queda enganchado tras golpear en el piso de abajo.
- Efectos de sonido y música
- Incluir puntuaciones online
- Retocar y completar menú
- Incluir pequeña "intro"
- Más fases??

* ACTUALIZACIONES:
= 01/12/2014:
- Primera demo.
= 19/12/14:
- Modificado el inicio de juego para que el jugador no se salga de la zona establecida. Gracias a TheSandBoxMKG :D
- Modificado el botón de golpeo, ahora es la barra de espacio
- Añadidos enemigos/lanzadores
- Añadido muertes y pérdidas de vidas del jugador
- Añadido dificultad progresiva. Cada 50 puntos sube un poco, la velocidad de los enemigos
- Modificado el golpeo. Ahora solo golpea una vez al pulsar. Gracias a Xizotono :D
= 23/04/15:
- Sustituidos todos los sprites "made in internet" por propios. Aunque algunos son provisionales, como los enemigos.
- Igualmente, se han sustituido los fondos. También se irán retocando, sobre todo el de menú.
- Añadida música provisional, con licencia libre mientras no gane dinero con ella.
- Cambiada la fuente, con un estilo "celta".


6
Hola gamemakeros,

Estoy haciendo un "motor" para plataformas, tipo mario bros. Y he llegado al punto de comenzar a cambiar los sprites de prueba (cuadrados de 32x32px de un solo color), por unos más "bonitos" (personajes con brazos y piernas :P ), grandes ( no mucho, 32x40px) y animados. Pero al hacer el cambio de sprites, me ha trastocado bastantes cosas que funcionaban bien, entre ellas las colisiones. En los sprites de prueba, el punto de origen estaba centrado y en los nuevos he mantenido el punto en el centro, a pesar de que son algo más grandes.

Llevo días dándole vueltas y no me aclaro. No busco que alguien me solucione el problema ( de momento, jeje ). Solo saber, si hay que tener algún cuidado especial a la hora de hacer un cambio de sprites.

Gracias de antemano y saludos.
7
Hola makeros.
Sé que el tema de las rampas o slopes, se ha preguntado bastante... espero que nadie se moleste. Pero es algo que se me atraganta.
He seguido unos videotutoriales de Shaun Spaldin, que recomendó otro usuario en el foro. Al llegar a añadir el código de rampas en el evento step, colisiona contra ellas como si fuese una pared y no sube. No dá ningún error de compilación. Llevo varios días atascado con esto y no logro ver donde me estoy equivocando... alguien me podría echar un cable?  :-[
Gracias y un saludo.

hsp_final = valor final de x
par_wall = objeto "parent" para colisiones, que incluyen los suelos, rampas, plataformas, etc
yplus = variable que hace de contador

// Colisión horizontal
if place_meeting(x+hsp_final,y,par_wall)
{
    yplus = 0;
    while (place_meeting(x+hsp_final,y-yplus,par_wall) && yplus <= abs(1*hsp_final)) yplus += 1;
    if place_meeting(x+hsp_final,y-yplus,par_wall)
    {
        while (!place_meeting(x+sign(hsp_final),y,par_wall)) x+=sign(hsp_final);
        hsp = 0;
        hsp_final = 0;
    }
    else
    {
        y -= yplus
    }
}
x += hsp_final;     // Valor final de movimiento horizontal
8
Preguntas y respuestas / Duda con variables y su uso
Octubre 11, 2014, 02:43:48 AM
Hola a todos. He seguido este tutorial del usuario HeartBeast en youtube:

https://www.youtube.com/watch?v=ZFX7IHhZw7g

He conseguido que todo funcione tal y como está explicado. Pero no entiendo como se consigue que GMS sepa a que función se refiere cada variable. Intentaré concretar mi duda con el código.

Tengo una room muy simple, con un objeto "suelo" sólido que hace de suelo extendiéndose y haciendo varias plataformas a diferentes niveles.

Tengo un objeto/personaje, que en mi caso se llama "chuck". Puede moverse a derecha/izquierda y saltar. Y tiene estos 2 eventos:

1 Create

/// Declaración de propiedades y variables

grav = 1.1; // Gravedad
spd = 4;    // Velocidad
jspd = 12;  // Velocidad de salto
hspd = 0;   // Velocidad horizontal
vspd = 0;   // Velocidad vertical


2 Step

/// Movimientos y colisiones

var izquierda = keyboard_check ( vk_left );
var derecha = keyboard_check ( vk_right );
var salto = keyboard_check ( ord ("Z") );

// Comprueba contacto con suelo
if ( place_meeting (x,y+1,obj_parentsolid)) {
    vspd = 0;
   
    // Saltando
    if ( salto ) {
        vspd = -jspd;
    }
} else {
    // Gravedad
    if ( vspd < 6 ) {
        vspd += grav;
    }
}

// Mover a derecha
if ( derecha ) {
    hspd = spd;
}

// Mover a izquierda
if ( izquierda ) {
    hspd = -spd;
}

// Chequea si no se puede mover
if ( (!izquierda && !derecha) || ( izquierda && derecha )) {
    hspd = 0;
}

// Colisión horizontal
if ( place_meeting ( x+hspd,y,obj_parentsolid )) {
    while ( !place_meeting ( x+sign(hspd),y,obj_parentsolid )) {
        x += sign(hspd);
    }
    hspd = 0;
}

// Movimiento horizontal
x += hspd;

// Colisión vertical
if ( place_meeting ( x,y+vspd,obj_parentsolid )) {
    while ( !place_meeting ( x,y+sign(vspd),obj_parentsolid )) {
        y += sign(vspd);
    }
    vspd = 0;
}

// Movimiento vertical
y += vspd;
}


Mi duda es, por ejemplo en la sección "Mover a derecha". Como sabe GMS que cuando pongo hspd, me refiero a la función "hspeed"?? Y que spd es "speed"?? Es que no logro entender como es que funciona, y si no lo entiendo... no he aprendido nada.

Una explicación para dummies??
Gracias y un saludo.
9
Hola makeros. Estoy practicando el uso de archivos ini, para utilizarlo en un proyecto pero no soy capaz de hacerlo funcionar.

Tengo un archivo ini muy básico puesto en include files con el nombre "configuracion.ini", que contiene solo una sección y 2 datos:

Citar
[config]
nombre=franco
edad=387

Y un objeto en el room que tiene el siguiente código:

Citar
ini_open ("configuracion.ini");

nombre = ini_read_string ("config","nombre","Eduardo");
edad = ini_read_real ("config","edad",30);

ini_write_string ("nuevaseccion","nombre",nombre);
ini_write_real   ("nuevaseccion","edad",edad);

show_message (nombre);
show_message (edad);

ini_close();

El primer problema, es que cuando lee el ini, no me coje el dato nombre y pone el "Eduardo" asignado por defecto. Lo mismo ocurre con el dato edad. Es decir, como si no hubiese nada en el ini ?¿

El segundo problema viene al intentar escribir el ini. No hace nada. Después de ejecutar el programa, abro el ini para ver si se ha escrito la nueva sección y no lo ha hecho.

Que estoy haciendo mal??
Gracias y un saludo.
10
Hola makeros,

Estoy intentando hacer mi primer juego completo en GM Studio. Es muy sencillo pero estoy atascado con el movimiento de ataque del jugador.

El jugador tiene 4 posiciones posibles, utilizando las teclas:

Q= arriba izquierda
P= arriba derecha
A= abajo izquierda
L= abajo derecha

Cada posición tiene su sprite y cada sprite del jugador tiene 2 imágenes. La 0 es con un martillo levantado y la 1 es con el martillo golpeando hacia abajo.

En cuanto al movimiento, no existe como tal. El jugador tiene que cambiar instantaneamente de posición cuando pulsas una de las teclas Q,A,P,L. Cuando cambias de posición, el sprite siempre tiene que mostrar la imagen 0 ( martillo arriba ). Pero por ejemplo, si el jugador ya está en la posición Q ( arriba izquierda ) y vuelves a pulsar Q, debería cambiár el sprite a la imagen 1 ( martillo abajo ) para que haga UN golpeo. Pero no me sale.

Consigo que se mueva ( o salte ) a cada una de esas 4 posiciones con su sprite correspondiente. Pero no logro que dé UN "golpe". Lo máximo que he conseguido es que se quede el sprite golpeando sin parar, hasta que lo hago cambiar de posición.

En el objeto, únicamente tengo 2 eventos:

Create: código, con el que creo el objeto en las coordenadas de inicio y una variable "posición_soldado" para saber en cual de las 4 posiciones está.

Step: el siguiente código con el que checkeo las teclas y muevo al jugador

==============================
if keyboard_check(ord('Q'))
{
x=346;
y=225;
sprite_index=spr_arriba_izq;
image_index=0;
image_speed=0;
posicion_soldado=1;
}

if keyboard_check(ord('P'))
{
x=410;
y=225;
sprite_index=spr_arriba_der;
image_index=0;
image_speed=0;
posicion_soldado=2;
}

if keyboard_check(ord('A'))
{
x=346;
y=290;
sprite_index=spr_abajo_izq;
image_index=0;
image_speed=0;
posicion_soldado=3;
}

if keyboard_check(ord('L'))
{
x=410;
y=290;
sprite_index=spr_abajo_der;
image_index=0;
image_speed=0;
posicion_soldado=4;
}

===============================

Agradecería cualquier ayuda.
Un saludo.
11
Hola gamemakeros.

Llevo tan solo unas semanas metido con el game maker y viendo tutoriales de youtube. Me he fijado que en muchos videos, en la ventana "object properties", aparecen más opciones de las que tengo yo por defecto en game maker ( move, main 1, main 2, control, score, extra y draw). De donde salen esas opciones y para que sirven?

Gracias anticipadas y un saludo.

Edito con solución:

Finalmente localicé un video que explicaba como hacerlo. Descargas las librerias ( adjuntas en este mensaje ) y descomprimirlas en:

C:\Users\"aquí va tu nombre de usuario"\AppData\Roaming\GameMaker\lib

Esto es en win7, en otros sistemas no sé donde se encuentra este directorio. Aunque no debe ser dificil localizarlo.

Abre ahora GameMaker y verás que tienes más pestañas de eventos para agregar a los objetos.