Que tal hermanos! Voy a tratar de ser breve esta vez:
Adjunté un juego que hice hace unos meses como proyecto para mi universidad.
Los que puedan, descárguenlo y lo juegan. Lean las instrucciones y no le paren al record (solo guarda records en mi laptop :-[)
El juego es bien adictivo y es rápido, aparte de no pesar nada, anímense a jugarlo : )
Lo programé en Visual Basic y quiero hacerlo ahora en Game Maker Studio (compré la Standard Edition).
Qué ideas, sugerencias, consejos me pueden dar para desarrollar este juego en Game Maker tal como lo hice en Visual Basic?
Tengo dudas en el método a usar para las colisiones, para que no me pase lo de "detectar el choque antes de tocar la pared cuando el carro vaya rápido".
Tengo muchas ideas para agregarle a este juego y hacerlo más largo, dinámico, etc. Si alguien se anima, en equipo se trabaja mejor ;D.
Muchas gracias de antemano, saludos desde Venezuela!
En estos casos (y en casi todo los casos, realmente), lo mejor que podés hacer es empezar a programar y ya está. No sé qué tanta experiencia tengas con GM; no importa, tampoco. Si sabés como hacerlo, hacelo. Si no, hacé como si supieras. Seguramente llegue un momento en el que te tranques y no puedas avanzar. Ahí ponete a investigar. Mirá el manual, buscá en internet, buscá en el foro. Si nada de eso funciona, preguntá. Igual que como hiciste con este tema, pero ya con una duda más concreta. Así las personas que puedan resolver tu problema van a poder ayudarte más fácilmente.
Saludos y suerte.
Acabo de ver el juego, es algo de lo mas simple.
La verdad el como hacerlo en Gm, es inmensa las dintintas maneras de hacerlo.
Podes usar objects para las calles y verificar si estas colisionando con X calle las direcciones permitidas son xxx.
Otra es por coordenadas si estas en las posicion X,Y estas... solo puede moverse en estas direcciones...
Otra es con un solo object por direccion, y lo agrandas con image_xscale image_yscale y asi verificas si esta colisionando con este object se mueve solo en estas direcciones...
Espero entiendas.
Bueno, en relación al comentario de Wadk, yo la verdad sí empecé a hacer el juego y me tranqué, de hecho originalmente iba a hacer el tema sobre eso, pero pensé en que como hay tantas formas, capaz alguien daba una idea más practica que la mia.
Pero sí, tengo el problema con las colisiones, ya he intentado muchas formas pero siempre que va rápido, detecta la colisión antes de tocar la pared.
Intenté usando un obj_wall 32x32, solido, invisible, el cual ponía en cada edificio del mapa, y lo estiraba hasta cubrir completamente el edificio. No me funcionó porque cada vez que ejecutaba el juego, se descuadraban los obj_wall (Aparte de detectar el choque antes de tocar el objeto).
Intenté usando Collision_rectangle y el mismo problema.
En eso llevo días y días trancado, buscando en el foro, en wiki.yoyogames, etc... :(
Gracias por el tiempo que se toman en ayudar.
la verdad para los edificios usa mejor una mask, asi queda mas ajustada la colision y claro mas presisa-.
Otra forma es que adjuntes el editable a ver que se te puede hacer.
No entiendo bien lo de "usar una mask". Si puedes explicarlo asi breve te agradezco.
Otra cosa, para probar el Collision_rectangle, puse un obj_controller que dibuja el score en la parte de abajo. Y escribí el siguiente código en el evento Step del carro:
// Comprobar si choca
if collision_rectangle(89,71,151,122,obj_car,true,false)
{score=1}
else {score = 0}
Al probarlo me dí cuenta que la colisión es perfectamente precisa, puedo ir muy rápido pero cambia el score a 1 justo cuando el carro toca el edificio (area del collision_rectangle).
Por qué entonces no me funciona cuando le digo que en vez de cambiar el score a 1, muestre el mensaje de Chocaste y mueva el carro para atrás? Será algún problema con el show_message() ?
EDITO: Me vino una duda, uno puede publicar/distribuir juegos hechos con puros sprites de los que trae el Game Maker? O es ilegal?
La máscara de colisión es lo que estabas usando (el objeto invisible de 32 x 32).
Yo usaría una máscara, pero no en cada edificio, sino "pegada" al coche y algo menor que el coche, porque las colisiones en el ejemplo de Visual Basic son demasiado exactas (apenas rozas un edificio, y de inmediato te detienes). El juego tiene una mecánica bastante simple, incluso sin máscara de colisión debería funcionar. Creo que quedaría mejor que al chocar con los costados del auto, no se eliminara el movimiento por completo, sino que hubiera mucha fricción y el carro avanzara más lento.
Me parece que los recursos incluídos con el GM son de uso libre.