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.

Mensajes - Mataca

1
Preguntas y respuestas / Re:Cargar imagen jpg
Enero 11, 2020, 07:10:38 PM
Me lo solucionaron en el foro oficial. El problema era que el sprite_add carga la imagen en el GPU, no en el atlas del juego, por ende cada vez que se reiniciaba el room, el objeto volvía sin sprite entonces al poner sprite_delete no borraba nada y en el GPU se iban acumulando todos los niveles cargados. Lo solucione poniendo en un evento ROOM_END el sprite_delete, haciendo que cada vez que se salga del room se borre el sprite y libere la memoria el GPU.

2
Preguntas y respuestas / Re:Cargar imagen jpg
Enero 10, 2020, 03:32:22 AM
Cita de: XxBL100xX en Enero 08, 2020, 12:33:35 AM
puedes crear un background con la imagen y la ajustas al tamaño de tu room  y en los ajustes de cada room le cambias el background a tu room no se si me explico te metes a los ajustes  de tus rooms y eliges el background y listo  :D

Creo que esto funcionaría igual a como lo tengo yo. Creo que daría los mismos errores, no? O funciona diferente por el hecho de ser un background?
3
Te recomiendo no usar el save game de game maker. Hace tu propio archivo para guardar todo en un save.ini.
4
Preguntas y respuestas / Re:Cargar imagen jpg
Enero 08, 2020, 07:23:24 PM
Cita de: elviskelley en Enero 08, 2020, 08:48:00 AM
la carga de imagenes grandes nunca es, buena. lo mejor son los tilles, y puedes hacerlo por codigos

Pero hay alguna forma de agregarlos desde los archivos externos que estan en JPG? O tienen que ser directo del juego que estan en PNG? Porque el problema es que si los pongo en PNG el juego me pesa mas de 100mb, en jpg pesa 70.



Cita de: Ciberman en Enero 08, 2020, 08:56:57 AM
Por la forma en que GM (y cualquier Engine 2D moderno) maneja las texturas lo recomendable es que no los cargues en tiempo de ejercicion ya que esto ocasionará que tus sprites no sean compactados en forma de atlas (llamado texture page en gm) causando que se incremente el número de "texture swaps" en la GPU del dispositivo. Si te preocupa el peso del juego lo recomendable es que habilites la compresión PNGCrush como directiva de compilador.

Más info: https://docs2.yoyogames.com/source/_build/3_scripting/4_gml_reference/miscellaneous/gml_pragma.html

El problema es que por más que lo comprima en PNG, el juego me pesa más de 100mb. Las imagenes tienen que ir en JPG y tengo que encontrar la mejor forma de hacer que queden bien en el juego. No hay forma de ir liberando el "texture swaps" ? Ya que al pasar un nivel, el nivel anterior se podria borrar de la memoria. Solo preciso 1 nivel cargado a la vez.





EDITO:

Lo que hago cuando el nivel empieza, es borrar el sprite_index (que es el que se uso la ultima vez) y carga uno nuevo segun el nivel que es. Segun entiendo, si bien se carga en el GPU, solo sería 1 imagen por nivel, lo cual no deberia traer grandes problemas, o no? Dejo el codigo que tengo para que lo vean:

