Mundo Maker
¡Bienvenid@ a Mundo Maker!

¿Quieres aprender todo sobre el RPG Maker?



Regístrate y forma parte de Mundo Maker.
Conectarse

Recuperar mi contraseña

Temas importantes
----------------------------------------
Páginas con recursos RPG Maker
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
Afiliados
Estadísticas
Tenemos 4068 miembros registrados.
El último usuario registrado es Schwarz54.

Nuestros miembros han publicado un total de 84121 mensajes en 11982 argumentos.

Mí Técnica Engine

Ver el tema anterior Ver el tema siguiente Ir abajo

Mí Técnica Engine

Mensaje por Ledai el 2014-06-17, 15:23

Mí Técnica Engine

Veo que últimamente hay gente que parece interesada en la creación de Engine y aunque no me considero la más adecuada para hablar del tema ya que no soy tan experta como ciertos veteranos; creo que puedo dejar un plan de trabajo a la hora de ponerse a hacer uno de estos curiosos eventos (en realidad el modelo sería aplicable a cualquier cosa XD) Cualquiera que quiera usar el Maker, debe de saber Enginear. Así que empezaremos por el principio.


¿Qué es Un enguine?

Cita del Diccionario de Wecoc: escribió:Engine. Conjunto ordenado de comandos que realizan una tarea específica. Con este método se pueden crear desde un mensaje, hasta motores complejos como minijuegos y menús personalizados.





En realidad hacer un Enguine es como hacer un Script, solo que en vez de ser tú el que te adaptas al lenguaje del ordenador (o programa) para hablarle y que te entienda, es él el que se adapta a tu lenguaje para que puedas trabajar sin necesidad obligada de saber un lenguaje de programación. Eso se llama (según tengo entendido) “programación por eventos”.

Algunos pueden llegar a pensar que es muy difícil hacer Enguines y que es más fácil el copi-paste de los Script ya hechos; Pero no es del todo cierto, ya que siempre habrá cosas que será más útiles hacerlas por engine. Ejemplo: las escenas del juego, la Intro del juego, etc; eso en sí ya es Engine, no es que sea difícil solo hay que tener unos pocos puntos a tener en cuenta.

Lo primero es reconocer que el ordenador (o programa) es tonto, y que no vale con llegar y simplemente decirle; -Quiero que el Héroe, cuando se acerque al estanque se caiga al agua y salga mojado-. Si no que debes de explicarle cómo hacer todo eso; qué se considera estanque (ID de terreno), quién es el Héroe(Coordenadas de Evento), lo que tiene que pasar (mostrar animación de mapa) y un largo etc…

Primero debes imaginar lo que quieres conseguir; si se trata de una escena, piensa en todo lo que pasa desde que empieza hasta que acaba, y si es un engine ( o minijuego, o menú, etc) cómo será, cuantas opciones habrá y qué elementos tendrá.

Ejemplo simple:
Minijuego de acertar qué numero saldrá en una lanzada de dados.
¿Qué es lo primero que pasa en ese ejemplo? Como es lógico no puede empezar a hacerse una casa por el tejado; y tampoco se puede empezar un Enguine por el final (Al menos en la mayoría de los casos XD)
Lo primero es crear el evento que activará el proceso del enguine; normalmente será un evento en el mapa con el que interactuar, en un punto especifico, con o sin condicional de Aparicio, se repetirá o no tantas veces quieras y todo eso.
NOTA: Recuerda que si es Un evento situado en un Único punto o mapa, o solo actuará en unos pocos lugares, deberías crearlo todo dentro de un “Evento” en ese mapa y ahorrar los “Eventos Comunes” para otro tipo de procesos que actúan en todo el juego; ya que contra más larga la lista de eventos comunes, más LAGG





También Es importante pensar en lo que rodea a tu evento dentro de la historia de tu juego; tras qué suceso de la historia aparecerá, qué recompensas te dará o qué penalizaciones tendrás al perder… todo eso es importante aun desde el principio del cualquier trabajo.

Después toca imaginar el proceso tal y como sería en la vida real si se diera caso… o sea; ir paso a paso desgranando el suceso.

En este caso: Hablas con un juglar en una tasca perdida en la montaña y justo antes del enfrentamiento con el malo Malísimo del juego, te pregunta si quieres apostar, respondes y si dices que sí apuestas tu dinero, acuerdas la cifra que saldrá en la tirada, tira el dado, da vueltas, se para, comparas el resultado con tu apuesta, si pierdes se ríe de ti y pierdes el dinero que apostaste y si ganas, el malo Malísimo del juego se muere de un infarto (Tachan!?)

