Game Maker Studio: Dudas y colaboraciones

Galbix

#149 Si el problema persiste tras las soluciones, creo que lo mejor sería que subieras el archivo *gmk para echarle un ojo entre todos.

1 respuesta
N1Tr0s

#151 He exportado el gmz, espero que sirva (porque no se exportar a gmk) xD
Según está ahi, he eliminado el background_space que uso normalmente para que se pueda ver la puntuacion cuando matas una nave.

javifugitivo

He comenzado a escribir en una página, gamedev.es y voy a hacer un tutorial sobre como realizar un juego en Game Maker, en este caso una aventura gráfica. Va a ser absolutamente para iniciarse en programación en Game Maker, para cualquier interesado, esta es la introducción, comenzaré la semana que viene y contestaré dudas bien en este tema de mediavida o en los comentarios en cada entrada de gamedev.

http://www.gamedev.es/?p=8872

7 1 respuesta
Encofrado

Buena iniciativa #153, pienso leerte porque me interesaba programar una aventura gráfica, la historia la tengo ya más o menos, y con esto ya tendré un buen arranque, esperando me hallo

1 1 respuesta
javifugitivo

#154 Me alegro de que te interese el tema. No tenía ganas de hacer un plataformas o un juego tipo minijuego, sino algo sencillo de hacer pero que haga un buen uso del tema variables y de funciones de ratón.

Te puedo adelantar que voy a incluir en el tutorial:

  • Movimiento por ratón del personaje, para las animaciones nuestro amigo evento End Animation nos irá de perlas.
  • Mezcla de objetos y inventario.
  • Cambios del cursor del ratón según la acción que se pueda hacer.
  • Y probaremos un sistema de dialogos multiidioma que estoy testeando y que hará más limpia la programación, al englobar todos los dialogos en los mismos scripts.
  • La parte de los sprites, seguramente tendré ayuda de mi diseñador gráfico, pero estoy abierto a que entre todos los interesados vayais proponiendo el tema de la aventura, bocetos, colaborar con sprites, objetos de escenario,animaciones, y que salga una cosa divertida entre todos :-)
2 respuestas
metanoia

#155 Mola, por aquí tienes a otro seguidor. Para GM hay 298734 tutoriales de toda clase en internet, pero la mayoría son de plataformeros y se echan de menos géneros como este.

shenot98

#155
Tengo una duda, a ver si me la puedes resolver:

Mi persoje salta y se mueve, pero cuando entra en colision con una pared y mueves a la derecha, el sprite se queda pegado a la pared.
Los scripts

Personaje moviendo
Colision con pared
1 respuesta
javifugitivo

#157 Creo que he encontrado el fallo, te lo pongo la solución en esas dos lineas.

if (x > view_xview[0]) and place_free(x-speedUp,y) x -= speedUp;

if (x + 16 < view_xview[0] + view_wview[0]) and place_free(x+speedUp,y) x += speedUp;

La cuestión es que aunque juegas con la vspeed y hspeed, al final el movimiento izquierda y derecha lo haces con coordenadas, así que se te quedaba atascado porque seguía moviendose hacia la izquierda o derecha sin tener en cuenta la vspeed, al añadir la comprobación a esas condiciones, deja de moverse si ve que se ha chocado.

Yo no suelo usar este método, pero parece que funciona, así que lo he probado y te lo he arreglado, espero que te sirva, un saludo!!

1 respuesta
shenot98

#158 Graciias ^^

Otra cosita hehe :3

Como puedo hacer que la View0 de mi room, siga al personaje como los juegos de Mario y cosas de ese estilo?

1 respuesta
javifugitivo

#159 Si la configuras desde la room, pon en el menu de views, la opción object following, eligiendo a tu objeto personaje.

1 respuesta
shenot98

#160 Es lo que hago, pero la camara solo se mueve cuando toco el borde, y yo quiero que me siga todo el rato u.u

1 respuesta
GreyShock

#161 Google es tu amigo http://www.youtube.com/watch?v=--Qsl5f42cE&feature=player_detailpage#t=300

1 respuesta
forcem

existe alguna funcion asi directa para hacer este tipo texto que sale?

1 respuesta
javifugitivo

#163 Directa no, pero puedes usar los comandos mouse over y mouse left, para que al pasar el ratón por encima, se cree un nuevo objeto que sea ese cuadro con el texto, usando las coordenadas del objeto base. Con mouse over se crea si no existe, y con mouse left, se destruye.

1
shenot98

yo pido ayuda por tos laos, pero nadie me save resolver esto:

mi codigo

spoiler

Player normal - sprite1
player agachado - sprite2
player se acerca a un sitio bajo y se agacha para pasaro, te paras en medio del sitio bajo y el sprite vuelve a estar normal, eso es lo que me pasa y quiero que al pararse, se queda agachado
#166

1 respuesta
javifugitivo

#165 Yo no acabo de entenderte, intenta explicarte mejor y quizás pueda dar con la solución.

#165 Prueba con esto:

if (keyboard_check(vk_nokey)) and place_free (x + 0, y + 10)
{
    if place_free (x + 0, y + 0) { sprite_index = sPlayer; }
    image_index = 0;
    image_speed = 0; 
}
2 respuestas
shenot98

#166 Perfecto, pero ahora al moverme a los lados, se me queda el sprite de agachado xD
#168 todo tuyo
http://www.mediafire.com/download/3fkib6ptyc70csb/prueba.gmk

600?!!
La madre de dios

1 2 respuestas
javifugitivo

