Mundo Maker
¡Bienvenid@ a Mundo Maker!

¿Quieres aprender todo sobre el RPG Maker?



Regístrate y forma parte de Mundo Maker.

[VX Ace] Créditos en Title Screen

Ver el tema anterior Ver el tema siguiente Ir abajo

RPG Maker VX ACE [VX Ace] Créditos en Title Screen

Mensaje por Hanatoa el 2015-09-02, 19:28

He vuelto al mundo de los vivos no es que hubiera estado tanto tiempo para que se me echara de menos. Ya que tuve una larga ausencia quise volver con un aporte un poco más-- "propio". Algo que he hecho para mi juego ya que el único script que encontré para VX Ace sólo añadía el nombre al menú de inicio.
Sinceramente he dudado en si compartirlo o no porque todavía soy una noob en esto y me siento super enana aún :ming:

Mejor ejemplo de créditos:
Estos son los créditos de un fangame que estoy haciendo en momentos de ocio.


Una poca información de lo que se puede editar:
Instrucciones y otras informaciones dentro del script ( ahora en español ). Se necesita una imagen llamada Custom.png (dentro de la carpeta Graphics/System) y una canción Custom.wav (Audio/BGM), pero dentro del script he indicado cual es la línea para editar el nombre de la canción de fondo.

Si se desea mantener la misma canción que el menú ( que siga sonando ), eliminar
Código:
   RPG::BGM.new("Custom").play

Para cambiar la posición del texto ( o la ventana/windowskin ), jugar con los valores 'x'/'y' ( "0" dentro del script )

Para la ventana:
Código:
  super(x, y, Graphics.width, 416)
 
Para el texto:
Código:
  draw_text(0, line_height, Graphics.width, line_height, "Cuanto empiezo a odiar este script");

Si has editado el tamaño de la ventana del juego, deberás editar "416" por la altura de tu ventana.

Código:
 
 #==============================================================================
  # ■ Custom Credits
  #    By Hanatoa
  #    - Especial agradecimiento a Wecoc (mundo-maker.com)
  #------------------------------------------------------------------------------
  # ● Descripción
  #   - Añade créditos a tu menú de inicio.
  #
  # ● Instrucciones
  #   - Copia el script debajo de Materiales, pero encima de Main.
  #   - Este script utiliza una imagen de fondo llamada "Custom".
  #     Dicha imagen debe estar dentro de la carpeta Graphics/System.
  #   - La BGM
  #==============================================================================#
  # ● Otra información                                                           #
  #   - Si estás utilizando un menú de título personalizado deberá eliminar la   #
  #     primera parte del código. Eso es únicamente para añadir la palabra       #
  #     créditos debajo de "Shutdown".                                           #
  #   - Si deseas que créditos aparezca debajo de "Continuar", deberás eliminar  #
  #     la primera parte del código y añadirlo manualmente editando              #
  #     Window_TitleCommand y Scene_Title.                                       #
  #   - Puede utilizarse únicamente una imagen de fondo (Editandola con un       #
  #     programa de edición) o bien editar el mismo texto de ejemplo.            #
  #     Para utilizar la imagen, debería darse opacidad 0 al windowskin.         #
  #                                                                              #
  #==============================================================================#
  
class Window_TitleCommand < Window_Command
  
  alias dp3_customcredits_addcommand  make_command_list
  def make_command_list
    dp3_customcredits_addcommand
    add_command("Creditos", :credits, true)
  end
end

class Scene_Title < Scene_Base
  alias dp3_customcredits_sceneee  create_command_window
  def create_command_window
    dp3_customcredits_sceneee
    @command_window.set_handler(:credits, method(:command_creditsscene))
  end
  def close_command_window
    @command_window.close
    update until @command_window.close?
  end
  def command_creditsscene
    close_command_window
    SceneManager.call(Scene_CustomCredits)
  end
end
  #==============================================================================#
  #==============================================================================#
  #                                                                              #
  # ● NO ELIMINES ESTA PARTE!!                                                   #
  #                                                                              #
  #==============================================================================#
  #==============================================================================#
