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 - matiascarpello

1
Preguntas y respuestas / Ayuda con os_get_language()
Octubre 07, 2020, 04:02:21 PM
Hola comunidad. Tengo un problema que no logro resolver.
Mi juego estará traducido a 3 idiomas: (ingles, español e italiano)

Necesito desarrollar un script utilizando os_get_language() para que devuelva el idioma del sistema operativo.
Y lo más importante, si el valor que devuelve os_get_language() es diferente al español e italiano entonces que ocurra lo siguiente:  global.LANGUAGE="eng";

Si el valor os_get_language() es en español entonces global.LANGUAGE="esp".   Y si os_get_language() devuelve el idioma en italiano entonces que global.LANGUAGE="ita".

Este es mi código: Mi problema es que el código de alguna manera no funciona ya que estoy ejecutando el juego con mi Sistema operativo en español pero siempre global.LANGUAGE="eng";



if os_get_language<>"es" && os_get_language<>"it"
{
global.LANGUAGE="eng";
}


if os_get_language="es"
{
global.LANGUAGE="esp"
}

if os_get_language="it"
{
global.LANGUAGE="ita"
}
2
Hola comunidad.

Recurro a ustedes porque ya agote todas las posibilidades tratando de resolver lo siguiente.

Quiero hacer que el personaje lance una cuerda y se agarra de un gancho como en la imagen de ejemplo.



Voy a comentarles lo que ya tengo resuelto.

Cuando el personaje está a cierto rango del gancho, al apretar un boton del joystick crea un objeto cuerda que se dirige automáticamente hacia las coordenadas "x" e "y" del objeto gancho, y en el mismo objeto cuerda dibujo una linea en el siguiente draw:


draw_line_width(x, y, player.x, player.y, 3);


Básicamente lo que me falta resolver es el movimiento del player. Es decir, cuando el objeto cuerda colisiona con el objeto gancho tengo que tratar de resolver el movimiento de mi personaje.

También me falta ver como implementar que el personaje se agarre del objeto gancho más cercano, porque si tengo varios ganchos muy cerca como en el de la imagen, podría generarse un conflicto.

Podría usar un move_towards_point en mi personaje, pero eso me causaría conflictos de colisión.

Me falto aclarar que mi juego se juega con un Joystick. No utilizo ni el teclado ni el mouse.
¿Alguna idea?
3
Hola a todos.

Necesito que alguien me pueda orientar un poco para tratar de ver cual sería la mejor forma de implementar lo siguiente, puesto que se me ocurren varias formas, pero tengo que pensar tanto en el acabado final como en el rendimiento del juego.

¿Cómo podría hacer un efecto como el del video?

https://www.youtube.com/watch?v=N0o4XjrV5Pg&t=3s

Quiero que los arboles tengan movimiento. No me importa la dirección del viento y esas cosas. Solo quiero que la vegetación se mueva para que el juego no sea tan estático.

A simple vista, diría que la solución sería animar los sprites de los árboles, pero eso supone un gran desgaste al tener que animar diferentes tipos de árboles, y por lo tanto una gran cantidad de carga por las animaciones de cada fotograma.

Por eso pensaba que quizás se pueda resolver con unos simples sprites y que el código haga la magia.

Cualquier tipo de ayuda que me permita orientarme sobre como implementar el movimiento de los árboles me serviría muchísimo. Saludos.
4
Hola comunidad. ¿Como andan? Espero que muy bien.

Quiero implementar el siguiente sistema pero no se cuál sería la mejor forma de llevarlo a cabo.

Quiero hacer un juego sobre cultura musical y en algunos niveles para que el usuario pueda resolver un nivel tendrá que dar toques la pantalla siguiendo un ritmo. Por ejemplo, tocar la pantalla del celular y tratar de reproducir la canción del feliz cumpleaños. Es como si les dijera que toquen el feliz cumpleaños golpeando sus mesas o un mueble, pero en este caso llevado a cabo a un juego y en vez de golpear una mesa o mueble, el usuario tendrá que dar toques a la pantalla.

Lo complicado sería cómo hacer para sincronizar los toques con el ritmo, eso es lo que no logro comprender como llevarlo a cabo.

Y una aclaración, mi juego no contendrá ninguna pista musical ni nada por el estilo, no es un guitar hero. Lo aclaro por si algunos pensaron que el juego iba por ese camino.
5
Hola gente.

   Tengo la siguiente duda.

En mi juego se crea un objeto pared, y necesito que todos los objetos que colisionen con el objeto pared se destruyan.