#167 Es que sin probar el código directamente, es difícil pulirlo, yo uso algo similar, para mover a mi personaje, y son unas 600 líneas de código, entre agachados,saltos, caídas, movimientos, animaciones, reposo, ataque, etc.

Si quieres pásame en privado o por aquí, el proyecto y le echo un vistazo para pulírtelo, aunque no sé si tendré tiempo hasta el Domingo noche.

Intenta encontrar la razón de que se quede agachado. De todas formas, mi consejo es que dividas las acciones en tres fases:

keyboard_check_pressed // keyboard_check // keyboard_check_released

Así tendrás más control sobre lo que pasa cuando pulsas una tecla y sueltas, cuando tienes dos pulsadas a la vez, cuando sueltas las de andar puedes hacer que vuelva a la posición de reposo, que una anule a la otra si no te interesa y cosas así, un saludo ;-)

1 respuesta
javifugitivo

#167 He tenido algunos problemas de compatibilidad,imagino que usas game maker 8.

Mi primera recomendación es que llames de forma distinta los sprites de los objetos o no podré revisarte nada ( los sprites por ejemplo - spr_player y los objetos : obj_player)

Voy a intentar tocarlo a ver que consigo.

#167 Solucionado y te he pulido un poco el código también. En Game Maker lo realmente importante a la hora de hacer opciones, es que sólo se dibuja la última acción que hagas, dando igual lo que haya por en medio. Para solucionar ese fallo, he comprobado que no haya nada encima para que te levantes si estas agachado, pero si hay algo encima, pasan a sucederse el resto de opciones, si vas en un tunel seguirás agachado, aunque no tengas nada pulsado. Lo divertido es que cómo sólo se dibuja la última acción correcta, el jugador no ve que se ha agachado o levantado cuando no toca.

//controles

if (keyboard_check(ord('R')))
{
    room_restart();
}

if place_free(x,y-10) {sprite_index = sPlayer;}   // controla que si no hay nada encima, se ponga normal antes de comprobar el resto de opciones

if place_free(x, y) and (keyboard_check(ord('D')))
{
    x += speedUp;
    if place_free(x, y + 10)  sprite_index = sPlayer;

}
if place_free(x, y) and (keyboard_check(ord('A')))
{
    x -= speedUp;
    if place_free(x, y + 10) sprite_index = sPlayer;
}
if (keyboard_check(vk_shift))
{
    image_speed = 1;
    sprite_index = sPlayerCrouch;
}
if (keyboard_check(vk_nokey)) and place_free (x + 0, y + 10)
{
    if place_free (x -2, y + 0) { sprite_index = sPlayer; }
    image_index = 0;
    image_speed = 0;
}
if place_free(x, y) and (keyboard_check(ord('D'))) and (keyboard_check(vk_shift))
{
    x += speedDown;
    image_index = 0;
    image_speed = 0;
}
if place_free(x, y) and (keyboard_check(ord('A'))) and (keyboard_check(vk_shift))
{
    x -= speedDown;
    image_index = 0;
    image_speed = 0;
}
//jump
if place_free(x-speedUp,y) x -= speedUp;

vspeed += 1

if keyboard_check_pressed(ord('W'))
if place_free(x,y+10) == false
    vspeed -= 17
    
if place_free(x,y+vspeed) == false { if vspeed > 0 move_contact_solid(270,-1) if vspeed < 0 move_contact_solid(90,-1) vspeed = 0 } if place_free(x+speedUp,y) x += speedUp; //colision if(place_meeting(x+speedUp+20,y,oWall)) { speedUp = 4; } if(place_meeting(x-speedUp-20,y,oWall)) { speedUp = 4; } if(place_meeting(x,y+speedUp+20,oWall)) { speedUp = 4; } if(place_meeting(x,y-speedUp-20,oWall)) { speedUp = 4; }
1 1 respuesta
shenot98

#169 Buah, muchisimas gracias :3

javifugitivo

Aquí la 2º parte del tutorial que voy lanzando, hoy de conceptos básicos, pero no tan claros cuando estás comenzando..

http://www.gamedev.es/?p=9292

2
KarlosWins

.

2 2 respuestas
MartiONE

#172 Esto deberia tener un hilo propio y anuncio en mediavida, luego si tengo un rato lo hago.

1
KaLaTa

a alguien le va el enlace de #172 ?

1 respuesta
javifugitivo

#174 El enlace no va pero podeis descargar el game maker studio desde el link oficial:

http://store.yoyogames.com/downloads/gm-studio/GMStudio-Installer-1.2.1220.exe

Para registrarlo como standard, teneis que instalarlo y darle a obtener licencia standard - Register. La promoción sigue activa a día de hoy, pero daros prisa,no se sabe hasta cuando ;-)

1
krzz

yo ya la he cogido , por si en un futuro le doy

1
helmerpunk

Me ha llegado un correo para ofrecerme la actualización de la licencia a la profesional por 25 dolares, ¿merece la pena actualizar desde la standard por ese precio?¿Qué diferencias hay entre las versiones?

2 respuestas
javifugitivo

#177 La principal diferencia es que con la profesional podrás optar a comprar más modulos para más plataformas. Si vas a desarrollar sólo para PC y Mac, no vale la pena. Pero si piensas algún día pillarte los módulos de android o iphone,etc, pues es un buen precio.

KaLaTa

#177 has hecho algo para que te llegue esa oferta? eres de la nueva horneada como yo que acabar de coger la versión standar free?

1 respuesta
helmerpunk

#179 Si me hice con la version standard gratuita y ayer me llegó el correo, la oferta finaliza el día 6 y aún no se que hacer xD

1 respuesta
Tema cerrado