Una vez planteado toca pasar ese lenguaje coloquial al del intérprete del Maker, el cual por suerte es razonablemente sencillo. En este punto es MUY importante estar familiarizado con el programa, conocer sus funciones (comandos) y tener una ligera idea del uso de sus componentes básicos; que en resumen serían los interruptores, variables, condicionales, mover eventos y mostrar/mover imágenes (entre otros muy útiles también)

Después queda el planteamiento base, que es como cuando en una pintura, haces un boceto antes de hacer los detalles y extras; Solo que por ahora nos ceñiremos al hilo que hemos imaginado con anterioridad; siguiéndolo paso por paso.

Digamos que empiezas por crear el personaje en el mapa que te dice que apuestes la tirada, después preparas las elecciones del Sí o el No “Mostrar elecciones”, dentro del sí estableces un “proceso de entrada numérica” para guardar en una variable lo que planeas apostar, tras lo cual adivinas qué numero saldrá del mismo modo solo que en otra variable, haces que después se genere un valor aleatorio con “Operaciones de Variables > aleatorio entre” , comparas si los dos son iguales “condiciones y efectos” y configuras un “Cuadro de texto” diciendo si ganaste o perdiste. Y ahora haces lo más importante: lo pruebas. Lo pruebas una y otra vez, hasta cerciorarte de que no hay errores.

Ese es el armazón del enguine, funcional simple y listo, pero en realidad es solo un esqueleto, ahora está llamativamente pobre, tienes que atar los cabos sueltos que queden y pensar en todas la rutas que faltan por configurar para que resulte creíble y atractivo.

En el ejemplo; si contamos con que el dado que se lanza puede dar un numero aleatorio del 1 al 6 nos daremos cuenta de que estableciendo un “Proceso de entrada numérica” con una espacio para la unidad podemos poner desde el valor 0 hasta el 9, lo que nos da como margen unas cuantas cifras que nunca podrán salir en una tirada de dado de 6 caras (Sean el 7,8,9,0) Así que si apuestas en la vida real a que saldrá el ocho en un dado común se te reirán en la cara, pues es imposible que eso pase; entonces habría que arreglar ese detalle en tu juego, añadiendo en el proceso un condicional más, excluyendo esas posibilidades al insertarlos como parte de la apuesta, al igual que habría que hacerlo con el tope del dinero que posees, ya que sería tonto apostar 100 G si en realidad solo tienes 3 G, para eso también se necesitaría crear otra comparativa analizando los fondos de los que dispones y si son mayores que tu apuesta proseguir con el proceso del evento. Para mejorarlo en cuestión de detalles pues añadir efectos sonoros, tiempos de espera, transiciones… Arreglando así los posibles “fallos” que tiene el trabajo se obtienen mejore resultados sin hablar del apartado grafico, ya que si también te curras alguna que otra animación para el dado o para los cuadrantes de apuesta quedará mucho mejor. Tanto para este ejemplo como para cualquier otra situación que tu imaginación plantee.

NOTA: Recuerda que un engine bonito no es el que mejores gráficos tenga, es el que buen trabajo tiene y mejor desarrollado está, pues lo que cuenta es que su mecánica sea perfecta, funcional y esté mimada.









Este es mi método al hacer engines, espero que a alguien le sirva de algo.
Gracias por leer.
Leda


Última edición por Leda el 2014-06-17, 17:03, editado 1 vez
avatar
Ledai
Aventurero
Aventurero

0/3

Créditos 2345

Gracias : 168

http://ahurallg.blogspot.com.es/

Volver arriba Ir abajo

Re: Mí Técnica Engine

Mensaje por silvanash el 2014-06-17, 16:33

Lo más importante para hacer engines es tener los conocimientos necesarios acerca de los comandos del Maker.

Ejemplo:

Individuo X quiere hacer un sistema de bestiario por imágenes en 2K3. Sin embargo, individuo X no sabe nada acerca de las variables ni de los ciclos, y apenas ha colocado su primer interruptor. Conclusión: individuo X está jodido. Muy.

El enfoque que le demos al engine es lo de menos. Después de todo, si varios enginers se enfrentan al mismo problema con los mismos conocimientos, acabarán llegando a soluciones parecidas.
avatar
silvanash
Aventurero
Aventurero

0/3

Créditos 1572

Gracias : 220

Volver arriba Ir abajo

Re: Mí Técnica Engine

Mensaje por xX Kyubey el 2014-06-17, 16:46

Interesante el post, yo no me considero un "as" en esto del engineering -al menos no me considero superior al promedio- pero se me da bastante, aunque ahora por culpa de mi abandono se me han olvidado varias cosas.

No tenía un método claro para hacer engines, era bastante "prueba y error" e intentaba usar siempre las cosas que conocía (variables, interruptores, eventos comunes...).

Seguramente a alguien le servirá saber por dónde empezar a trabajar y qué necesitas al crear un engine.