Podría solucionarlo utilizando el evento collition en cada uno de los objetos que quiero que se destruyan. El problema es que eso consumiría muchísimos recursos, porque son más de 100 diferentes los que tiene que destruir el objeto pared.

Por eso quería saber si hay alguna forma de que en el evento create del objeto pared, se pueda utilizar alguna función de que todo lo que colicione con el objeto pared sea destruido. De esa forma utilizaría unas simples líneas de código en un solo objeto y en el evento create el lugar de estar añadiendo códigos a más de 100 objetos diferentes.
6
Preguntas y respuestas / Deformación con Drag GUI
Diciembre 08, 2017, 08:55:01 PM
Hola a todos comunidad:


Tengo el siguiente código en un objeto controlador que lo que hace es escalar mi juego a pantalla completa sin deformarlo como se ve en la imagen de arriba. De esta forma mi juego funciona perfectamente en cualquier proporción, ya sea 16:9 o 4:3, etc.


gui_width=640;
gui_height=360;


view_wview[0]=640;
view_wport[0]=640;

ancho = display_get_width();
alto = display_get_height();

ratio = ancho / alto;
view_hview[0] = view_wview[0]/ratio;
view_hport[0] = view_hview[0];


El problema es cuando dibujo en el evento Draw GUI. En mi caso, si se fijan en mi imagen de ejemplo las virtual key están estiradas. Cualquier cosa que dibuje en Draw GUI pasa eso.

Mi juego nativamente está diseñado a 640x360 y tiene una ratio de 16:9. Pero cuando lo pruebo en un emulador android con aspect ratio de 4:3 pasa como se ven en la imagen.

Ya intenté de todo y no se por que se estiran al dibujar en Draw GUI.

¿Alguna idea?

El código que utilizo para dibujar las virtual key son:


///Dibujar virtualkeys

display_set_gui_size(gui_width,gui_height);

global.vkleft= virtual_key_add (gui_width-625, gui_height-80,64,64,(vk_left));
global.vkright= virtual_key_add (gui_width-540, gui_height-80,64,64,((vk_right)));
global.vkattack= virtual_key_add (gui_width-150, gui_height-80,64,64,(ord('X')));
global.vkjump= virtual_key_add (gui_width-70, gui_height-80,64,64,(ord('Z')));

draw_sprite(sLeftArrow,0,gui_width-625,gui_height-80);
draw_sprite(sRightArrow,0,gui_width-540,gui_height-80);
draw_sprite(sAtkButton,0,gui_width-150,gui_height-80);
draw_sprite(sJumpButton,0,gui_width-70,gui_height-80);

7
Hola gente, tengo una consulta.

Yo utilizo el siguiente código en un evento step de un controlador para desactivar todas las instancias que se encuentren fuera de la view:


instance_activate_all();
      instance_deactivate_region(view_xview[0],view_yview[0]-200,view_wview[0],view_hview[0]+200,false,true);


El código funciona perfecto pero yo necesito que una instancia en particular no sea afectada por el script, o sea que no se desactive en ningún momento.

¿Cómo puedo adaptar ese script que utilizo para que una instancia en particular no sea desactivada?
8
Hola gente. Tengo una duda y quiero saber como sería posible hacer lo siguiente.

Quiero que en el evento create se compruebe una sola vez si el objeto bloque colisiona con el objeto enemigo.

Si el objeto bloque colisiona con el enemigo entonces que solo el enemigo con el que colisiona el bloque se destruya. No todas las instancias enemigos. Solo con el que coliciona.

Para eso yo trato de aplicar en el evento create del objeto bloque un place_meeting(x,y,obj_enemigo).

El problema es que no se como hacer para que elimine solo al enemigo que está colisionando con el bloque. Con el evento collision es fácil, le agrego destroy y marco la casilla other, pero yo necesito que esté en el evento create para poder optimizar mi código, ya que el evento collition hace una comprobación permanente.
9
Preguntas y respuestas / Unir varias rooms en una sola
Noviembre 27, 2017, 09:05:03 PM
Hola comunidad. Tengo una duda con la generación procedural. Investigando bien en foros llegué a la conclución que hay dos formas de implementar la generación procedural.

El 1er metodo es como el juego spelunsky en el que absolutamente todo es es generado de forma procedural.
El 2do método es como el juego Rogue Legacy, en el que se crean previamente roms prefabricadas con alguna aleatoriedad y después esas roms se unen entre sí.

Yo quiero intentar el 2do método y crear varias roms pre fabricadas, pero ¿cómo puedo unir roms una al lado de otras?
¿Hay alguna función en gamemaker para unir roms?

Cuando digo unir roms me refiero a que todas hagan una sola rom grande.
10
Hola comunidad.

