Pues eso,me gustaria hacer una gravedad similar a que si estubieras flotando en el espacio(que te muevas lento y un poco descontrolado,que caigas muy despacio),espero que lo entendais

Pues puedes hacerlo de esta forma en el step de tu personaje:

if (keyboard_check(vk_right)){
   x+=2;
}


if (keyboard_check(vk_left)){          //los movimientos hacia los lados tienen que ser lentos por obvias razones XD
   x-=2;
}
if (keyboard_check_pressed(vk_space)){  //puedes modificar la velocidad del salto a tu gusto
   vspeed = -8;
}


y en el evento end step
if (place_free(x,y+1)){      //si el personaje esta en el aire
  if (vspeed < 0){      //si esta saltando se activa la gravedad para que se frene
  gravity = 0.2;
  gravity_direction = 270;}
  else vspeed = 2;        //de lo contrario si estas cayendo estableces una velocidad fija de caida
}


Puedes modificar las constantes a como se te acomode mejor a lo que quieres.
En el efecto de inestabilidad se me ocurre que modifiques el angulo de tu sprite cuando este en el aire con image_angle y tratar de darle el efecto deseado o bien haciendo un sprite para este.
Probablemente existen mejores formas de lograr un efecto mucho mas pulido, yo solo te doy una manera sencilla.
Saludos...


Si marcas tu room y objetos para que use físicas tienes mucha facilidad para hacer esto, aunque deberias hacer que los objetos importantes todos usaran fisicas propias del GMS.
Fan de los retro-juegos 2D, arcades, plataformas. Programador. Amiga and MSX fan

Cita de: woolf7 en Abril 27, 2015, 05:54:41 AM
Pues puedes hacerlo de esta forma en el step de tu personaje:

if (keyboard_check(vk_right)){
   x+=2;
}


if (keyboard_check(vk_left)){          //los movimientos hacia los lados tienen que ser lentos por obvias razones XD
   x-=2;
}
if (keyboard_check_pressed(vk_space)){  //puedes modificar la velocidad del salto a tu gusto
   vspeed = -8;
}


y en el evento end step
if (place_free(x,y+1)){      //si el personaje esta en el aire
  if (vspeed < 0){      //si esta saltando se activa la gravedad para que se frene
  gravity = 0.2;
  gravity_direction = 270;}
  else vspeed = 2;        //de lo contrario si estas cayendo estableces una velocidad fija de caida
}


Puedes modificar las constantes a como se te acomode mejor a lo que quieres.
En el efecto de inestabilidad se me ocurre que modifiques el angulo de tu sprite cuando este en el aire con image_angle y tratar de darle el efecto deseado o bien haciendo un sprite para este.
Probablemente existen mejores formas de lograr un efecto mucho mas pulido, yo solo te doy una manera sencilla.
Saludos...

Muchas Gracias!!cuando llegue a casa lo probare haber si funciona

Hola Amigo !! Aqui te dejaré una solucion simple :)

en el objeto jugador has lo siguiente:

step_event: abre un execute code, escribe esto:

gravity_direction = 270;
{
if place_free(x,y+1)
{gravity = 1} (MIENTRAS MENOR SEA EL NUMERO, MAS LIVIANO SERÁ EL JUGADOR)
else
gravity = 0

y para moverte pon

if keyboard_check(vk_right)
{ if place_free(x+4,y)
   {x += 4}
}

if keyboard_check(vk_left)
{if place_free(x-4,y)
{x -= 4}
}

Listo !!

Por Pregunta sobre este tema o otras dudas que tengas, te hago saber que me llamo Luiber Extrenzas en Facebook, AGREGAME! yo aqui te dejo el Link, cuando quieras, a las ordenes (Y)

https://www.facebook.com/profile.php?id=100008220635391