Hola. Soy nuevo aquí.
Ustedes conocerán a RPG Maker. Aquella herramienta que te permite crear tus propios juegos RPG sin tener tanto conocimiento. De esta herramienta salieron juegos como Yume Nikki, OFF, To The Moon etc.
Pero todo tiene sus pros y sus contras. Pues debido a las limitaciones de RPG Maker, a veces no puedes hacer el juego que tu deseas con esa herramienta. Si has pensado en hacer un juego rollo Final Fantasy VII con gráficos 3D y fondos prerenderizados. Lamento decirte que RPG Maker no puede hacer ese tipo de cosas, a causa de eso. Hay gente que prefiere crear sus propios juegos RPG desde cero usando otras herramientas como Unity, Unreal Engine, Godot etc.
Yo me incluyo en ese tipo de gente que quiere hacer su propio juego RPG pero en un motor que no sea el RPG Maker. En este caso elegí Game Maker Studio.
La versión de GMS que yo tengo es la 1.4 en la build 1567. Esta versión, la conseguí pirata que descargue por Internet, ya que el Game Maker Studio 2 no se ejecutaba en mi computadora debido a que solamente tiene soporte para SOs de 64 bits y mi computadora tiene un SO de 32 bits.
El juego que yo quiero recrear en GMS es LISA: The Painful. Pues ese juego me impacto desde que vi diversos gameplays de ese juego y quise tenerlo. Pero como no tenia dinero para comprarlo en Steam, tuve que recurrir a la piratería para poder conseguir ese juego gratis. Después de jugar un rato a ese juego, sentí que el juego tenia cierta limitaciones, sentía que la jugabilidad estaba algo tosca. Pues es un juego de scroll lateral y RPG Maker no esta pensado para hacer esa clase de juegos.
Por lo que tuve que tener la tarea de recrear este juego en GMS. Cabe destacar que no pretendo recrear todo el juego, sino una parte, hace como una especie de demo similar a la demo publicada en Kickstarter, ya que si intento recrear todo el juego, puedo recibir una posible demanda por parte de Dingaling. Por lo que prefiero mejor solo recrear una parte del juego y después publicarla en forma de template o framework para la gente que se interese en hacer fangames de LISA en GMS.
Cabe destacar que no he encontrado ningún tutorial de como importar un proyecto hecho en RPG Maker a GMS 1.x. Ya que la mayoría de los tutoriales son de GMS 2 y algunos están pensado para versiones mas viejas como Game Maker 8.1.
Así que porfavor necesito ayuda para poder trasladar un juego de RPG Maker a GMS y que sea gente que ya tenga experiencia con el RPG Maker, tanto programadores como gente que ha jugado esos juegos hechos con ese motor y sobretodo gente que haya jugado a LISA: The Painful o haya visto diversos gameplays en YouTube.
Edit 15/08/2020:
Después de ver varios tutoriales de YouTube, intente hacer un Test Room usando los assets originales y este fue el resultado.