[spoiler][gml]sprite_delete(sprite_index)
switch(global.level){
case 001:
sprite_index=sprite_add("img505/a001.jpg", 1, false, true, 0, 0);
break;
case 002:
sprite_index=sprite_add("img505/a002.jpg", 1, false, true, 0, 0);
break;
case 003:
sprite_index=sprite_add("img505/a003.jpg", 1, false, true, 0, 0);
break;
case 004:
sprite_index=sprite_add("img505/a004.jpg", 1, false, true, 0, 0);
break;
case 005:
sprite_index=sprite_add("img505/a005.jpg", 1, false, true, 0, 0);
break;
case 006:
sprite_index=sprite_add("img505/a006.jpg", 1, false, true, 0, 0);
break;
case 007:
sprite_index=sprite_add("img505/a007.jpg", 1, false, true, 0, 0);
break;
case 008:
sprite_index=sprite_add("img505/a008.jpg", 1, false, true, 0, 0);
break;
case 009:
sprite_index=sprite_add("img505/a009.jpg", 1, false, true, 0, 0);
break;
case 010:
sprite_index=sprite_add("img505/a010.jpg", 1, false, true, 0, 0);
break;
case 011:
sprite_index=sprite_add("img505/a011.jpg", 1, false, true, 0, 0);
break;
case 012:
sprite_index=sprite_add("img505/a012.jpg", 1, false, true, 0, 0);
break;
case 013:
sprite_index=sprite_add("img505/a013.jpg", 1, false, true, 0, 0);
break;
case 014:
sprite_index=sprite_add("img505/a014.jpg", 1, false, true, 0, 0);
break;
case 015:
sprite_index=sprite_add("img505/a015.jpg", 1, false, true, 0, 0);
break;
case 016:
sprite_index=sprite_add("img505/a016.jpg", 1, false, true, 0, 0);
break;
case 017:
sprite_index=sprite_add("img505/a017.jpg", 1, false, true, 0, 0);
break;
case 018:
sprite_index=sprite_add("img505/a018.jpg", 1, false, true, 0, 0);
break;
case 019:
sprite_index=sprite_add("img505/a019.jpg", 1, false, true, 0, 0);
break;
case 020:
sprite_index=sprite_add("img505/a020.jpg", 1, false, true, 0, 0);
break;
case 021:
sprite_index=sprite_add("img505/a021.jpg", 1, false, true, 0, 0);
break;
case 022:
sprite_index=sprite_add("img505/a022.jpg", 1, false, true, 0, 0);
break;
case 023:
sprite_index=sprite_add("img505/a023.jpg", 1, false, true, 0, 0);
break;
case 024:
sprite_index=sprite_add("img505/a024.jpg", 1, false, true, 0, 0);
break;
case 025:
sprite_index=sprite_add("img505/a025.jpg", 1, false, true, 0, 0);
break;
case 026:
sprite_index=sprite_add("img505/a026.jpg", 1, false, true, 0, 0);
break;
case 027:
sprite_index=sprite_add("img505/a027.jpg", 1, false, true, 0, 0);
break;
case 028:
sprite_index=sprite_add("img505/a028.jpg", 1, false, true, 0, 0);
break;
case 029:
sprite_index=sprite_add("img505/a029.jpg", 1, false, true, 0, 0);
break;
case 030:
sprite_index=sprite_add("img505/a030.jpg", 1, false, true, 0, 0);
break;
case 031:
sprite_index=sprite_add("img505/a031.jpg", 1, false, true, 0, 0);
break;
case 032:
sprite_index=sprite_add("img505/a032.jpg", 1, false, true, 0, 0);
break;
case 033:
sprite_index=sprite_add("img505/a033.jpg", 1, false, true, 0, 0);
break;
case 034:
sprite_index=sprite_add("img505/a034.jpg", 1, false, true, 0, 0);
break;
case 035:
sprite_index=sprite_add("img505/a035.jpg", 1, false, true, 0, 0);
break;
case 036:
sprite_index=sprite_add("img505/a036.jpg", 1, false, true, 0, 0);
break;
case 037:
sprite_index=sprite_add("img505/a037.jpg", 1, false, true, 0, 0);
break;
case 038:
sprite_index=sprite_add("img505/a038.jpg", 1, false, true, 0, 0);
break;
case 039:
sprite_index=sprite_add("img505/a039.jpg", 1, false, true, 0, 0);
break;
case 040:
sprite_index=sprite_add("img505/a040.jpg", 1, false, true, 0, 0);
break;
case 041:
sprite_index=sprite_add("img505/a041.jpg", 1, false, true, 0, 0);
break;
case 042:
sprite_index=sprite_add("img505/a042.jpg", 1, false, true, 0, 0);
break;
case 043:
sprite_index=sprite_add("img505/a043.jpg", 1, false, true, 0, 0);
break;
case 044:
sprite_index=sprite_add("img505/a044.jpg", 1, false, true, 0, 0);
break;
case 045:
sprite_index=sprite_add("img505/a045.jpg", 1, false, true, 0, 0);
break;
case 046:
sprite_index=sprite_add("img505/a046.jpg", 1, false, true, 0, 0);
break;
case 047:
sprite_index=sprite_add("img505/a047.jpg", 1, false, true, 0, 0);
break;
case 048:
sprite_index=sprite_add("img505/a048.jpg", 1, false, true, 0, 0);
break;
case 049:
sprite_index=sprite_add("img505/a049.jpg", 1, false, true, 0, 0);
break;
case 050:
sprite_index=sprite_add("img505/a050.jpg", 1, false, true, 0, 0);
break;
case 051:
sprite_index=sprite_add("img505/a051.jpg", 1, false, true, 0, 0);
break;
case 052:
sprite_index=sprite_add("img505/a052.jpg", 1, false, true, 0, 0);
break;
case 053:
sprite_index=sprite_add("img505/a053.jpg", 1, false, true, 0, 0);
break;
case 054:
sprite_index=sprite_add("img505/a054.jpg", 1, false, true, 0, 0);
break;
case 055:
sprite_index=sprite_add("img505/a055.jpg", 1, false, true, 0, 0);
break;
case 056:
sprite_index=sprite_add("img505/a056.jpg", 1, false, true, 0, 0);
break;
case 057:
sprite_index=sprite_add("img505/a057.jpg", 1, false, true, 0, 0);
break;
case 058:
sprite_index=sprite_add("img505/a058.jpg", 1, false, true, 0, 0);
break;
case 059:
sprite_index=sprite_add("img505/a059.jpg", 1, false, true, 0, 0);
break;
case 060:
sprite_index=sprite_add("img505/a060.jpg", 1, false, true, 0, 0);
break;
case 061:
sprite_index=sprite_add("img505/a061.jpg", 1, false, true, 0, 0);
break;
case 062:
sprite_index=sprite_add("img505/a062.jpg", 1, false, true, 0, 0);
break;
case 063:
sprite_index=sprite_add("img505/a063.jpg", 1, false, true, 0, 0);
break;
case 064:
sprite_index=sprite_add("img505/a064.jpg", 1, false, true, 0, 0);
break;
case 065:
sprite_index=sprite_add("img505/a065.jpg", 1, false, true, 0, 0);
break;
case 066:
sprite_index=sprite_add("img505/a066.jpg", 1, false, true, 0, 0);
break;
case 067:
sprite_index=sprite_add("img505/a067.jpg", 1, false, true, 0, 0);
break;
case 068:
sprite_index=sprite_add("img505/a068.jpg", 1, false, true, 0, 0);
break;
case 069:
sprite_index=sprite_add("img505/a069.jpg", 1, false, true, 0, 0);
break;
case 070:
sprite_index=sprite_add("img505/a070.jpg", 1, false, true, 0, 0);
break;
case 071:
sprite_index=sprite_add("img505/a071.jpg", 1, false, true, 0, 0);
break;
case 072:
sprite_index=sprite_add("img505/a072.jpg", 1, false, true, 0, 0);
break;
case 073:
sprite_index=sprite_add("img505/a073.jpg", 1, false, true, 0, 0);
break;
case 074:
sprite_index=sprite_add("img505/a074.jpg", 1, false, true, 0, 0);
break;
case 075:
sprite_index=sprite_add("img505/a075.jpg", 1, false, true, 0, 0);
break;
case 076:
sprite_index=sprite_add("img505/a076.jpg", 1, false, true, 0, 0);
break;
case 077:
sprite_index=sprite_add("img505/a077.jpg", 1, false, true, 0, 0);
break;
case 078:
sprite_index=sprite_add("img505/a078.jpg", 1, false, true, 0, 0);
break;
case 079:
sprite_index=sprite_add("img505/a079.jpg", 1, false, true, 0, 0);
break;
case 080:
sprite_index=sprite_add("img505/a080.jpg", 1, false, true, 0, 0);
break;
case 081:
sprite_index=sprite_add("img505/a081.jpg", 1, false, true, 0, 0);
break;
case 082:
sprite_index=sprite_add("img505/a082.jpg", 1, false, true, 0, 0);
break;
case 083:
sprite_index=sprite_add("img505/a083.jpg", 1, false, true, 0, 0);
break;
case 084:
sprite_index=sprite_add("img505/a084.jpg", 1, false, true, 0, 0);
break;
case 085:
sprite_index=sprite_add("img505/a085.jpg", 1, false, true, 0, 0);
break;
case 086:
sprite_index=sprite_add("img505/a086.jpg", 1, false, true, 0, 0);
break;
case 087:
sprite_index=sprite_add("img505/a087.jpg", 1, false, true, 0, 0);
break;
case 088:
sprite_index=sprite_add("img505/a088.jpg", 1, false, true, 0, 0);
break;
case 089:
sprite_index=sprite_add("img505/a089.jpg", 1, false, true, 0, 0);
break;
case 090:
sprite_index=sprite_add("img505/a090.jpg", 1, false, true, 0, 0);
break;
case 091:
sprite_index=sprite_add("img505/a091.jpg", 1, false, true, 0, 0);
break;
case 092:
sprite_index=sprite_add("img505/a092.jpg", 1, false, true, 0, 0);
break;
case 093:
sprite_index=sprite_add("img505/a093.jpg", 1, false, true, 0, 0);
break;
case 094:
sprite_index=sprite_add("img505/a094.jpg", 1, false, true, 0, 0);
break;
case 095:
sprite_index=sprite_add("img505/a095.jpg", 1, false, true, 0, 0);
break;
case 096:
sprite_index=sprite_add("img505/a096.jpg", 1, false, true, 0, 0);
break;
case 097:
sprite_index=sprite_add("img505/a097.jpg", 1, false, true, 0, 0);
break;
case 098:
sprite_index=sprite_add("img505/a098.jpg", 1, false, true, 0, 0);
break;
case 099:
sprite_index=sprite_add("img505/a099.jpg", 1, false, true, 0, 0);
break;
case 100:
sprite_index=sprite_add("img505/a100.jpg", 1, false, true, 0, 0);
break;
}[/gml][/spoiler]