class CustomWindow < Window_Base
  def initialize
    super(0, 0, Graphics.width, 416)
    credit_text
  end
  #==============================================================================#
  #==============================================================================#
  # ● EDITABLE
  #==============================================================================#
  #==============================================================================#
  
  # El texto de tus créditos.
  # draw_text(x, line_height*x, Graphics.width, line_height, "Texto");
  # x, o 0, es la distancia entre el borde y la línea.
  # Todavía no hay scroll, por lo que apartir de la línea 15 el texto NO aparecerá.
  
  def credit_text
    draw_text(0, 0, Graphics.width, line_height, "Nadie sabe");
    draw_text(0, line_height, Graphics.width, line_height, "Cuanto empiezo a odiar este script");
    draw_text(0, line_height*2, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*3, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*4, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*5, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*6, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*7, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*8, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*9, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*10, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*11, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*12, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*13, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*14, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*15, Graphics.width, line_height, "Lo sé, soy muy original.");
    draw_text(0, line_height*16, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*17, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*18, Graphics.width, line_height, "Texto");
    draw_text(0, line_height*19, Graphics.width, line_height, "Texto");
  end
end
  #==============================================================================#
  #==============================================================================#
  # ● NO EDITABLE.                                                               #
  #==============================================================================#
  #==============================================================================#
class Scene_CustomCredits < Scene_Base
  def start
    super
    create_audio
    fadeout_frozen_graphics
    create_background
    credit_text
    refresh
  end
    def credit_text
    @my_window = CustomWindow.new
    @my_window.height = 416
    @my_window.opacity = 100
  end
  def refresh
    @my_window
  end
  def terminate
    super
    dispose_background
    @my_window.dispose
  end
  def update
    super
    return_scene if Input.trigger?(:B)
  end
  def perform_transition
    Graphics.transition(fadein_speed)
  end
  def create_audio
    RPG::BGM.new("Custom").play
  end
  def fadeout_frozen_graphics
    Graphics.transition(fadeout_speed)
    Graphics.freeze
  end
  def create_background
    @sprite = Sprite.new
    @sprite.bitmap = Cache.system("Custom")
  end
  def dispose_background
    @sprite.bitmap.dispose
    @sprite.dispose
  end
  def fadeout_speed
    return 60
  end
  def fadein_speed
    return 60
  end
end

Y eso--
Toda crítica es bienvenida~


Última edición por Hanatoa el 2015-09-06, 02:37, editado 3 veces (Razón : Arreglado)
avatar
Hanatoa
Iniciado
Iniciado

0/3

Créditos 50

Gracias : 9

Volver arriba Ir abajo

RPG Maker VX ACE Re: [VX Ace] Créditos en Title Screen

Mensaje por Mackton el 2015-09-02, 23:48

Excelente idea! Soy re defensor de dar Creditos (y si es en un lugar bien visible, mucho mejor). Con tantos recursos compartidos que hay por ahí, sobre todo scripts, ya se que algo ajeno voy a terminar utilizando. Además, también se pueden especificar los propios recursos, si uno creo cosas específicas. Así que felicitaciones por la iniciativa y la intencion de compartirlo. Creo que le será útil a muchos, sobre todo si como vos decís, no hay otros scripts que hagan lo mismo por ahí.

Acabo de porbarlo. Me aparece la palabra "Credits" debajo de "Shutdown". Todo OK hasta ahí. Incluso me doy cuenta que linea editar (linea 20) si quiero que el texto del Menú de Inicio esté en castellano, reemplazando "Credits" (en violeta en el script) por "Créditos". Lo hice y quedó bien (probablemente, la mayoría de los usuarios de este foro lo prefieran en castellano).

Se me cerro el juego cuando quise ver los Créditos.
Mensaje de Error: "Unable to find Graphics/System/Custom". Me doy cuenta que está buscando un gráfico de fondo. Copié mi propia pantalla de Title (una imagen propia que utilizo) a la carpeta "System" y la renombre como "Custom".
Ahí sí que anduvo...

Algunas Dudas/Sugerencias
1 - ¿Como hacer para que el texto aparezca centrado?
2 - ¿Como hacer para el texto desfile (scroll down or up) por la pantalla? Si es eso posible.
3 - ¿Como hacer para que siga sonando la misma música de la pantalla del título? (incluso otros usuarios querrían la opcion de poder elegir otra BGM).

