Noticias

Importante: ¡Si quieres publicar tu juego no olvides leer este tema!

* Sponsor

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - 0m@R

Páginas: 1
1
Preguntas y respuestas / Re: enemigo que vuele
« en: Agosto 26, 2021, 10:43:45 pm »
el juego es plataformas supongo? o isométrico?
suma vectorial, un vector apunta al jugador y otro hacia arriba o abajo, y este arriba y abajo va acorde a un temporizador oscilante, incluso se puede sincronizar la sub-imagen de las alas con eso...
te recomiendo veas el algoritmo PSO partcle swarm optimizatión, ver eso parece un enjambre de criaturas volando hacia un objetivo.

2
General / Re: Game maker, ideas.
« en: Julio 11, 2021, 06:33:45 am »
Todo es cuestión de conocer de programación, modelos de información y motores de juego más allá del GM mismo.

Me acordaba de una vez que en Python hice un software para crear modelos voxel y exportarlos como imagenes para sprites:





Para ese software no fué necesario usar sprite alguno, ya que todo se dibuja con circulos de colores, incluso el icono del software se creaba al ejecutarlo; en GM se puede hacer lo mismo.

3
Preguntas y respuestas / Re: como crear articulaciones??
« en: Julio 01, 2021, 02:05:56 am »
He creado un ejemplo, tiene dos brazos y ambos están programados de manera diferente:



El izquierdo funciona con algoritmo estocástico, es decir que busca soluciones al azar y las compara con una función de error, o mejor dicho función de cómo debería ser lo ideal, un número que tiende a cero.

El derecho usa unas físicas rudimentarias, reglas básicas, el codo se aleja o acerca para cumplir con la posición ideal.

Nótese que el izquierdo suele hacer movimientos más bruscos, mientras el derecho parece que se estira y contrae.

Esto sirve si la articulación tiene más de un codo, mismo principio.

El cuerpo se puede mover, sea absolutamente, moviendo todo, o solo, forzando a que los brazos se adapten.

Aquí en mi Dropbox subí el ejecutable y editable, carpeta "NoJuegos", archivo "brazitop.zip":
https://www.dropbox.com/sh/plhbo1ornjah8jb/AAAOdaSe5JArLE1XRo--Eh_7a?dl=0

O en GitHub:
https://github.com/OmarsaurioJordan/Brazitop

También lo adjunto aquí...

edito: para evitar esos salticos que da el brazo izquierdo, cambiar en el código la comparación de errores, de <= por < solo :p

4
Propuestas y soporte / Reunión virtual en videojuego
« en: Junio 29, 2021, 03:34:36 am »
Hola people, estoy necesitando de su ayuda, he creado un campus virtual universitario a modo de demo antes de hacer el desarrollo final, el cuál será online.

Aquí un trailer:


necesito por mera curiosidad ver cuánta gente soporta, a pesar de que no está hecho con optimización en mente. El servicio VLAN aguanta 50 personas, así que propongo... este próximo sábado 3 de Julio, 7pm (hora Bogotá Colombia), hagamos una reunión de CGM en ese mundo virtual. Siéntanse libres de invitar más gente, vamos a reventar ese protocolo UDP que creé :v

pd: allí pueden compartir sprites de sus juegos, escritos, composiciones de música, imágenes, etc...

las instrucciones para ingresar son las sigueintes:


y no olviden desconectarse de la VLAN al salir.

5
Juegos en desarrollo / UnivalleVirtual (UVV)
« en: Junio 18, 2021, 06:49:36 am »


UnivalleVirtual


Red Social


GM: Studio

Hola comunidad GM, aquí les traigo mi proyecto actual, en el momento es un demo, pues es algo pretencioso: red social gamificada online masiva para mi campus universitario.

En el link hay un documento con la descripción detallada del proyecto, también dejo un video, y si gustan pueden probar el demo en PC; No está programado para ser masivo Ni online aún, funciona en LAN (a no ser que se usen VLAN), y No está optimizado para nada, mejor dicho, hice eso así a lo diablo nomás para ver cómo funcionaba.

Los gráficos, letras, etc están en bajísima resolución y falta hacer GUIs que están solo como texto y teniendo que hundir pura tecla. Pero todo eso cambiará para la versión final, que será programada de cero en Godot y Python (ok GMS queda corto para estos proyectos).

Aún así, este proyecto tiene muchas cosas, creo que muestra la versatilidad de GMS, tiene todo un sistema de sincronización entre PCs que funciona como p2p o simulando un cliente/servidor, todo mediante UDP.

