Also this new version was created from Miget man12's More-than-usually Graphical Title so please give credit to him.
EDIT:
Demo now available.(with the updated script)
Start Screen for VX
Ever noticed how in some games they have a start screen before continuing on to the continue/new game?
Well now it's your turn to have it.
[Show/Hide] Start Screen 2.5
CODE
#-------------------------------------------------------------------------------
# Start Screen VX V.2.5
# (Created from Miget man12's More-than-usually Graphical Title)
# Last update : 2010/5/05
# Edited by Guyver's Bane
# And support given by Night5h4d3 for Battle Test problem.(resolved now)
# Credit goes to Miget man12 for the script this was made from.
# I take credit only in editing his original work.
#
#==============================================================================#
# This script allows you to have a Start screen upon playing #
#==============================================================================#
#------------------------------------------------------------------------------#
# Installation: Place above "Main". Basically it's pulg'n play. #
#------------------------------------------------------------------------------#
#==============================================================================#
# Customization #
#==============================================================================#
module GB
# The Number of COMMAND_ACTION, COMMAND_X and COMMAND_Y variables MUST be at
# least as much as the number of COMMAND_TEXT variables!! (You can have more
# than COMMAND_TEXT; it won't affect anything)
# The text drawn on the title screen
COMMAND_TEXT = [] # Leave alone!
COMMAND_TEXT[0] = "-Press Start-"
COMMAND_ACTION = [] # Leave alone!
COMMAND_ACTION[0] = "$scene = Scene_Title.new"
# ["Times New Roman", "Verdana", "Arial", "Courier New"]
# **the name MUST be in quotes!**
COMMAND_FONT = ["Bookman Old Style", "Verdana"]
# Size of Command Text
COMMAND_TEXT_SIZE = 28
COMMAND_SHADOW = false
COMMAND_BOLD = false
COMMAND_ITALIC = false
# Colors go like so:
# Color.new(red,green,blue[,transparency])
# Each color level ranges from 0 to 255
# All 255 is white
# All 0 is black
# Transparency can be left out! If it is, it will be automatically set to 255
# Color of Command Text when not selected
COMMAND_COLOR_NOT = Color.new(0,0,0)
# Color Command Text flashes when selected
COMMAND_COLOR_YES = Color.new(255,255,255)
COMMAND_X = [] # Leave alone!
COMMAND_Y = [] # Leave alone!
# X position of Start Text
COMMAND_X[0] = 200
# Y position of Start Text
COMMAND_Y[0] = 288
end
#==============================================================================#
# End Of Customization ^_^ #
#==============================================================================#
class Scene_PreTitle < Scene_Base
#--------------------------------------------------------------------------
# * Main Processing
#--------------------------------------------------------------------------
def main# If normal play
if $BTEST
$scene = Scene_Title.new
else
super # Usual main processing
end
end
#--------------------------------------------------------------------------
# * Start processing
#--------------------------------------------------------------------------
def start
super
@com_wait = 1
@sel_index = 0
create_title_graphics # Create title graphics
create_command_graphics # Create command graphics
play_title_music # Play title screen music
end
#--------------------------------------------------------------------------
# * Execute Transition
#--------------------------------------------------------------------------
def perform_transition
Graphics.transition(20)
end
#--------------------------------------------------------------------------
# * Post-Start Processing
#--------------------------------------------------------------------------
def post_start
super
end
#--------------------------------------------------------------------------
# * Pre-termination Processing
#--------------------------------------------------------------------------
def pre_terminate
super
end
#--------------------------------------------------------------------------
# * Termination Processing
#--------------------------------------------------------------------------
def terminate
super
dispose_command_graphics
dispose_title_graphics
end
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
super
update_com_graphics
if Input.trigger?(Input::DOWN)
pre_mvmt
if @sel_index == (GB::COMMAND_TEXT.size-1)
@sel_index = 0
else
@sel_index += 1
end
post_mvmt
elsif Input.trigger?(Input::UP)
pre_mvmt
if @sel_index == 0
@sel_index = (GB::COMMAND_TEXT.size-1)
else
@sel_index -= 1
end
post_mvmt
elsif Input.trigger?(Input::C)
eval(GB::COMMAND_ACTION[@sel_index])
end
end
#--------------------------------------------------------------------------
# * Update Command Graphics
#--------------------------------------------------------------------------
def update_com_graphics
@com_wait -= 1
if @com_wait <= 0
@com_graphics[@sel_index].flash(GB::COMMAND_COLOR_YES,120)
@com_wait = 120
end
for sprt in @com_graphics
sprt.update
end
end
#--------------------------------------------------------------------------
# * Post Selection Movement Processing
#--------------------------------------------------------------------------
def post_mvmt
@com_graphics[@sel_index].flash(GB::COMMAND_COLOR_YES,60)
@com_wait = 60
end
#--------------------------------------------------------------------------
# * Pre-Selection Movement Processing
#--------------------------------------------------------------------------
def pre_mvmt
@com_graphics[@sel_index].flash(GB::COMMAND_COLOR_NOT,60)
end
#--------------------------------------------------------------------------
# * Create Title Graphic
#--------------------------------------------------------------------------
def create_title_graphics
@sprite = Sprite.new
@sprite.bitmap = Cache.system("Title")
end
#-------------------------------------------------------------------------
# * Dispose of Title Graphic
#--------------------------------------------------------------------------
def dispose_title_graphics
@sprite.bitmap.dispose
@sprite.dispose
end
#--------------------------------------------------------------------------
# * Play Title Screen Music
#--------------------------------------------------------------------------
def play_title_music
Audio.bgm_play('AUDIO/BGM/Battle1', 80, 100)
RPG::BGS.stop
RPG::ME.stop
end
#--------------------------------------------------------------------------
# * Create Command Graphics
#--------------------------------------------------------------------------
def create_command_graphics#window
@command_window = Window_Base.new(250, 350, 44, 50)
@command_window.opacity = 0
@command_window.back_opacity = 0
@command_window.contents_opacity = 0
@command_window.openness = 0
@com_graphics = []
for index in 0..(GB::COMMAND_TEXT.size-1)
@com_graphics[index] = Sprite.new
@com_graphics[index].bitmap = Bitmap.new(200,200)
@com_graphics[index].bitmap.font.name = GB::COMMAND_FONT
@com_graphics[index].bitmap.font.size = GB::COMMAND_TEXT_SIZE
@com_graphics[index].bitmap.font.color = GB::COMMAND_COLOR_NOT
@com_graphics[index].bitmap.font.shadow = GB::COMMAND_SHADOW
@com_graphics[index].bitmap.font.bold = GB::COMMAND_BOLD
@com_graphics[index].bitmap.font.italic = GB::COMMAND_ITALIC
@com_graphics[index].ox = -(GB::COMMAND_X[index])
@com_graphics[index].oy = -(GB::COMMAND_Y[index])
rect = @com_graphics[index].bitmap.text_size(GB::COMMAND_TEXT[index])
@com_graphics[index].bitmap.draw_text(0,0,rect.width,rect.height,GB::COMMAND_TEXT[index])
end
end
#--------------------------------------------------------------------------
# * Dispose of Command Graphics
#--------------------------------------------------------------------------
def dispose_command_graphics
for com in @com_graphics
com.dispose unless com.nil?
end
@command_window.dispose
end
def close_command_window
return
end
#==============================================================================
# ** Main
#------------------------------------------------------------------------------
# After defining each class, actual processing begins here.
#==============================================================================
begin
Graphics.freeze
$scene = Scene_PreTitle.new
$scene.main while $scene != nil
Graphics.transition(30)
rescue Errno::ENOENT
filename = $!.message.sub("No such file or directory - ", "")
print("Unable to find file #{filename}.")
end
end
# Start Screen VX V.2.5
# (Created from Miget man12's More-than-usually Graphical Title)
# Last update : 2010/5/05
# Edited by Guyver's Bane
# And support given by Night5h4d3 for Battle Test problem.(resolved now)
# Credit goes to Miget man12 for the script this was made from.
# I take credit only in editing his original work.
#
#==============================================================================#
# This script allows you to have a Start screen upon playing #
#==============================================================================#
#------------------------------------------------------------------------------#
# Installation: Place above "Main". Basically it's pulg'n play. #
#------------------------------------------------------------------------------#
#==============================================================================#
# Customization #
#==============================================================================#
module GB
# The Number of COMMAND_ACTION, COMMAND_X and COMMAND_Y variables MUST be at
# least as much as the number of COMMAND_TEXT variables!! (You can have more
# than COMMAND_TEXT; it won't affect anything)
# The text drawn on the title screen
COMMAND_TEXT = [] # Leave alone!
COMMAND_TEXT[0] = "-Press Start-"
COMMAND_ACTION = [] # Leave alone!
COMMAND_ACTION[0] = "$scene = Scene_Title.new"
# ["Times New Roman", "Verdana", "Arial", "Courier New"]
# **the name MUST be in quotes!**
COMMAND_FONT = ["Bookman Old Style", "Verdana"]
# Size of Command Text
COMMAND_TEXT_SIZE = 28
COMMAND_SHADOW = false
COMMAND_BOLD = false
COMMAND_ITALIC = false
# Colors go like so:
# Color.new(red,green,blue[,transparency])
# Each color level ranges from 0 to 255
# All 255 is white
# All 0 is black
# Transparency can be left out! If it is, it will be automatically set to 255
# Color of Command Text when not selected
COMMAND_COLOR_NOT = Color.new(0,0,0)
# Color Command Text flashes when selected
COMMAND_COLOR_YES = Color.new(255,255,255)
COMMAND_X = [] # Leave alone!
COMMAND_Y = [] # Leave alone!
# X position of Start Text
COMMAND_X[0] = 200
# Y position of Start Text
COMMAND_Y[0] = 288
end
#==============================================================================#
# End Of Customization ^_^ #
#==============================================================================#
class Scene_PreTitle < Scene_Base
#--------------------------------------------------------------------------
# * Main Processing
#--------------------------------------------------------------------------
def main# If normal play
if $BTEST
$scene = Scene_Title.new
else
super # Usual main processing
end
end
#--------------------------------------------------------------------------
# * Start processing
#--------------------------------------------------------------------------
def start
super
@com_wait = 1
@sel_index = 0
create_title_graphics # Create title graphics
create_command_graphics # Create command graphics
play_title_music # Play title screen music
end
#--------------------------------------------------------------------------
# * Execute Transition
#--------------------------------------------------------------------------
def perform_transition
Graphics.transition(20)
end
#--------------------------------------------------------------------------
# * Post-Start Processing
#--------------------------------------------------------------------------
def post_start
super
end
#--------------------------------------------------------------------------
# * Pre-termination Processing
#--------------------------------------------------------------------------
def pre_terminate
super
end
#--------------------------------------------------------------------------
# * Termination Processing
#--------------------------------------------------------------------------
def terminate
super
dispose_command_graphics
dispose_title_graphics
end
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
super
update_com_graphics
if Input.trigger?(Input::DOWN)
pre_mvmt
if @sel_index == (GB::COMMAND_TEXT.size-1)
@sel_index = 0
else
@sel_index += 1
end
post_mvmt
elsif Input.trigger?(Input::UP)
pre_mvmt
if @sel_index == 0
@sel_index = (GB::COMMAND_TEXT.size-1)
else
@sel_index -= 1
end
post_mvmt
elsif Input.trigger?(Input::C)
eval(GB::COMMAND_ACTION[@sel_index])
end
end
#--------------------------------------------------------------------------
# * Update Command Graphics
#--------------------------------------------------------------------------
def update_com_graphics
@com_wait -= 1
if @com_wait <= 0
@com_graphics[@sel_index].flash(GB::COMMAND_COLOR_YES,120)
@com_wait = 120
end
for sprt in @com_graphics
sprt.update
end
end
#--------------------------------------------------------------------------
# * Post Selection Movement Processing
#--------------------------------------------------------------------------
def post_mvmt
@com_graphics[@sel_index].flash(GB::COMMAND_COLOR_YES,60)
@com_wait = 60
end
#--------------------------------------------------------------------------
# * Pre-Selection Movement Processing
#--------------------------------------------------------------------------
def pre_mvmt
@com_graphics[@sel_index].flash(GB::COMMAND_COLOR_NOT,60)
end
#--------------------------------------------------------------------------
# * Create Title Graphic
#--------------------------------------------------------------------------
def create_title_graphics
@sprite = Sprite.new
@sprite.bitmap = Cache.system("Title")
end
#-------------------------------------------------------------------------
# * Dispose of Title Graphic
#--------------------------------------------------------------------------
def dispose_title_graphics
@sprite.bitmap.dispose
@sprite.dispose
end
#--------------------------------------------------------------------------
# * Play Title Screen Music
#--------------------------------------------------------------------------
def play_title_music
Audio.bgm_play('AUDIO/BGM/Battle1', 80, 100)
RPG::BGS.stop
RPG::ME.stop
end
#--------------------------------------------------------------------------
# * Create Command Graphics
#--------------------------------------------------------------------------
def create_command_graphics#window
@command_window = Window_Base.new(250, 350, 44, 50)
@command_window.opacity = 0
@command_window.back_opacity = 0
@command_window.contents_opacity = 0
@command_window.openness = 0
@com_graphics = []
for index in 0..(GB::COMMAND_TEXT.size-1)
@com_graphics[index] = Sprite.new
@com_graphics[index].bitmap = Bitmap.new(200,200)
@com_graphics[index].bitmap.font.name = GB::COMMAND_FONT
@com_graphics[index].bitmap.font.size = GB::COMMAND_TEXT_SIZE
@com_graphics[index].bitmap.font.color = GB::COMMAND_COLOR_NOT
@com_graphics[index].bitmap.font.shadow = GB::COMMAND_SHADOW
@com_graphics[index].bitmap.font.bold = GB::COMMAND_BOLD
@com_graphics[index].bitmap.font.italic = GB::COMMAND_ITALIC
@com_graphics[index].ox = -(GB::COMMAND_X[index])
@com_graphics[index].oy = -(GB::COMMAND_Y[index])
rect = @com_graphics[index].bitmap.text_size(GB::COMMAND_TEXT[index])
@com_graphics[index].bitmap.draw_text(0,0,rect.width,rect.height,GB::COMMAND_TEXT[index])
end
end
#--------------------------------------------------------------------------
# * Dispose of Command Graphics
#--------------------------------------------------------------------------
def dispose_command_graphics
for com in @com_graphics
com.dispose unless com.nil?
end
@command_window.dispose
end
def close_command_window
return
end
#==============================================================================
# ** Main
#------------------------------------------------------------------------------
# After defining each class, actual processing begins here.
#==============================================================================
begin
Graphics.freeze
$scene = Scene_PreTitle.new
$scene.main while $scene != nil
Graphics.transition(30)
rescue Errno::ENOENT
filename = $!.message.sub("No such file or directory - ", "")
print("Unable to find file #{filename}.")
end
end
Screenshot:

Compatibility: Should work fine with any script. It may not work with logo scripts.
You no longer have to change Scene_Title to Scene_PreTitle in MAIN!
Demo:
Click to view attachment
Alternative download:
http://www.mediafire.com/?yzjynq4zzyy
If you have any problems please post the error message and I will try and help.