Como verán. El personaje se me quedo flotando en el aire, debido a que no encuentro la forma de ponerlo en suelo. Quise programar un script para la gravedad del personaje para que este caiga al suelo una vez que el juego se ejecute. Pero prefiero mejor encontrar una forma de ripear los scripts del juego original de RPG Maker y usarlos en GMS. Pero no encuentro los programas adecuados para ripear los scripts para usarlos en GMS. Por eso necesito gente que tenga experiencia en el RPG Maker y me ayuden a trasladar este juego a GMS.
Edit 16/08/2020:
Se me presentado un problema. Estaba siguiendo una serie de Tutoriales en YouTube sobre hacer un juego de plataformas en Game Maker Studio, aunque solamente para saber como hago para que el personaje se mueva, tenga colisión con x tal, pueda saltar etc.
Voy a dejar el link de los vídeos para que lo vean:
Parte 1: https://www.youtube.com/watch?v=PdGOO-JCo-M
Parte 2: https://www.youtube.com/watch?v=eIGBch_D__E
Cuando ya estaba en la parte 2 del vídeo y quiero programar la parte del movimiento del personaje para que este se mueva solamente cuando presione las teclas y luego ejecuto el juego para ver el resultado me sale esto.
___________________________________________
############################################################################################
FATAL ERROR in
action number 1
of Step Event0
for object objPlayer:
Push :: Execution Error - Variable Get 100040.intAirFric(100020, -2147483648)
at gml_Object_objPlayer_StepNormalEvent_1 (line 21) - intTempFric = intAirFric;
############################################################################################
Estas son la lineas de código que yo use mientras veía los tutoriales paso a paso.
///Desplazamiento
var keyLeft, keyRight, keyJump, keyJumpRelease;
keyLeft = -keyboard_check (vk_left);
keyRight = keyboard_check (vk_right);
keyJump = keyboard_check_pressed(ord('x'));
keyJumpRelease = keyboard_check_released(ord('x'));
//Comprobacion de Colisiones
intColLeft = place_meeting(x - 1, y, objBlock);
intColRight = place_meeting(x + 1, y, objBlock);
bolGround = place_meeting (x, y + 1, objBlock);
intMove = keyLeft + keyRight;
//Definir aceleración y friccion en funcion del medio
if (!bolGround)
{
intTempAcc = intAirAcc;
intTempFric = intAirFric;
}
else
{
intTempAcc = intGroundAcc;
intTempFric = intGroundFric;
}
//Velocidad horizontal
if (intMove != 0) intVX = scrApproach(intVX, intVXMax * intMove, intTempAcc);
else intVX = scrApproach(intVX, intVXMax * intMove, intTempFric);
//Colision horizontal
repeat(abs(intVX))
{
if (!place_meeting(x + sign(intVX), y, objBlock))
{
x += sign(intVX);
}
else
{
intVX = 0;
break;
}
}
Necesito una solución para corregir esto. Quiero saber que tipo de error me impide que se ejecute el juego.
Edit 17/08/2020:
Debido a que nadie me respondido sobre el problema de ejecutar el juego en GMS, tuve que solucionarlo yo mismo. Para eso tuve que ver nuevamente el vídeo de la parte 2 de crear un juego de plataformas en Game Maker Studio, aunque yo no pretendo hacer un juego de plataformas, sino un RPG. Resulta y acontece que escribir mal una linea de código en las variables del personaje y por eso me saltaba un error cada vez que ejecuto el juego.
Ya estando en el vídeo de la parte 3 sobre programar el salto y la gravedad que voy a dejar aquí mismo.
https://www.youtube.com/watch?v=cKsvf7dAPYM
Retomando en donde lo deje, tuve un problema que al final termine solucionandolo. Resulta que al ejecutar el juego teniendo programada la gravedad del personaje, este se caía fuera de la pantalla, aun cuando puse el suelo encima. Me fui al editor de habitaciones y resulta que si el objeto bloque no esta dibujado, el juego detectara que no existe y por eso el personaje se caía aun estando en el suelo que hice con tiles.
Mi solución fue que tuve que dibujar los bloques y después hacerlos invisibles, después de eso el personaje al fin podía mantener los pies en el suelo y no se caía sin razón alguna. Les dejo un gif animado sobre el resultado que he hecho.

Como verán, el personaje se mueve y salta, pero algo no anda del todo bien. Pues el personaje no hace la animación de caminar cuando se esta moviendo en tierra, únicamente cuando salta. Cabe destacar que en LISA The Painful, no existe sprites de Brad saltando hacia derecha e izquierda, puesto que ese juego fue hecho en RPG Maker y este motor que mencione posee muchas limitaciones. Si alguien sabe de pixel art, necesito sprites nuevos del personaje Brad, sprites como saltar hacia la derecha e izquierda, correr, aterrizar después de caer de una plataforma baja, estrellarse al suelo hacia la derecha e izquierda después de caer de una plataforma alta etc. Aunque como ya lo he dicho antes, pretendo hacer un RPG y no un juego de plataformas.
Voy dejar el sprite sheet de Brad que conseguí en la pagina de The Spriters Resource para que se inspire y hagan nuevos sprites.
[spoiler]
[/spoiler]
Y sobretodo necesito saber como hago para que Brad se mueva a la misma velocidad que en el juego original tal y como se muestra en este gameplay. Recuerden saltarse al 13:06 para no tener necesidad de ver toda la secuencia inicial.
[spoiler]https://www.youtube.com/watch?v=0R4PDxGlzyc[/spoiler]
Una cosa. Voy a dejar las lineas de código del desplazamiento del personaje para que lo modifiquen y hacer que el personaje se mueva de forma igual que en el juego original.
Ustedes conocerán a RPG Maker. Aquella herramienta que te permite crear tus propios juegos RPG sin tener tanto conocimiento. De esta herramienta salieron juegos como Yume Nikki, OFF, To The Moon etc.
Pero todo tiene sus pros y sus contras. Pues debido a las limitaciones de RPG Maker, a veces no puedes hacer el juego que tu deseas con esa herramienta. Si has pensado en hacer un juego rollo Final Fantasy VII con gráficos 3D y fondos prerenderizados. Lamento decirte que RPG Maker no puede hacer ese tipo de cosas, a causa de eso. Hay gente que prefiere crear sus propios juegos RPG desde cero usando otras herramientas como Unity, Unreal Engine, Godot etc.
Yo me incluyo en ese tipo de gente que quiere hacer su propio juego RPG pero en un motor que no sea el RPG Maker. En este caso elegí Game Maker Studio.
La versión de GMS que yo tengo es la 1.4 en la build 1567. Esta versión, la conseguí pirata que descargue por Internet, ya que el Game Maker Studio 2 no se ejecutaba en mi computadora debido a que solamente tiene soporte para SOs de 64 bits y mi computadora tiene un SO de 32 bits.
El juego que yo quiero recrear en GMS es LISA: The Painful. Pues ese juego me impacto desde que vi diversos gameplays de ese juego y quise tenerlo. Pero como no tenia dinero para comprarlo en Steam, tuve que recurrir a la piratería para poder conseguir ese juego gratis. Después de jugar un rato a ese juego, sentí que el juego tenia cierta limitaciones, sentía que la jugabilidad estaba algo tosca. Pues es un juego de scroll lateral y RPG Maker no esta pensado para hacer esa clase de juegos.
Por lo que tuve que tener la tarea de recrear este juego en GMS. Cabe destacar que no pretendo recrear todo el juego, sino una parte, hace como una especie de demo similar a la demo publicada en Kickstarter, ya que si intento recrear todo el juego, puedo recibir una posible demanda por parte de Dingaling. Por lo que prefiero mejor solo recrear una parte del juego y después publicarla en forma de template o framework para la gente que se interese en hacer fangames de LISA en GMS.
Cabe destacar que no he encontrado ningún tutorial de como importar un proyecto hecho en RPG Maker a GMS 1.x. Ya que la mayoría de los tutoriales son de GMS 2 y algunos están pensado para versiones mas viejas como Game Maker 8.1.
Así que porfavor necesito ayuda para poder trasladar un juego de RPG Maker a GMS y que sea gente que ya tenga experiencia con el RPG Maker, tanto programadores como gente que ha jugado esos juegos hechos con ese motor y sobretodo gente que haya jugado a LISA: The Painful o haya visto diversos gameplays en YouTube.
Edit 15/08/2020:
Después de ver varios tutoriales de YouTube, intente hacer un Test Room usando los assets originales y este fue el resultado.

