Mundo Maker
¡Bienvenid@ a Mundo Maker!

¿Quieres aprender todo sobre el RPG Maker?



Regístrate y forma parte de Mundo Maker.

[Pedido] Aumentar el número de frames en animaciones (Vx Ace)

Ver el tema anterior Ver el tema siguiente Ir abajo

[Pedido] Aumentar el número de frames en animaciones (Vx Ace)

Mensaje por Dariel Lopez el 2018-01-09, 00:28

Hola de nuevo a todos.
Disculpen que los moleste de nuevo tan pronto pero tengo un problema con las animaciones del Vx Ace, y es que resulta que el programa solo me permite usar 200 frames por cada animación pero necesito muchas más para unos ataques que estoy creando y me acordé del script Database Limit Breaker III de Woratana pero no me sirve porque solo permite cambiar el número del total de animaciones más no la cantidad de frames que puedo usar para cada animación.
¿Alguien sabe si se pueden usar más frames por animación o solo los 200 que son permitidos?
Si alguien sabe como hacerlo(si es que se puede) y me ayuda se lo agradezco de antemano, y si no pues tendré que buscar una forma de empalmar animaciones a ver si quedan bien.
avatar
Dariel Lopez
Veterano
Veterano

0/3

Créditos 733

Gracias : 44

Volver arriba Ir abajo

Re: [Pedido] Aumentar el número de frames en animaciones (Vx Ace)

Mensaje por Wecoc el 2018-01-09, 00:51

Prueba esto, en el script puse las instrucciones, es fácil de usar. Lo probé en XP y funciona bien.

Código:
# Define aquí la versión del maker que usas
ANI_MAKER_VERSION = "XP" # XP / VX / VX Ace

def set_animation_limit_frames(id, frames)
  filename = case ANI_MAKER_VERSION
    when "XP"    then "Data/Animations.rxdata"
    when "VX"    then "Data/Animations.rvdata"
    when "VX Ace" then "Data/Animations.rvdata2"
  end
  data = load_data(filename) 
  animation = data[id]
  animation.frame_max = frames
  for i in animation.frames.size...frames
    frame = RPG::Animation::Frame.new
    animation.frames.push frame
  end
  File.open(filename, 'wb') {|f| Marshal.dump(data, f) }
end

# Define aquí el nuevo límite de frames de la animación siguiendo el formato:
#  set_animation_limit_frames(Animation ID, Frames)

set_animation_limit_frames(101, 400)

# Una vez hecho cierra el juego, cierra el proyecto sin guardar, vuelve
# a abrirlo y borra el script

Igualmente, solo como consejo... Vigila con esos límites, porque 200 frames es bastante xD
Espero que te sirva.
avatar
Wecoc
Administrador
Administrador



Créditos 12314

Gracias : 655

Volver arriba Ir abajo

Re: [Pedido] Aumentar el número de frames en animaciones (Vx Ace)

Mensaje por Dariel Lopez el 2018-01-09, 01:20

Gracias por responder tan rápido Wecoc, pero bueno, en donde defino la versión del maker que uso puse Vx Ace en la parte donde dice XP con letras grises después del signo =.
Y donde cambié el límite de frames donde dice 101 puse el número 183 que es el número de la animación que ocupo cambiarle el límite y dejé el número 400 solo para ver si funciona y acepté cerré el juego sin guardar y lo abrí de nuevo pero no aparece el script ni los cambios.
¿Haría algo mal o qué pasaría?
Ya se me ocurrió una forma de hacer que funcione usando dos animaciones escalonadas pero tengo que calcular a la perfección que cuando acabe una empiece la otra porque si no la primera animación no termina de ejecutarse pero preferiría mejor cambiando el número de frames porque es más sencillo de usar.
Espero respuesta.
avatar
Dariel Lopez
Veterano
Veterano

0/3

Créditos 733

Gracias : 44

Volver arriba Ir abajo

Re: [Pedido] Aumentar el número de frames en animaciones (Vx Ace)

Mensaje por Wecoc el 2018-01-09, 01:29

A ver, igual en VX Ace no funciona pero me extrañaría...
Te pongo el script con los datos que has dicho

Código:
# Define aquí la versión del maker que usas
ANI_MAKER_VERSION = "VX Ace" # XP / VX / VX Ace

def set_animation_limit_frames(id, frames)
  filename = case ANI_MAKER_VERSION
    when "XP"     then "Data/Animations.rxdata"
    when "VX"     then "Data/Animations.rvdata"
    when "VX Ace" then "Data/Animations.rvdata2"
  end
  data = load_data(filename)  
  animation = data[id]
  animation.frame_max = frames
  for i in animation.frames.size...frames
    frame = RPG::Animation::Frame.new
    animation.frames.push frame
  end
  File.open(filename, 'wb') {|f| Marshal.dump(data, f) }
end

# Define aquí el nuevo límite de frames de la animación siguiendo el formato:
#   set_animation_limit_frames(Animation ID, Frames)

set_animation_limit_frames(183, 400)

# Una vez hecho cierra el juego, cierra el proyecto sin guardar, vuelve
# a abrirlo y borra el script

Los pasos:
1) Copia el script y lo pones encima de main.
2) Ejecuta el juego desde el editor. Funcionará como siempre, se abrirá el título.
3) Cierra el juego.
4) Cierra el editor del maker justo después, sin tocar nada.
5) Vuelve a abrir el editor del maker.
6) Comprueba si la animación ahora tiene 400 frames.
7) En caso afirmativo ya puedes borrar el script, o bien usarlo para otra ID de animación.

No tengo VX Ace ni sé mucho cómo va, si sigue sin funcionar alguien tendrá que adaptarte el script mejor.

PD.- Lo de encadenar varias animaciones también lo pensé pero le veo algunos problemas... así que creo que vas mejor usando el script.
avatar
Wecoc
Administrador
Administrador



Créditos 12314

Gracias : 655

Volver arriba Ir abajo

Re: [Pedido] Aumentar el número de frames en animaciones (Vx Ace)

Mensaje por Gacoro el 2018-01-09, 01:50

No tengo mucha idea sobre scripts pero lo que si te puedo decir es que si lo ejecutas el juego sin haber guardado no afectarán los cambios que hagas. Espero que te ayude un poco.
avatar
Gacoro
Principiante
Principiante

0/3

Créditos 389

Gracias : 30

Volver arriba Ir abajo

Re: [Pedido] Aumentar el número de frames en animaciones (Vx Ace)

Mensaje por Dariel Lopez el 2018-01-09, 02:30

Gracias Wecoc pero sigue sin funcionar; si alguien más que use el Vx Ace se ofrece a probarlo y nos dice si funcionar se lo agradezco de antemano, pero por lo pronto voy a probar encadenando animaciones a ver si funciona y creo que debe funcionar aunque será más tardado porque tiene que ser exacto.
Ya antes he usado el script Database Limit Breaker III de Woratana y tampoco se guardan los cambios Gacoro y funciona sin problemas.
avatar
Dariel Lopez
Veterano
Veterano

0/3

Créditos 733

Gracias : 44

Volver arriba Ir abajo

Re: [Pedido] Aumentar el número de frames en animaciones (Vx Ace)

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.