Tengo el siguiente dilema.

Tengo en una habitación 1000 bloques. Necesito que de forma aleatoria arriba de ese bloque tenga sprite animado.
Hasta ahí todo perfecto.

Mi duda es como hacerlo para tener mejor rendimiento. Y para eso tengo dos opciones.

La primera es utilizar el evento draw en el bloque utilizando la función draw_self() y dibujar arriba del bloque el sprite en cuestión.
La segunda opción es en ves de dibujar el sprite, crear directamente un objeto que tenga esa animación de sprite.

Si utilizo el evento draw, serán 1000 bloques que tendrán ese evento cada uno dibujando.
Si utilizo la opción de crear una instancia que tenga esa animación, serán 1000 instancias nuevas creadas en la room.

¿Algún consejo?




11
Hola comunidad.

Tengo el siguiente código que lo que hace es repetir entre 10 a 15 veces una instancia.
Se crea de forma aleatoria entre 10 a 15 bloques dentro de los límites que le establecí tanto en el eje x como en el eje y.
Ahora, mi duda es que de esta forma los bloques se crear por cualquier parte, yo lo que necesito es que se ajusten a la grilla de 32, por que cada bloque tiene 32 px.

¿Cómo podría implementar esa parte?


repeat(irandom_range(10,15))
    {
        instance_create(x+irandom_range(0,480),y+irandom_range(0,256),obj_muro)
    }
12
Hola gente.

Tengo un problema y no se como resolverlo.

Tengo la siguiente secuencia que lo que hace es utiizando la sentencia repeat crear 50 bloques.

repeat(50)
{
instance_create(x,y,bloque);
}



Mi problema es que esos bloques se crearán todos en un mismo lugar. Yo necesito que esos bloques se creen uno encima de otro y se apilen hacia arriba. Cada bloque tiene una medida de 32px por lo que se tendrían que mover cada nuevo bloque que se crea, 32px por encima del anterior.

El tema es ¿Cómo hacerlo?
13
Hola gente. Tengo ganas de hacer un juego en Androi distinto. La particularidad sería que el usuario  pueda buscar una foto e insertarla en el juego y usarla como personaje. Sería bastante original. Ya he vistos juegos de ese tipo pero nada que se haya hecho en Game Maker. Por eso, para comenzar con este proyecto y que también les servirá a todos en la comunidad, quisiera que puedan guiarme sobre algunos aspectos que desconozco como por ejemplo.

Tengo pensado dos métodos.

1 - El primero como dije es que el usuario pueda buscar entre las fotos de su galería en android e insertarla en el juego transformándolo en sprite supongo.

2 - La segunda opción creo que sería más fácil y rápido. El usuario se saca una foto a su rostro y dicha foto se convierte en sprite.

Ahora analizando un poco esos dos métodos. Para el primero habría que ver si gms permite o de última con una extensión buscar archivos dentro de android y convertirlos en sprite. Y si es posible, quedaría todavía una parte complicada, que es ajustar la foto de la persona y recortarla de modo que solo se vea el rostro.
Para el segundo punto que lo veo más viable, habría que ver si es posible acceder a la cámara de android y sacar una foto y guardarlo como sprite. Creo que hay una extensión que permite acceder a la cámara de android pero cuesta 9 U$S y tampoco estoy seguro de si es posible importar esa foto tomada al juego.

Bueno, si tienen alguna idea de como implementar este sistema dejen su opinión. Saludos a todos.
14
Hola comunidad. Quisiera saber como podría implementar un sistema para lanzar como en el juego de este video. https://www.youtube.com/watch?v=GEESJLjy8Rk
En ese juego, uno desliza el dedo por la pantalla táctil y la pelota va a esa dirección. Incluso puedo deslizar dibujando una curva sobre la pantalla y la pelota tiene esa curvatura.

Aquí dejo una imagen también para que se entienda. En el cuadro izquierdo se hace ese swipe en la pantalla táctil y en el cuadro derecho se lanza la pelota tomando esa dirección.


Creo que pasándolo a GMS sería utilizar las funciones de los eventos del mouse. Al presionar el botón izquierdo del mouse en un punto, se dibuja un trayecto invisible, y al soltar la pelota se crea y sigue la ruta de la dirección.

Básicamente quizás sea más fácil de lo que pienso, pero no tengo idea como implementarlo.
15
Hola comunidad. ¿Cómo están? tengo una duda y quisiera saber si me pueden dar una mano. ¿Hay alguna función en GMS para cheakear si hay conexión a internet? Porque en mi juego necesito subir una puntuación a una base de datos mysql, pero antes quiero chequear si el usuario dispone de conexión a internet.
16
Hola gente. He realizado un juego educativo de preguntas y respuestas sobre historia y geografía en Android. Actualmente en mi colegio los directivos de la institución me felicitaron por la iniciativa y me pidieron que el juego participe en un evento que se desarrolla todos los años en mi colegio y que tiene que ver con promover justamente la educación.