Como verán. El personaje se me quedo flotando en el aire, debido a que no encuentro la forma de ponerlo en suelo. Quise programar un script para la gravedad del personaje para que este caiga al suelo una vez que el juego se ejecute. Pero prefiero mejor encontrar una forma de ripear los scripts del juego original de RPG Maker y usarlos en GMS. Pero no encuentro los programas adecuados para ripear los scripts para usarlos en GMS. Por eso necesito gente que tenga experiencia en el RPG Maker y me ayuden a trasladar este juego a GMS.
Edit 16/08/2020:
Se me presentado un problema. Estaba siguiendo una serie de Tutoriales en YouTube sobre hacer un juego de plataformas en Game Maker Studio, aunque solamente para saber como hago para que el personaje se mueva, tenga colisión con x tal, pueda saltar etc.
Voy a dejar el link de los vídeos para que lo vean:
Parte 1: https://www.youtube.com/watch?v=PdGOO-JCo-M
Parte 2: https://www.youtube.com/watch?v=eIGBch_D__E
Cuando ya estaba en la parte 2 del vídeo y quiero programar la parte del movimiento del personaje para que este se mueva solamente cuando presione las teclas y luego ejecuto el juego para ver el resultado me sale esto.
___________________________________________
############################################################################################
FATAL ERROR in
action number 1
of Step Event0
for object objPlayer:
Push :: Execution Error - Variable Get 100040.intAirFric(100020, -2147483648)
at gml_Object_objPlayer_StepNormalEvent_1 (line 21) - intTempFric = intAirFric;
############################################################################################
Estas son la lineas de código que yo use mientras veía los tutoriales paso a paso.
///Desplazamiento
var keyLeft, keyRight, keyJump, keyJumpRelease;
keyLeft = -keyboard_check (vk_left);
keyRight = keyboard_check (vk_right);
keyJump = keyboard_check_pressed(ord('x'));
keyJumpRelease = keyboard_check_released(ord('x'));
//Comprobacion de Colisiones
intColLeft = place_meeting(x - 1, y, objBlock);
intColRight = place_meeting(x + 1, y, objBlock);
bolGround = place_meeting (x, y + 1, objBlock);
intMove = keyLeft + keyRight;
//Definir aceleración y friccion en funcion del medio
if (!bolGround)
{
intTempAcc = intAirAcc;
intTempFric = intAirFric;
}
else
{
intTempAcc = intGroundAcc;
intTempFric = intGroundFric;
}
//Velocidad horizontal
if (intMove != 0) intVX = scrApproach(intVX, intVXMax * intMove, intTempAcc);
else intVX = scrApproach(intVX, intVXMax * intMove, intTempFric);
//Colision horizontal
repeat(abs(intVX))
{
if (!place_meeting(x + sign(intVX), y, objBlock))
{
x += sign(intVX);
}
else
{
intVX = 0;
break;
}
}
Necesito una solución para corregir esto. Quiero saber que tipo de error me impide que se ejecute el juego.
Edit 17/08/2020:
Debido a que nadie me respondido sobre el problema de ejecutar el juego en GMS, tuve que solucionarlo yo mismo. Para eso tuve que ver nuevamente el vídeo de la parte 2 de crear un juego de plataformas en Game Maker Studio, aunque yo no pretendo hacer un juego de plataformas, sino un RPG. Resulta y acontece que escribir mal una linea de código en las variables del personaje y por eso me saltaba un error cada vez que ejecuto el juego.
Ya estando en el vídeo de la parte 3 sobre programar el salto y la gravedad que voy a dejar aquí mismo.
https://www.youtube.com/watch?v=cKsvf7dAPYM
Retomando en donde lo deje, tuve un problema que al final termine solucionandolo. Resulta que al ejecutar el juego teniendo programada la gravedad del personaje, este se caía fuera de la pantalla, aun cuando puse el suelo encima. Me fui al editor de habitaciones y resulta que si el objeto bloque no esta dibujado, el juego detectara que no existe y por eso el personaje se caía aun estando en el suelo que hice con tiles.
Mi solución fue que tuve que dibujar los bloques y después hacerlos invisibles, después de eso el personaje al fin podía mantener los pies en el suelo y no se caía sin razón alguna. Les dejo un gif animado sobre el resultado que he hecho.

