Pre Title-Screen Cutscene
Authors: Jackolas
Version: 1.0
Type: Title Screen Add-on
Key Term: Title / Save / Load / GameOver Add-on
IntroductionSimple script that adds the Possibility to add an in-game, event controlled
cut-scene before your title-screen pops up.
Features
- Option to set the Map ID of the cutscene.
- Option to set the X,Y of the cutscene.
- Option to disable the cutscene if there is a save available.
ScreenshotsHow to make a screenshot of a system that skips the title screen?
DemoDon't have [VX] to make one
ScriptPlace above main.
#==============================================================================
# ** Cutscene Script [VX]
#
# Script by: Jackolas
# Thanks: Game_Guy (for fixing bugs)
# Arisenhorizen (for requesting and bug testing)
#
# version number: V1.0
#------------------------------------------------------------------------------
# This script allows you to skip the title screen and go to an event
# created cutscene.
#
# - Option to set the Map ID of the cutscene.
# - Option to set the X,Y of the cutscene.
# - option to disable the cutscene if there is a save available.
#------------------------------------------------------------------------------
# How to use:
#
# Place as last script above main.
# Edit the Config to your Cutscene map.
# To end the cut-scene add an event with a script
# with: $scene = Scene_Title.new
# or use a return to title screen command.
#
# Also replace in the Main script $scene = Scene_Title.new
# For $scene = Cutscene_Title.new
#==============================================================================
module CutsceneStart
#--------------------------------------------------------------------------
# * Configuration Begin
#--------------------------------------------------------------------------
def self.map_id
return 1 # The map id of the cutscene
end
def self.map_x
return 1 # The x of the cutscene
end
def self.map_y
return 1 # The y of the cutscene
end
def self.checksave
return true #Disable cut-scene when save is available
end
#--------------------------------------------------------------------------
# * Configuration END
#--------------------------------------------------------------------------
end
#==============================================================================
# ** Cutscene Script
#------------------------------------------------------------------------------
# This class performs the title screen processing.
#==============================================================================
class Cutscene_Title < Scene_Base
#--------------------------------------------------------------------------
# * Main Processing
#--------------------------------------------------------------------------
def main
if $BTEST # If battle test
$scene = Scene_Title.new # Change to Battle test
else if CutsceneStart.checksave # Check if check for save
check_savegame_on # Check for savegames
if not @savegame_enabled # If no savegames are found
command_cutscene # Start Cutscene
else # If savegames are found
$scene = Scene_Title.new # Skip to title screen
end
else # If no check for save
command_cutscene # Start Cutscene
end
end
end
#--------------------------------------------------------------------------
# * Command: New Game
#--------------------------------------------------------------------------
def command_cutscene
load_database
create_game_objects
$game_party.setup_starting_members
$game_map.setup(CutsceneStart.map_id)
$game_player.moveto(CutsceneStart.map_x, CutsceneStart.map_y)
$game_player.refresh
$scene = Scene_Map.new
$game_map.autoplay
end
#--------------------------------------------------------------------------
# * Load Database
#--------------------------------------------------------------------------
def load_database
$data_actors = load_data("Data/Actors.rvdata")
$data_classes = load_data("Data/Classes.rvdata")
$data_skills = load_data("Data/Skills.rvdata")
$data_items = load_data("Data/Items.rvdata")
$data_weapons = load_data("Data/Weapons.rvdata")
$data_armors = load_data("Data/Armors.rvdata")
$data_enemies = load_data("Data/Enemies.rvdata")
$data_troops = load_data("Data/Troops.rvdata")
$data_states = load_data("Data/States.rvdata")
$data_animations = load_data("Data/Animations.rvdata")
$data_common_events = load_data("Data/CommonEvents.rvdata")
$data_system = load_data("Data/System.rvdata")
$data_areas = load_data("Data/Areas.rvdata")
end
#--------------------------------------------------------------------------
# * Create Game Objects
#--------------------------------------------------------------------------
def create_game_objects
$game_temp = Game_Temp.new
$game_message = Game_Message.new
$game_system = Game_System.new
$game_switches = Game_Switches.new
$game_variables = Game_Variables.new
$game_self_switches = Game_SelfSwitches.new
$game_actors = Game_Actors.new
$game_party = Game_Party.new
$game_troop = Game_Troop.new
$game_map = Game_Map.new
$game_player = Game_Player.new
end
#--------------------------------------------------------------------------
# * Determine if Continue is Enabled
#--------------------------------------------------------------------------
def check_savegame_on
@savegame_enabled = (Dir.glob('Save*.rvdata').size > 0)
end
end
InstructionsPlace above main (to be save, place above other custom scripts).
Replace in the "Main" script
For
$scene = Cutscene_Title.new
Edit the Config to your cut-scene map.
To end the cut-scene add an event with a script with:
or use a return to title screen command.
Compatibilitywill cause compatibility problems with scripts that add to the
"create_game_objects" of the basic Title_Screen script.
Credits and Thanks
- Game_Guy (for fixing bugs)
- Arisenhorizen (for requesting and bug testing)
Author's NotesIf you find any compatibility problems post here and I will try to fix them.
Vampyr SBABS compatibility problemsAdd the following script to the bottom of Vampyr SBABS script
and make sure that Cutscene Script is above main and Vampyr SBABS
#------------------------------------------------------------------------------
# Scene Title
#------------------------------------------------------------------------------
class Cutscene_Title < Scene_Base
alias vampyr_sbabs_cutscenetitle_create_game_objects create_game_objects
alias vampyr_sbabs_cutscenetitle_command_new_game command_new_game
def create_game_objects
$game_monsters = []
$game_allies = []
$game_range = []
$game_drop = []
$game_bomb = []
vampyr_sbabs_cutscenetitle_create_game_objects
$Vampyr_SBABS = Vampyr_SBABS.new
end
def command_new_game
vampyr_sbabs_cutscenetitle_command_new_game
for ally in $game_allies.compact
ally.map_id = CutsceneStart.map_id
ally.moveto(CutsceneStart.map_x, CutsceneStart.map_y)
ally.move_random
end
end
end