Ellos quieren que a mi juego le añada un sistema para registrar las puntuaciones más altas, y cuando termine el evento que dura 5 días, los estudiantes que tengan la mayor puntuación en mi juego, sean premiados.

Bien, lo de registrar las puntuaciones más altas ya lo tengo y todo funciona. Mi problema es que cuando uno pierda, les tiene que aparecer un formulario para que pongan su nombre y apellido y número de documento. Luego un botón de enviar para justamente enviar esos datos más la puntuación que registró a una base de datos.

Esa es mi gran duda. ya tengo todo el juego hecho pero, ¿como subir el nombre, apellido,número de documento y su puntuación obtenida a una base de datos por ejemplo en Mysql?
17
Hola gente, ya he terminado mi juego para android de preguntas y respuesta. Tiene en total más de 1000 preguntas, y todas ellas son leídas desde un archivo *.ini.

Como son tantas líneas en el archivo *.ini directamente coloque ese archivo en datafile de gamemaker y listo, De esa forma ya las preguntas y sus respuestas correctas son leídas de ese archivo *.ini.

Bien, ahora que ya esta eso explicado voy a mi problema. ¿Es posible actualizar ese archivo *.ini por internet?
Porque de esa forma puedo añadir un botón a mi juego de actualizar preguntas, por lo tanto si el usuario tiene conexión a internet de descarga el archivo *.ini actualizado.

Por supuesto que también esta la opción de actualizar el juego con las nuevas preguntas en google play, pero me parece más práctico y cómodo la opción anterior de actualizar el archivo *.ini online.
18
Hola gente, tengo una consulta. Yo estoy haciendo un juego de preguntas y respuesta y ya lo tengo casi terminado.

El juego lee entre un total de 1000 preguntas de un archivo con extensión *.ini. Y en el juego hago el llamado al archivo con  ini_open("quiz.ini").

Mi problema es que para que el juego lea ese archivo *.ini tengo que copiar ese archivo en la ruta c:/usuario/appdata/local/juegotrivia/quiz.ini

Son muchas líneas para crear el archivo *.ini con todo el contenido, por eso opte por agregarlo manualmente. Además de que el juego esta diseñado para ser publicado en android. Mi pregunta es, ¿Cómo podría incluir de alguna manera ese archivo *.ini cuando se compile el juego en APK?

Podría utilizar un sistema y que lea el archivo *.ini desde internet pero el tema es que yo quiero que la gente no requiera de internet para jugar a mi juego.

Por otro lado, en Gamemaker debajo de rooms hay una opción que dice includes files, yo importo ahí el archivo ini pero no lo toma, sí o si lo tengo que agregar de forma manual a esa ruta.

19
Hola gente. Antes que nada feliz año para todos y sobre todo que sea un excelente año para nuestros proyectos.
Tengo un problema que me está rompiendo la cabeza y no doy con la solución.
Tengo una room en donde se dibuja en una cierta posoción un texto. Cuando pruebo el proyecto en esa room se ve perfecto.
Mi problema es cuando entro a otra room y después regreso a la room en donde se dibujaba el texto, resulta que el texto que dibujaba cambia de posición un poco en el eje "Y" y no logro entender el motivo.
No tengo ningun objeto persistente y las room tampoco lo son. También me fije en el debug mode y el objeto que dibuja el texto esta correctamente. Incluso figura que esta dibujandolo en la posición correcta cuando en realidad no lo es.
¿Tienen alguna idea de que puede ser el problema?
20
Bueno gente, vuelvo a reabrir este tema. No se porque lo eliminaron. Quizás haya sido porque estaba mal explicado y por eso ahora loo explicaré con lujo de detalles.

Antes que nada, por favor, vean la siguiente imagen:



El juego que estoy intentando hacer será algo parecido a esa imagen. Ya tengo listo el sistema de lanzamiento, lo que me falta es dibujar la predicción de donde iría el lanzamiento con el ángulo incluido.

Me esta rompiendo la cabeza el intentar implementarlo. Porque para predecir el trayecto hay que tener en cuenta muchos factores como la gravedad de la pelota, la velocidad, etc.

Supongo que aquí entra en juego parabolas, y mucha geometría.  :'(

Les dejo mi ejemplo de lanzamiento para que se den una idea.