RMRK is retiring.
Registration is disabled. The site will remain online, but eventually become a read-only archive. More information.

RMRK.net has nothing to do with Blockchains, Cryptocurrency or NFTs. We have been around since the early 2000s, but there is a new group using the RMRK name that deals with those things. We have nothing to do with them.
NFTs are a scam, and if somebody is trying to persuade you to buy or invest in crypto/blockchain/NFT content, please turn them down and save your money. See this video for more information.
Image before title screen? [Using RPG Maker VX]

0 Members and 1 Guest are viewing this topic.

**
Rep: +0/-0Level 74
I am myself.
I'm trying to find out how to add an image before the title screen, like those commercial games... They add an image of their game and it fades away and to the title screen it goes. I really want to know how to do this.

If you still do not understand, do you know Amaranthia? Well, if you see their games, you will see that before the title screen shows, they put an 'Amaranth' image before the title screen shows up. Anyone know how to do this on RPG Maker VX?


Thanks for helping! :D


***
Rep:
Level 75
I don't know if this could be made by events alone, but this script by Vlue L. Maynara works just fine.

Spoiler for:
Code: [Select]
#--------- Pretitle script ------------------------------------------#
# - A script to display up to three images before the title menu     #
# - Configurable! Woot!                                              #
#                   ###Read this before using###                     #
# - Pictures to be displayed must be placed in the \Graphics\System  #
#   folder                                                           #
# - Audio files to be played must be placed in the \Audio\BGM folder #
# - Must change "$scene = Scene_Title.new" under Main to             #
#   "$scene = Scene_Pretitle.new"                                    #
# - To call script (why? o.0) use "$scene = Scene_Pretitle.new"      #
#                                                                    #
#                   Disclaimer? Give credit where credit is due      #
#-------------------------Script written by: Vlue L. Maynara---------#

class Scene_Pretitle < Scene_Base

   ###Config###
###Failure to comply with rules will result in script failure###
  #Skip pretitles?
  PRETITLE_SKIP       = false
  #Fadein (frames)
  PRETITLE_TRANSITION = 20
  #How long to display (frames)
  PRETITLE_WAIT       = 40
  #Fadeout (frames)
  PRETITLE_FADEOUT    = 60
  #Music to be played, nil in none (Filename must be in quotes, ex. "Scene1")
  PRETITLE_MUSIC      = "Scene1"
  #Volume of Music (%)
  PRETITLE_VOLUME     = 100
  #Pitch of Music (50-150)
  PRETITLE_PITCH      = 100
  #First file to load, nil if none (Filename must be in quotes, ex. "Gameover")
  PRETITLE_FILE       = "Gameover"
  #Second file to load, nil if none (Filename must be in quotes, ex. "Balloon")
  PRETITLE_FILE2      = nil
  #Third file to load, nil if none (Filename must be in quotes, ex. "Title")
  PRETITLE_FILE3      = nil           
###End Config###
 