No se nada de Scripts, pero como entiendo ingles y se los recursos que utiliza el programa, puedo darme cuenta que linea hace que cosa, intuitivamente, pero no quiero meter la pata. Por otro lado, si apuntas a ser Scipter, cuanto mas claro o mas opciones brinde tu script, supongo que mejor, verdad?

De nuevo, gracias! (+1) :)
avatar
Mackton
Principiante
Principiante

0/3

Créditos 415

Gracias : 87

Volver arriba Ir abajo

RPG Maker VX ACE Re: [VX Ace] Créditos en Title Screen

Mensaje por Hanatoa el 2015-09-03, 16:15

Lo aporté muy a prisa y ni siquiera añadí los archivos que utiliza el script orz... Pero, ¡arreglado en el primer post! También he editado el script, lo he traducido al español y añadido más información dentro y ahora con música personalizada.

Para que en vez de utilizar una música personalizada utilizara la misma que el menú (sin detenerse), habría que eliminar la línea 115
Código:
    RPG::BGM.new("Custom").play
y editar la 113
Código:
    RPG::BGM.stop
cambiando " stop " por " new ".
Sé que posiblemente haya otras formas, pero tampoco sé demasiado aún así que voy a lo cutre.



En cuanto a las dudas/sugerencias del texto, eso es algo que lamentablemente todavía no sé implementar bien (errores por todos lados). Cuando aprenda un poco más, editaré/reharé el script para que se vea más como los créditos de toda la vida (?).

¡Gracias por tu comentario!
avatar
Hanatoa
Iniciado
Iniciado

0/3

Créditos 50

Gracias : 9

Volver arriba Ir abajo

RPG Maker VX ACE Re: [VX Ace] Créditos en Title Screen

Mensaje por Wecoc el 2015-09-03, 16:36

Lo del scroll es posiblemente lo más complicado. Yo hice un script de ventana de créditos con scroll para XP, quizá te sirva de referencia. Es cuestión de jugar con el oy en el update, y cambiar la velocidad según el Input...

Por cierto, estás poniendo el texto contínuamente en update cuanto el texto en realidad no cambia, eso es innecesario y da lag. Deberías hacer un refresh y poner el set_text.
Además ese set_text parece como un atajo de las ventanas para el método draw_text. Si es así sería más recomendable usar draw_text porque tendrías la opción de texto centrado.

Estoy diciendo todo ésto y no uso VX Ace así que no me hagas mucho caso, estoy tomando el XP de referencia.

En XP el audio no va exactamente como dijiste, y no creo que en Ace sea muy distinto.

Si pones RPG::BGM.new("Custom").play ya no es necesario que pongas RPG::BGM.stop
RPG::BGM.stop sería solo si no quieres que suene ninguna música.
Y si quieres que siga sonando la que había no pondrías ni una cosa ni la otra; simplemente nada. O bien si con nada no va, sería RPG::BGM.new(la default del título).play
avatar
Wecoc
Administrador
Administrador



Créditos 12385

Gracias : 595

Volver arriba Ir abajo

RPG Maker VX ACE Re: [VX Ace] Créditos en Title Screen

Mensaje por Hanatoa el 2015-09-03, 16:51

¡Oh! He editado el audio con lo que dijiste y todo va bien, sin embargo a la hora de hacer el refresh, el texto no aparece. Ni con set_text ni con draw_text.

Edit: Acabo de ver que has editado el post mientras respondía-- Ahí le hecho un vistazo antes de seguir peleándome con el draw_text. (Me da miedito...)

¡Gracias por la sugerencia!
avatar
Hanatoa
Iniciado
Iniciado

0/3

Créditos 50

Gracias : 9

Volver arriba Ir abajo

RPG Maker VX ACE Re: [VX Ace] Créditos en Title Screen

Mensaje por Mackton el 2015-09-03, 19:57

Bueno, estuve trasteando un poco con el Script (la primera version que posteaste), tratando de ver si me quedaba como yo quería... Pongo unas imágenes para que se entienda mejor:

Spoiler:








(Esos créditos son puramente ficticios! XD)

1) Para que siguiera sonando la misma música, borre la linea 54 "stop_music", que esta debajo de "super"
2) Para acomodar el texto hacia el centro (p/ej la palabra "Credits"), veo que simplemente hay que espaciarlo "a ojo" en el Script. Los espacios añadidos en el Script se reflejan en la pantalla (p/ej., los dos musicalizadores). No será lo ideal pero sirvió :P
3) Para ajustar el tamaño de la ventana, modifique las lineas 58 y 59 "@my_window.height" y ".width" con otros valores (prueba y error)

