Saludos Makeros: 

Cita de: Ciberman en Octubre 02, 2013, 02:46:06 AM
Ferhand, te digo, lo que podés hacer (y de hecho mi IA lo hace en algunas ocasiones, la IA nueva que no está en esta ronda)
es calcular el path que vos quieras e ir recorriendolo con path_point_x path_point_y y agregar los puntos a un array, despues los vas siguiendo a esos puntos desde el step con el scr_mover. :)

   Exactamente es lo que tenía pensado, pero para lograrlo tenía que calcular previamente un "path"...

  Makero Texic, eso es lo que necesito se me apruebe, poder utilizar las estructuras "path", aunque no sea directamente. Poder crear un "path" y luego utlizarlo, ya sea como lista de puntos o de otra manera, para moverme hacia un objetivo. Si tengo que calcular un camino a partir de la nada sería como como reinventar un sistema de "path" para GM y yo no soy "Mark Overmars". Si Ciberman puede utilizar los "path" de GM para extraer lo que necesita, eso es lo mismo que necesito yo.  ¿Entonces por qué me niegan todo el tiempo el poder utilizar las estructuras "path"? Nunca mi intención fue crear "path" entre los cuartos...   


Ahh, ferhand no aclaraste que era para usar internamente sin inicarlo, si en ese caso podés usarlo, pero no iniciarlo ni chequear cosas que estén afuera del room (podés hacer tu sistema propio para guardarte posiciones y chequearlas, me refiero a chequear directamente con position_meeting o la devolución de intentar hacer un mp_grid_path por ejemplo)




#122 Octubre 05, 2013, 06:49:16 PM Ultima modificación: Octubre 05, 2013, 07:23:38 PM por Ciberman
Claro, como dice Texic, el reglamento dice que no se pueden cambiar variables que ya esten creadas. "x" e "y" serían variables ya creadas. y efectuar un path_start sería cambiar directamente las variables "x" e "y". Sin embargo se puede ir consultando el path que nos devuelve la función mp_grid_path.
Por ejemplo, les pego un fragmento de uno de los scripts que uso yo para que  vean como se hace (mi intención es que participen y se diviertan la mayor cantidad de personas, no que se queden trabados con algo tan tonto como esto)
[gml]
//scr_ciberman_path_puerta(x1,y1,x2,y2);
// crea un camino de x1,y1 a x2,y2 y devuelve -1 si el camino es dentro de la misma habitación.
// Si hay que pasar de una habitación a la otra para completar el camino devuelve el ID de la puerta que hay que cruzar.
var xx,yy,i;
//SC es una constante que yo creé que vale 32.
path=path_add();
mp_grid_path(GRID_mp,path,argument0,argument1,argument2,argument3,true); //Esta es una mp_grid propia que yo tengo y que voy agregando los datos de colisión.
for(i=0; i<path_get_number(path); i+=1; ) {
    xx=floor(path_get_point_x(path,i)/SC);
    yy=floor(path_get_point_y(path,i)/SC);
    if(ds_grid_get(GRID_colid,xx,yy)==2){ //GRID_colid es OTRA grid que uso para saber datos de las habitaciones.
//un valor 2 signifia que en esa posición hay una puerta.
        for (j=0; j<numero_puertas; j+=1;) { //checkea entre todas las puertas
            if (ARRAY_puertas[j,0]==xx*SC and ARRAY_puertas[j,1]==yy*SC) { //si existe una puerta igual
                return j;
           //Array puertas es un array con todas las puertas que la IA se fue encontrando. A cada una le asigna un ID propio. (0 y 1) son X e Y de la puerta.
            }
        }
    }
}
return -1;
[/gml]
Cita de: CGM 2008CGM: Un poco mas serios, mejores Juegos.
Bienvenid@ a CGM. Recomenzamos desde cero, con un reglamento mas estricto, mejor definido y con mas ganas que nunca de hacer juegos con calidad comercial. El que avisa no es traidor: Leete las reglas si no quieres llevarte un capon makero.
Mercilessly!!
Plug-In para animaciones: http://ciberman.net/tweenline/

Hey texic unas cuantas preguntas.

Primero con la vida, hay alguna especie de count down al tomar una? (por alguna razón desconocida mi ia se traba unos segundos al tomar una).

Luego por que el script de mover solo funciona con 8 direcciones?, es raro, de todos modos puedes llegarte a mover en cualquier direccion usando el path pero es algo más complicado ¿por que no hacer que el script funcione con cualquier direccion?

No hay countdown de ningún tipo para agarrar vidas. El script mueve en 8 direcciones por prevención de bugs con el tema de los puntos flotantes, ya en el pasado miles de veces me ha sucedido que el personaje se trabe dentro de una pared por malos cálculos de punto flotante, que suceden cuando se tienen números con mucha precisión decimal, el moverse en 8 direcciones es mucho menos arriesgado porque siempre es un movimiento con números enteros, mirate el código fuente del scr_mover y te vas a dar cuenta




Te envie mi nueva IA porque ya es miercoles de nuevo!
Fijate si esta todo bien
El Manual

- Ley de la gravitación selectiva: toda herramienta se caerá donde produzca el mayor daño.
- Si todo parece estar bien, es obvio que uno no encontró el problema
- Todo aquello que se corte a medida resultara ser demasiado corto.
- Todo archivo borrado era necesario, todo archivo conservado es inutil
- Cuando a usted se le ocurra la solución ideal, alguien habrá resuelto ya el problema.

                                                               Murphy


Ok, ahora no tengo tiempo para checar el script pero ya veré luego...
Sobre el coundown supongo que es algo con mi IA (muy raro), pero bueno.

Tendré que salir en un rato y muy probablemente no alcance a enviar mi IA, llegaré tarde (10pm:gmt-6) y hasta esa hora podré enviarla, a ver si me esperas o algo :-\...

Sería hasta la 1am en mi país... Bueno te espero hasta esa hora, pero si no está lista para entonces tengo que largar la ronda




  Saludos Makeros:

    Makero Texic, ya está saliendo mi correo con mi IA. Por favor no cierres la entrega todavía. Los servidores de acá está copados y se coloca en cola casi cualquier fichero.

   Trataré de comprimirlo más y de enviarlo nuevamente...

   Un saludo...


La espero, no hay ningún problema ferhand, saludos!




   Saludos Makero Texic:

   Ya salió el primer intento, el segundo aún lo está "intentando"  ....

  ¡Cuantas veces se usó el verbo intentar!  XD XD XD XD XD

  Gracias nuevamente... ;D 


  ¡Ya logró subir al servidor de correo!

   Ahora solo resta esperar...

  Texic, tuve muy poco tiempo como para redactar mejor la hoja con los problemas de la IA.  :-[

  ¿Podré entregarlos pasado mañana?  ???

   ;D   


Si, no hay problema, todavía resta un rato para esperar a bruno y estoy esperando que ciberman se vuelva a conectar para reparar un error en su código, sino la tengo que dejar fuera esta ronda




Espero no quedar fuera, llegue más tarde de lo esperado, allí te va. La compu en la que trabajo es de mi hermano por lo que no puedo llevármela a todos lados para poder enviarla desde allá.

Mis más sinceras disculpas si atrase algo...

  Saludos makeros:


  ¿Señores, seré el único que se le cierra el ejecutable cuando dos IAs comienzan a dispararse entre sí?  ???

  Aún no he podido ver los resultados de las tercera ronda...  :'(