#Script start#
 
  def main
    if $BTEST                         # If battle test
      $scene = Scene_Title.new        # Start battle test
    else                              # If normal play
      super                           # Usual main processing
    end
  end
 
  def start
    if PRETITLE_SKIP
      $scene = Scene_Title.new
    elsif
      create_pretitle_1
    end
  end
 
  def create_pretitle_1
    if PRETITLE_FILE != nil
      if PRETITLE_MUSIC != nil
        Audio.bgm_play("Audio/BGM/" + PRETITLE_MUSIC, PRETITLE_VOLUME, PRETITLE_PITCH)
      end
      @sprite1 = Sprite.new
      @sprite1.bitmap = Cache.system(PRETITLE_FILE)
      Graphics.transition(PRETITLE_TRANSITION)
      Graphics.wait(PRETITLE_WAIT)
      Graphics.fadeout(PRETITLE_FADEOUT)
      @sprite1.bitmap.dispose
      @sprite1.dispose
      create_pretitle_2
    elsif
      create_pretitle_2
    end
  end
 
  def create_pretitle_2
    if PRETITLE_FILE2 != nil
      @sprite1 = Sprite.new
      @sprite1.bitmap = Cache.system(PRETITLE_FILE2)
      Graphics.fadein(PRETITLE_TRANSITION)
      Graphics.wait(PRETITLE_WAIT)
      Graphics.fadeout(PRETITLE_FADEOUT)
      @sprite1.bitmap.dispose
      @sprite1.dispose
      create_pretitle_3
    elsif
      create_pretitle_3
    end
  end
 
  def create_pretitle_3
    if PRETITLE_FILE3 != nil
      @sprite1 = Sprite.new
      @sprite1.bitmap = Cache.system(PRETITLE_FILE3)
      Graphics.fadein(PRETITLE_TRANSITION)
      Graphics.wait(PRETITLE_WAIT)
      Graphics.fadeout(PRETITLE_FADEOUT)
      @sprite1.bitmap.dispose
      @sprite1.dispose
      $scene = Scene_Title.new
    elsif
      $scene = Scene_Title.new
    end
  end
end
#End Script#

*
RMRK's dad
Rep:
Level 86
You know, I think its all gonna be okay.
For going the distance for a balanced breakfast.Project of the Month winner for June 2009For being a noted contributor to the RMRK Wiki2013 Best WriterSilver Writing ReviewerSecret Santa 2013 Participant
KGC has a similar script. Just replace your graphic name where it says Mais Coq.

Spoiler for:
Code: [Select]
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#_/   ?                  Splash Logo - KGC_TitleDirection                ? VX ?
#_/   ?                       Last Update: 2008/09/06                         ?
#_/   ?                    Translation by Mr. Anonymous                       ?
#_/   ? KGC Site:                                                             ?
#_/   ? http://f44.aaa.livedoor.jp/~ytomy/                                    ?
#_/   ? Translator's Blog:                                                    ?
#_/   ? http://mraprojects.wordpress.com                                      ?
#_/----------------------------------------------------------------------------
#_/   This script adds a function to display a splash logo before the title
#_/  screen is displayed. A sample of this effect is provided with the demo
#_/  this script came packaged in.
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

#==============================================================================
#                             ? Customization ?
#==============================================================================

module KGC
module TitleDirection
  #                        ? Start Title BGM Timing ?
  # This allows you to adjust when the title screen BGM is played.
  #   0..Before Logo  1..After Logo
  BGM_TIMING = 1

  #                 ? Show Logo During Testplay (DEBUGGING) ?
  # This toggle allows you to bypass the logo display when debugging.
  TESTPLAY_SHOW = true
 
  #                         ? Splash Logo Image ?
  #  Here, you may specify the image file you'd like to use as a logo.
  # The image must be in the "Graphics/System" folder.
  # Setting this to nil will display nothing. If set to nil, the Splash Logo
  #  Sound Effect defined below is also assumed to be nil.
  SPLASH_LOGO_FILE = "MaisCoq"
 
  #                       ? Splash Logo Sound Effect ?
  # Here, you may specify a sound effect to play while the splash logo displays.
  # This can be written two ways. First, you can simply define a filename and
  #  the script automatically assumes to look in the SE folder and assign
  #  default values for volume and pitch, as such:   
  #     SPLASH_LOGO_SE = "start_logo"
  #  Or class notation, allowing for additional customization, as such:
  #   SPLASH_LOGO_SE = RPG::SE.new("start_logo", 80, 100)
  # Format: ("SoundName", Volume, Pitch)
  SPLASH_LOGO_SE = RPG::SE.new("sb_duck", 80, 100)
 
  #                           ? Logo Splash Style ?
  #  Here, you may specify an effect for your logo. It's best just to try out
  # each option and see what works for you.
  #   0..Fade  1..Crossing  2..Zoom  3..Splash
  SPLASH_LOGO_TYPE = 2
  end
end
#=============================================================================#
#                          ? End Customization ?                              #
#=============================================================================#