Como verán, el personaje se mueve y salta, pero algo no anda del todo bien. Pues el personaje no hace la animación de caminar cuando se esta moviendo en tierra, únicamente cuando salta. Cabe destacar que en LISA The Painful, no existe sprites de Brad saltando hacia derecha e izquierda, puesto que ese juego fue hecho en RPG Maker y este motor que mencione posee muchas limitaciones. Si alguien sabe de pixel art, necesito sprites nuevos del personaje Brad, sprites como saltar hacia la derecha e izquierda, correr, aterrizar después de caer de una plataforma baja, estrellarse al suelo hacia la derecha e izquierda después de caer de una plataforma alta etc. Aunque como ya lo he dicho antes, pretendo hacer un RPG y no un juego de plataformas.
Voy dejar el sprite sheet de Brad que conseguí en la pagina de The Spriters Resource para que se inspire y hagan nuevos sprites.
[spoiler]

Y sobretodo necesito saber como hago para que Brad se mueva a la misma velocidad que en el juego original tal y como se muestra en este gameplay. Recuerden saltarse al 13:06 para no tener necesidad de ver toda la secuencia inicial.
[spoiler]https://www.youtube.com/watch?v=0R4PDxGlzyc[/spoiler]
Una cosa. Voy a dejar las lineas de código del desplazamiento del personaje para que lo modifiquen y hacer que el personaje se mueva de forma igual que en el juego original.
Código [Seleccionar]
///Desplazamiento
var keyLeft, keyRight, keyJump, keyJumpRelease;
keyLeft = -keyboard_check (vk_left);
keyRight = keyboard_check (vk_right);
keyJump = keyboard_check_pressed(ord('X'));
keyJumpRelease = keyboard_check_released(ord('X'));
//Comprobacion de Colisiones
intColLeft = place_meeting (x - 1, y, objBlock);
intColRight = place_meeting (x + 1, y, objBlock);
bolGround = place_meeting (x, y + 1, objBlock);
intMove = keyLeft + keyRight;
//Definir aceleración y fricción en función del medio
if (!bolGround)
{
intTempAcc = intAirAcc;
intTempFric = intAirFric;
}
else
{
intTempAcc = intGroundAcc;
intTempFric = intGroundFric;
}
//Velocidad horizontal
if (intMove != 0) intVX = scrApproach(intVX, intVXMax * intMove, intTempAcc);
else intVX = scrApproach(intVX, intVXMax * intMove, intTempFric);
//Velocidad vertical
if (!bolGround)
{
intVY = scrApproach(intVY, intVYMax, intGravityNorm); //Caida libre
}
//Salto
if (keyJump && bolGround) intVY = -intVYMax;
//Colision Horizontal
repeat(abs(intVX))
{
if (!place_meeting(x + sign(intVX), y, objBlock))
{
x += sign(intVX);
}
else
{
intVX = 0;
break;
}
}
//Colision Vertical
repeat(abs(intVY))
{
if (place_meeting(x, y + sign(intVY), objBlock))
{
intVY = 0;
break;
}
else y += sign(intVY);
}