El scroll del texto, si es muy complicado, no hace falta! Ya se podrá hacer mediate un mapa vacío después de la intro, en una ventana de mensaje con transparencia full y sin bordes, supongo...

Lo que no se como hacer y realmente me gustaría es:
1) Que no aparezcan las flechitas
2) Que la ventana aparezca centrada, y debajo del título del juego (es decir en la misma posición que la ventana de Start, Load, Exit (-Al final, puse todo en ingles :P,! Es que es solo una version de prueba-).

Bueno, no se si es pedir mucho, jajaja es lo que yo me imaginé de entrada cuando vi el titulo del post, pero no se si pueda lograr. Desde ya, muchas gracias por tu trabajo!
avatar
Mackton
Principiante
Principiante

0/3

Créditos 415

Gracias : 87

Volver arriba Ir abajo

RPG Maker VX ACE Re: [VX Ace] Créditos en Title Screen

Mensaje por Hanatoa el 2015-09-06, 01:58

Por el momento todavía no he podido añadir el scroll (algún día), pero he arreglado un par de cositas.
1.- Ya no aparecen las molestas flechitas.
2.- Se puede centrar tanto el texto como la ventana.
3.- En vez de usar set_text usa draw_text, así que más sencillo para centrar el texto.
esta es la parte que más dolor de cabeza me ha dado

Para centrar la ventana, editar la 'x' en la línea 61 [en el script en vez de 'x' o 'y' aparecen 0s]
Código:
   super(x, y, Graphics.width, 416)

Y para centrar el texto a partir de la 76. Mismo método que la ventana.
Código:
   draw_text(0, line_height, Graphics.width, line_height, "Cuanto empiezo a odiar este script");


No puse el texto en refresh, pero espero que de esta forma no de lag.

Editado el primer post con la info y un mejor "ejemplo".
avatar
Hanatoa
Iniciado
Iniciado

0/3

Créditos 50

Gracias : 9

Volver arriba Ir abajo

RPG Maker VX ACE Re: [VX Ace] Créditos en Title Screen

Mensaje por Mackton el 2015-09-06, 08:57

No odies a tu pequeño Screapture, pobrecito! Después de todo  es una ceación tuya, y cubre un tema del que nadie se había ocupado, de modo que es original! Muchísimas gracias por las mejoras!
Ahora es 100 % funcional para cualquier usuario, con la posibilidad de asignarle su propia música o no, su propio gráfico o no, y su propio tamaño y posición.

Y así nos encontramos con uno de los principales desafíos de la programación de videojuegos, y es que siempre hay que tener en cuenta múltiples opciones... que si el personaje mira para arriba, que si mira para abajo, que si mira para el costado, que si el jugador toca tal tecla, que si no la toca... Es agotador! Y siempre habrá un usuario que se le ocurre una función que nunca habíamos considerado. Es como una de las Leyes de Murphy de los Scripters, supongo.

Excelente trabajo! Felicitaciones (+1) y muchas gracias!
avatar
Mackton
Principiante
Principiante

0/3

Créditos 415

Gracias : 87

Volver arriba Ir abajo

RPG Maker VX ACE Re: [VX Ace] Créditos en Title Screen

Mensaje por ElNachGames el 2015-12-04, 16:04

Puede usarse de manera que al iniciar el juego no este pero al desbloquear algo aparesca?
avatar
ElNachGames
Iniciado
Iniciado

0/3

Créditos 27

Gracias : 6

Volver arriba Ir abajo

RPG Maker VX ACE Re: [VX Ace] Créditos en Title Screen

Mensaje por Miky Joe el 2015-12-04, 17:38

Se ve muy bueno el script...lastima porque yo ya hice mi propio engine de menu con la seccion de créditos...aunque esta muy bonito visualmente te ganaste mi respeto,pues yo ni de broma puedo crear un script para cambiar siquiera la fuente.:)
avatar
Miky Joe
Veterano
Veterano

0/3

Créditos 1131

Gracias : 72

Volver arriba Ir abajo

RPG Maker VX ACE Re: [VX Ace] Créditos en Title Screen

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.