(son 500 niveles, lo tuve que cortar por el limite de caracteres de post)
5
Hola.
Actualmente estoy haciendo un juego  para android en el cual necesito cargar 1 imagen (grande) diferente en cada nivel. Para alivianar el peso del juego, las tengo en JPG. Lo que hago actualmente es en cada nivel agregar un sprite con su respectiva imagen JPG y borrar el sprite anterior (para que no se llene de sprites el juego), pero esto me ocasiona errores de textura eventualmente. Alguien sabe algun otro metodo de como hacer aparecer una imagen JPG en el juego que no sea esta?

Desde ya, muchas gracias.

Mataca
6
Preguntas y respuestas / Re:http_get download status
Junio 15, 2018, 01:46:43 AM
Cita de: kostra en Junio 14, 2018, 08:54:47 PM
en ese mismo link que pones lo dice, en un evento asincrónico, una ds_map

Además en este foro se ha hablado bastante de ese tema
(no te respondo directamente porque no sé hacerlo de memoria y también me cuesta, pero me ayudaron bien y por ahí está escrito xd y de paso actualizo tu post pa que lo vean xd)

Sé que es así, pero no se hacerlo. Trate de varias maneras. No encontre ninguna guía en este foro ni en el oficial.
7
Preguntas y respuestas / http_get download status
Junio 14, 2018, 04:15:37 PM
Hola. Estoy intentando hace rato el cómo se obtiene el download status del http_get_file, pero no logro dar. Alguien podria darme una mano?
Esta es la guia del http_get_file: https://docs.yoyogames.com/source/dadiospice/002_reference/asynchronous%20functions/http_get_file.html

