como hacer que cuando un objeto choque con el personaje le quite por ejemplo 20 de vida cada 1 segundo? :GM8:

En el evento de colisión de tu personaje con X objeto ponés esto:

[gml]if (alarm[0]<0)alarm[0] = room_speed;[/gml]

En ese código de chequea que la alarma se haya terminado de ejecutar, si es así se ejecuta en 1 segundo que queda determinado por room_speed.

Luego, dentro del evento Alarm 1 pones algo así:

[gml]global.life -= 20;[/gml]

Donde global.life lo reemplazas por la variable de vida de tu personaje.