Si tienen preguntas puntuales sobre como hice una u otra cosa me las dejan aquí o en preguntas y respuestas. (ver referentes: Club Cardinal, Hotel Habbo, Club Penguin, etc).

Opinaos cualquier cosa sobre este campus Frankenstein  :P

pd: no tengo idea cuantos usuarios soporta esta versión, en LAN o VLAN, pero dudo sea más de 50 por la no optimización.





https://gamejolt.com/games/univallevirtual/627351


6
Preguntas y respuestas / Re: Como crear un delta time general?
« en: Abril 05, 2021, 11:04:23 pm »
No importa lo que te digan sobre la room_speed en este aspecto, esa variable se cambia es de acuerdo al tipo de juego y el peso de sus lógicas, como usuario de GMS por años nunca he usado una diferente a 30 y me va bien en todos los proyectos (aconsejan muchos usar 60).

Un juego con toque profesional, que quiera perdurar por la posteridad, moviéndose bien en las futuras máquinas más potentes y también en las lentas máquinas de antaño, tiene que tener un trabajo con el delta de tiempo en sus lógicas; y el cambio en tu código no es mucho, mira:

Crea una vez la variable global para guardar el delta de tiempo (le llamé dlt):
globalvar dlt;
dlt = 0;

En un objeto maestro (principal, único, perdurable, etc) pon el evento Begin Step con esto:
dlt = min(0.1, delta_time * 0.000001);

El 0.000001 es para que el resultado nos quede en segundos, así poder implementar todo más intuitivamente.
El 0.1 es porque cuando por ejemplo, arrastras la ventana del juego, este se congela y acumula más delta, entonces este numerito es como un freno para impedir un delta mayor a 0.1 segundos.

Y listo, ese dlt lo usas en todo el resto del código, usualmente se pone en dos lugares, para moverse:
var vel = velocidad * dlt;
x += lengthdir_x(vel, direction);
y += lengthdir_y(vel, direction);

Para mover contadores o temporizadores, pd: hace mucho no uso los alarm[0], más que para disparar un evento inicial o que no importe la precisión; en vez de eso has esto:

evento Create:
reloj = 0;

evento Step:
reloj -= dlt;
if reloj <= 0 {
    reloj += 5;
    // hacer cosas
}

El teporizador se disparará cada 5 segundos, y hará algo, notar que lo inicializamos en 0 así que disparará empezando; también se puede hacer que cuando uno lo ponga en -1 quede desactivado, imitando el funcionamiento de las alarm[0]; así:

if reloj != -1 {
    reloj -= dlt;
    if reloj <= 0 {
        reloj = -1;
        // hacer cosas
    }
}

Se detendría el temporizador inmediatamente dispare, note que puede cambiar esto como quiera, hacer conteo ascendente, apagar el temporizador, ponerlo en otro valor para que reinicie, etc; su imaginación y capacidad de programación es el límite.

Dejo otro tip, por ejemplo cuando un temporizador se usa como indicativo de algo, digamos que un ente tiene un poder especial que se activa por un tiempo, entonces podemos solo hacer esto:

reloj = max(0, reloj - dlt);

Así siempre estará disminuyendo hasta quedar en 0, luego solo es preguntar si reloj == 0 para ver el estado, usar esto con precaución en juegos de mucha lógica o muchos objetos, pues se está reescribiendo la variable siempre.

Otro tip es que se puede usar el dlt = 0; en su actualización, y pondría a todo el juego en pausa.

7
Juegos completos / Caitval
« en: Septiembre 23, 2019, 04:55:26 pm »


Caitval


Estrategia


GM: Studio

Debes construir un pueblo por ciclos (30s), y enviar/recibir cosas de otros jugadores online, las cosas pueden ser: invasiones, monedas, asedio, migrantes, ventas, mejoras de edificios, etc.

Los envíos son persistentes, asi que puedes enviar algo a alguien que no esté conectado y lo recibirá luego.






https://gamejolt.com/games/caitval/440848


Para una buena jugabilidad se requiere gente online, como el juego es nuevo, es posible no encontrar muchos jugadores, si pudiesen invitar a jugar a otros humanos, sería una gran ayuda


Páginas: 1

Warning: Parameter 1 to spoiler_buffer() expected to be a reference, value given in Unknown on line 0

Warning: Parameter 1 to custom_report_ob() expected to be a reference, value given in Unknown on line 0