#=================================================#
#                    IMPORT                       #
#=================================================#

$imported = {} if $imported == nil
$imported["TitleDirection"] = true

#=================================================#

#==============================================================================
# ? Sprite_TitleLogo
#------------------------------------------------------------------------------
#   ??????????????????
#==============================================================================

class Sprite_TitleLogo < Sprite
  attr_accessor :effect_no_out  # ?????????
  #--------------------------------------------------------------------------
  # ? ?????????
  #--------------------------------------------------------------------------
  def initialize
    super
    @effect_type = 0
    @effect_duration = 0
    @effect_sprites = []
    @effect_no_out = false
  end
  #--------------------------------------------------------------------------
  # ? ??
  #--------------------------------------------------------------------------
  def dispose
    super
    dispose_effect_sprites
  end
  #--------------------------------------------------------------------------
  # ? ?????????????
  #--------------------------------------------------------------------------
  def dispose_effect_sprites
    @effect_sprites.each { |s| s.dispose }
    @effect_sprites = []
  end
  #--------------------------------------------------------------------------
  # ? Z ????
  #--------------------------------------------------------------------------
  def z=(value)
    super(value)
    @effect_sprites.each { |s| s.z = value }
  end
  #--------------------------------------------------------------------------
  # ? ??????
  #     dx : X ??
  #     dy : Y ??
  #     bitmap : ????
  #--------------------------------------------------------------------------
  def effect_fade(dx, dy, bitmap)
    dispose_effect_sprites
    @effect_type = 0
    @effect_duration = 150
    # ???????
    sprite = Sprite.new
    sprite.bitmap = bitmap
    # ???????
    sprite.x = dx
    sprite.y = dy
    sprite.ox = bitmap.width / 2
    sprite.oy = bitmap.height / 2
    sprite.opacity = 0

    @effect_sprites << sprite
  end
  #--------------------------------------------------------------------------
  # ? ?????
  #--------------------------------------------------------------------------
  def effect_cross(dx, dy, bitmap)
    dispose_effect_sprites
    @effect_type = 1
    @effect_duration = 150
    # ???????
    sprites = [Sprite.new, Sprite.new]
    sprites[0].bitmap = bitmap
    sprites[1].bitmap = bitmap
    # ???????
    sprites[0].x = dx - 240
    sprites[1].x = dx + 240
    sprites[0].y = dy
    sprites[1].y = dy
    sprites[0].ox = sprites[1].ox = bitmap.width / 2
    sprites[0].oy = sprites[1].oy = bitmap.height / 2
    sprites[0].opacity = 0
    sprites[1].opacity = 0

    @effect_sprites += sprites
  end
  #--------------------------------------------------------------------------
  # ? ?????
  #--------------------------------------------------------------------------
  def effect_zoom(dx, dy, bitmap)
    dispose_effect_sprites
    @effect_type = 2
    @effect_duration = 150
    # ???????
    sprites = [Sprite.new, Sprite.new]
    sprites[0].bitmap = bitmap
    sprites[1].bitmap = bitmap
    # ????
    sprites[0].x = sprites[1].x = dx
    sprites[0].y = sprites[1].y = dy
    sprites[0].ox = sprites[1].ox = bitmap.width / 2
    sprites[0].oy = sprites[1].oy = bitmap.height / 2
    sprites[0].zoom_x = sprites[0].zoom_y = 0.0
    sprites[1].zoom_x = sprites[1].zoom_y = 6.0
    sprites[0].opacity = sprites[1].opacity = 0

    @effect_sprites += sprites
  end
  #--------------------------------------------------------------------------
  # ? ????????
  #--------------------------------------------------------------------------
  def effect_splash(dx, dy, bitmap)
    dispose_effect_sprites
    @effect_type = 3
    @effect_duration = 150
    # ???????
    sprites = [Sprite.new]
    sprites[0].bitmap = bitmap
    # ????
    sprites[0].ox = bitmap.width >> 1
    sprites[0].oy = bitmap.height >> 1
    sprites[0].x = dx
    sprites[0].y = dy
    sprites[0].opacity = 0
    (1..3).each { |i|
      sprites[i] = Sprite.new
      sprites[i].bitmap = bitmap
      sprites[i].ox = sprites[0].ox
      sprites[i].oy = sprites[0].oy
      sprites[i].x = dx
      sprites[i].y = dy
      sprites[i].opacity = 255
      sprites[i].visible = false
    }

    @effect_sprites += sprites
  end
  #--------------------------------------------------------------------------
  # ? ??????????
  #--------------------------------------------------------------------------
  def effect_splash_in(dx, dy, bitmap)
    dispose_effect_sprites
    @effect_type = 4
    @effect_duration = 41
    # ???????
    sprites = [Sprite.new]
    sprites[0].bitmap = bitmap
    # ????
    sprites[0].ox = bitmap.width >> 1
    sprites[0].oy = bitmap.height >> 1
    sprites[0].x = dx - 160
    sprites[0].y = dy - 160
    sprites[0].opacity = 0
    (1..3).each { |i|
      sprites[i] = Sprite.new
      sprites[i].bitmap = bitmap
      sprites[i].ox = sprites[0].ox
      sprites[i].oy = sprites[0].oy
      sprites[i].x = dx
      sprites[i].y = dy
      sprites[i].opacity = 0
    }
    sprites[1].x += 160
    sprites[1].y -= 160
    sprites[2].x += 160
    sprites[2].y += 160
    sprites[3].x -= 160
    sprites[3].y += 160

    @effect_sprites += sprites
  end
  #--------------------------------------------------------------------------
  # ? ???????
  #--------------------------------------------------------------------------
  def stop_effect
    dispose_effect_sprites
    @effect_duration = 0
  end
  #--------------------------------------------------------------------------
  # ? ??????????
  #--------------------------------------------------------------------------
  def effect?
    return @effect_duration > 0
  end
  #--------------------------------------------------------------------------
  # ? ??????
  #--------------------------------------------------------------------------
  def update
    super

    if @effect_duration > 0
      update_effect
    end
  end
  #--------------------------------------------------------------------------
  # ? ???????
  #--------------------------------------------------------------------------
  def update_effect
    @effect_duration -= 1
    case @effect_type
    when 0
      update_effect_fade
    when 1
      update_effect_cross
    when 2
      update_effect_zoom
    when 3
      update_effect_splash
    when 4
      update_effect_splash_in
    end
  end
  #--------------------------------------------------------------------------
  # ? ??????? : ????
  #--------------------------------------------------------------------------
  def update_effect_fade
    case @effect_duration
    when 100...150
      @effect_sprites[0].opacity += 6
    when 30...100
      # ?????
    when 0...30
      unless @effect_no_out
        @effect_sprites[0].opacity -= 10
      end
    end
  end
  #--------------------------------------------------------------------------
  # ? ??????? : ???
  #--------------------------------------------------------------------------
  def update_effect_cross
    case @effect_duration
    when 110...150
      @effect_sprites[0].x += 6
      @effect_sprites[1].x -= 6
      @effect_sprites[0].opacity += 4
      @effect_sprites[1].opacity += 4
    when 30...110
      @effect_sprites[0].opacity = 255
      @effect_sprites[1].visible = false
    when 0...30
      unless @effect_no_out
        @effect_sprites[0].opacity -= 13
      end
    end
  end
  #--------------------------------------------------------------------------
  # ? ??????? : ???
  #--------------------------------------------------------------------------
  def update_effect_zoom
    case @effect_duration
    when 100...150
      @effect_sprites[0].zoom_x = (@effect_sprites[0].zoom_y += 0.02)
      @effect_sprites[1].zoom_x = (@effect_sprites[1].zoom_y -= 0.1)
      @effect_sprites[0].opacity += 3
      @effect_sprites[1].opacity += 3
    when 30...100
      @effect_sprites[0].opacity = 255
      @effect_sprites[1].visible = false
    when 0...30
      unless @effect_no_out
        @effect_sprites[0].opacity -= 13
      end
    end
  end
  #--------------------------------------------------------------------------
  # ? ??????? : ??????
  #--------------------------------------------------------------------------
  def update_effect_splash
    case @effect_duration
    when 90...150
      @effect_sprites[0].opacity += 5
    when 0...60
      @effect_sprites[0].x -= 2
      @effect_sprites[0].y -= 2
      @effect_sprites[1].x += 2
      @effect_sprites[1].y -= 2
      @effect_sprites[2].x += 2
      @effect_sprites[2].y += 2
      @effect_sprites[3].x -= 2
      @effect_sprites[3].y += 2
      4.times { |j|
        @effect_sprites[j].visible = true
        @effect_sprites[j].opacity -= 5
      }
    end
  end
  #--------------------------------------------------------------------------
  # ? ??????? : ????????
  #--------------------------------------------------------------------------
  def update_effect_splash_in
    case @effect_duration
    when 1...41
      @effect_sprites[0].x += 2
      @effect_sprites[0].y += 2
      @effect_sprites[1].x -= 2
      @effect_sprites[1].y += 2
      @effect_sprites[2].x -= 2
      @effect_sprites[2].y -= 2
      @effect_sprites[3].x += 2
      @effect_sprites[3].y -= 2
      4.times { |j|
        @effect_sprites[j].opacity += 3
      }
    when 0
      @effect_sprites[0].opacity = 255
      (1..3).each { |i|
        @effect_sprites[i].visible = false
      }
    end
  end