"La solución más fácil a un problema, siempre es la correcta"

Saludos.
avatar
xX Kyubey
Principiante
Principiante

0/3

Créditos 266

Gracias : 54

Volver arriba Ir abajo

Re: Mí Técnica Engine

Mensaje por mrhawi el 2014-06-17, 18:28

Hacer engines en maker (motores) es similar a lo que en programación se denomina pseudocódigo. Similar, porque el maker trae una serie de "bloques" por llamarlo de alguna forma que ejecutan una acción. Simplemente es ordenar estos bloques de forma lógica y a partir de diferentes instrucciones "crear una instrucción nueva". En lo que es engines, y en mi experiencia yo recomendaría mucho el uso de eventos comunes y reservar variables para usarlas como "entradas" al engine. Análogamente, tener variables de salida y combinar con llamadas a eventos para lograr la abstracción. De esta forma, no hay un ligue con las variables y quita la necesidad de ir cambiando el "código" o set de instrucciones si se quiere modificar algo. Sin embargo, sigo pensando que si usas makers más avanzados, lo mejor es irse a los scripts. Ruby es un lenguaje sencillo y la documentación de los Makers está disponible.

Por último, al igual que todo, hay que investigar. No se planea re-descubrir la rueda cada vez que se hace algo.

Fuera de todo, buen aporte; quizás le sirva a alguien, quizás no, pero siempre queda la buena intención.

NOTA: Recuerda que un engine bonito no es el que mejores gráficos tenga, es el que buen trabajo tiene y mejor desarrollado está, pues lo que cuenta es que su mecánica sea perfecta, funcional y esté mimada.


Respecto a eso, discrepo. Lo que más llama la atención en un engine, cuando se hace un aporte, es el aspecto visual. Una buena mecánica se agradece, pero no se opta siempre por la eficiencia, sino que por lo estético, ya que es un juego a fin de cuentas.

mrhawi
Aventurero
Aventurero

0/3

Créditos 2668

Gracias : 89

Volver arriba Ir abajo

Re: Mí Técnica Engine

Mensaje por BlazeCrimson el 2014-06-17, 18:50

Bonita introducción Leda.

Lo que más me gusta de los engines del RPG Maker es que cada cambio o avance en el mismo puedes probarlo en cuestión de segundos.

Gracias a esto, aún si no acabas de tener algo claro, no necesitas más que probar, probar y probar.

Al final acabas encontrando el resultado esperado, además al fin de cuentas no son difíciles de tratar.

¿Qué es lo que menos me gusta? Como has comentado el lagg de los procesos paralelos.
Tengo entendido que otros rpg maker más modernos como el VX Ace este problema está suavizado pero en el XP por ejemplo, sólo es necesario unos pocos para volverlo injugable.

Hay pequeños trucos para reducir este efecto como añadir "esperar" al final de los ciclos, desactivarlos y activarlos con interruptores... pero al fin de cuentas la mejor opción es evitar los paralelos y hacer engines de mapa o activarlos sólo con "llamar evento".

Como sea, gracias por el tutorial seguro que es de utilidad.

¡Nos leemos!  gcool 

_________________
Image and video hosting by TinyPic
avatar
BlazeCrimson
Analista
Analista

0/3

Créditos 1117

Gracias : 109

Volver arriba Ir abajo

Re: Mí Técnica Engine

Mensaje por Trequiell el 2014-06-17, 22:04

Un aporte interesante Leda.
Para los amantes de la lógica, hacer engines les debería encantar (pienso yo), porque todo proceso que conlleva la realización de lo mismos, después de la planificación, es una lógica tras otra.

Y nos habrá pasado muchas veces, y nos seguirá pasando, que estando seguros de que lo que le habíamos indicado al maker debería funcionar perfectamente, resulta que no funciona como lo habíamos pensado en principio, y muchas veces se debe al orden de factores, o pequeños errores (despistes) como en lugar de indicar a una variable que sume, le decimos que fije el valor... o intentar mostrar dos imagenes con la misma numeración, o el modo de iniciarse un evento (paralelo, automático etc...).

Que cuando terminas descubriendo el error, te das cuenta de lo lógico que resultaba su mal funcionamiento.

Como dato, añadiría lo aconsejable que sería apuntar a papel por ejemplo... las características del engine que se quiera realizar, siempre y cuando tenga cierto grado de complegidad o muchas características.

Ah... y haced copias de seguridad XD. (Acabaré por ponerlo como firma).
avatar
Trequiell
Soñador
Soñador

0/3

Créditos 138

Gracias : 21

Volver arriba Ir abajo

Re: Mí Técnica Engine

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


Permisos de este foro:
No puedes responder a temas en este foro.