Saludos,
Mataca
8
Hola. Me pase del GM1 al GM2. Tengo objetos con sprites transparentes que en GM1 eran "clickeables", ahora en GM2 cuando se crea el room no existen. Si pinto el objeto de cualquier color, vuelve a existir. Hay alguna opción nueva que no estaría viendo? Lo unico que encuentro viable es poner los objetos no visibles al fondo del room con color, y que al clickearlos vengan para adelante, pero hacer esto con todos los objetos transparentes es bastante tedioso...

9
Cita de: Void en Diciembre 27, 2017, 08:41:05 AM
Se refieren a la SDK de servicios de Google Play, pero de todos modos la extensión oficial actual de Yoyo usa la versión 9.6.1 para Android y la versión 7.16.0 para iOS, así que igual no hay problema.

Si en el futuro Google decidiera pedir una versión superior a esa, o si actualmente alguien quisiera utilizar un SDK más actual siempre podría escribir su propia extensión, esa fue una de las ventajas del sistema de extensiones, no se depende exclusivamente de Yoyo para todo.

Si algo va a romper el exportador de alguna plataforma va a ser un cambio que afecte el motor interno, no las extensiones.

Esto quiere decir que el cambio no nos va a afectar a los que ya estamos usando la ultima versión de gm 1.4 ?
10
Preguntas y respuestas / Re:Vibrar android
Agosto 23, 2017, 07:18:47 AM
Cita de: Void en Agosto 23, 2017, 06:39:58 AM
En el marketplace tienen esta extensión:

https://marketplace.yoyogames.com/assets/5396/haptics

Otra solución sería crear tu propia extensión para Android.

Con esto lo hice anda bien de bien! Y pesa solo 5kb.

Muchas gracias

Saludos,
Mataca
11
Preguntas y respuestas / Re:Vibrar android
Agosto 23, 2017, 06:01:33 AM
Cita de: Clamud en Agosto 23, 2017, 05:05:25 AM
Se eliminó desde la versión 1.4.1767, en la lista de cambio aparece esto: "Removed the Immersion "Haptics SDK" integration on VM builds". No se puede usar con la máquina virtual, pero tal vez si se puede al crear el apk con Yoyo compiler.

Y entonces en android no se puede hacer vibrar mas el cel?

No lo pude compilar, me dice que la linea esta mal escrita como si el comando no existiera.

12
Preguntas y respuestas / Vibrar android [Solucionado]
Agosto 23, 2017, 02:36:16 AM
Hola. Actualice el GM a la ultima version y veo que el immersion_play_effect dejó de ser un comando. Busque en el changelog, en el foro oficial y acá, y no encontre nada al respecto. Cómo hago para que vibre el celular ahora?

Desde ya, muchas gracias.

Saludos,
Mataca
13
Preguntas y respuestas / Re:Anuncio Intersticial
Mayo 25, 2017, 10:07:49 PM
Cita de: Dublan en Mayo 25, 2017, 09:20:07 AM
Pero si prácticamente todos los juegos tienen esta mecánica! :-\

Además, doy la opción de mejorar el premio si ves vídeo, es decir, no es obligado.

Una cosa es el video reward, otra es el intersticial.
14
Preguntas y respuestas / Re:Anuncio Intersticial
Mayo 25, 2017, 08:18:49 AM
Cita de: Dublan en Mayo 24, 2017, 08:32:27 PM
Hola makeros!

A ver si me podéis ayudar con algo que no logro solucionar en android.

Tengo el tipico boton de premio, que despues de que una cuenta atras llegue a 0, si le das click te da un premio y luego sale el anuncio intersticial.

Pues bien, el código que tengo funciona perfectamente. Al darle click se ve el anuncio. El problema viene en que tengo 2 de esos botones en la room, y cuando para ambos botones la cuenta atras ha terminado y voy a darles para ver el anuncio, veo bien 1 anuncion pero el otro no me lo llega a mostrar. ¿Sabeis si existe alguna limitacion de tiempo por parte de google play para mostrar 2 anuncios seguidos?

GRAX!

Creo que no esta permitido mostrar anuncios al clickear como dices tu. Te recomiendo ver este video para evitar baneos:
https://www.youtube.com/watch?v=wrZiwrkQWBw
15
Cita de: serNAVARRO en Mayo 01, 2017, 09:28:44 PM
Hola a todos,

       Hace unos días fui baneado de AdMob durante un tiempo por motivos que carecen de sentido por lo que me preguntaba si conocéis alguna otra opción a AdMob y de entre ellas cual es la mejor según la facilidad que pone al ser utilizada en GM y los ingresos que otorga.

Un saludo!! ;)

En admob no te banean sin sentido. Si bien son muy exigentes, siempre hacen las cosas bien. Te recomiendo que reveas el error para que no te baneen en otro lado tambien.

Adcolony es muy fácil de integrar. Yo uso ambos, adcolony y admob.

saludos