end

#???????????????????????????????????????

#==============================================================================
# ? Scene_Title
#==============================================================================

class Scene_Title < Scene_Base
  #--------------------------------------------------------------------------
  # ? ????
  #--------------------------------------------------------------------------
  alias start_KGC_TitleDirection start
  def start
    show_splash_logo

    start_KGC_TitleDirection
  end
  #--------------------------------------------------------------------------
  # ? ??????????
  #--------------------------------------------------------------------------
  def show_splash_logo
    return if $__splash_logo_shown
    return if $TEST && !KGC::TitleDirection::TESTPLAY_SHOW
    return if KGC::TitleDirection::SPLASH_LOGO_FILE == nil

    play_title_music if KGC::TitleDirection::BGM_TIMING == 0

    # ???? SE ??
    if KGC::TitleDirection::SPLASH_LOGO_SE != nil
      if KGC::TitleDirection::SPLASH_LOGO_SE.is_a?(RPG::SE)
        KGC::TitleDirection::SPLASH_LOGO_SE.play
      elsif KGC::TitleDirection::SPLASH_LOGO_SE.is_a?(String)
        se = RPG::SE.new(KGC::TitleDirection::SPLASH_LOGO_SE)
        se.play
      end
    end

    # ?????????????
    sprite = Sprite_TitleLogo.new
    bitmap = Cache.system(KGC::TitleDirection::SPLASH_LOGO_FILE)
    dx = Graphics.width / 2
    dy = Graphics.height / 2

    # ???????
    case KGC::TitleDirection::SPLASH_LOGO_TYPE
    when 0
      sprite.effect_fade(dx, dy, bitmap)
    when 1
      sprite.effect_cross(dx, dy, bitmap)
    when 2
      sprite.effect_zoom(dx, dy, bitmap)
    when 3
      sprite.effect_splash(dx, dy, bitmap)
    end
    # ???????
    Graphics.transition(0)
    while sprite.effect?
      Graphics.update
      Input.update
      sprite.update
      # C ??????
      if Input.trigger?(Input::C)
        sprite.stop_effect
      end
    end
    # ???
    sprite.dispose
    bitmap.dispose
    # ?????????
    Graphics.freeze

    $__splash_logo_shown = true
  end
end
:tinysmile: