Skip Title Screen

SilverDash

Veteran
Veteran
Joined
Oct 11, 2015
Messages
405
Reaction score
158
First Language
Dutch
Primarily Uses
RMMV
Skip Title Screen v1.11
Author:
Squirting Elephant

params.png

Introduction
Skips the title screen so you can debug & playtest your game faster.

Features
- Skips the title screen without even loading it.
- Optionally skips the title screen when called through other code and/or through the menu. This can also be replaced by another scene of your choice through the plugin parameter.
- Optionally does not skip the title screen if at least one save file is present.
- You can configure the starting scene.

How to Use
Plug & play.

Script
Download v1.11
Download Master Demo

Version 1.02
Code:
//=============================================================================
// SilvSkipTitle.js
// Version: 1.02
// License: Public Domain or CC0
//=============================================================================
/*:
* @plugindesc v1.00 Skips Title Screen
   <SilverSkipTitle>
* @author Silver
*
* @param Skip Title Screen Entirely
* @desc Set to false to load the titlescreen briefly. true/false
* @default true
*
* @param Skip If Savefile Present
* @desc Skip the titlescreen if one or more savefiles are present? true/false
* @default true
*
* @param FadeOut Title
* @desc Only applies when SkipTitleScreenEntirely is set to false. true/false
* @default false
*
* @help No credits required, modify as you see fit.
*/

(function()
{
// Get Plugin Parameters
var Silv = Silv || {};
Silv.Parameters = $plugins.filter(function(p) { return p.description.contains('<SilverSkipTitle>'); })[0].parameters;
Silv.SkipTitle = Silv.SkipTitle || {};
Silv.SkipTitle.SkipTitleScreenEntirely = Silv.Parameters['Skip Title Screen Entirely'].toLowerCase() == 'true';
Silv.SkipTitle.SkipIfSavefilePresent   = Silv.Parameters['Skip If Savefile Present'].toLowerCase() == 'true';
Silv.SkipTitle.FadeOutTitle            = Silv.Parameters['FadeOut Title'].toLowerCase() == 'true';

function ShowTitleScreen() { return DataManager.isAnySavefileExists() && !Silv.SkipTitle.SkipIfSavefilePresent; }

// Skipping the title screen entirely
var alias_methodSceneBootStart = Scene_Boot.prototype.start;
Scene_Boot.prototype.start = function()
{
    if (Silv.SkipTitle.SkipTitleScreenEntirely && !ShowTitleScreen())
    {
        Scene_Base.prototype.start.call(this);
        SoundManager.preloadImportantSounds();
        if (DataManager.isBattleTest()) {
            DataManager.setupBattleTest();
            SceneManager.goto(Scene_Battle);
        } else if (DataManager.isEventTest()) {
            DataManager.setupEventTest();
            SceneManager.goto(Scene_Map);
        } else {
            this.checkPlayerLocation();
            DataManager.setupNewGame();
            SceneManager.goto(Scene_Map);
        }
        this.updateDocumentTitle();
    }
    else
    {
        alias_methodSceneBootStart.apply(this, arguments);
    }
};

// Fading closing and optionally fading the titlescreen entirely.
var alias_method_SceneTitleStart = Scene_Title.prototype.start;
Scene_Title.prototype.start = function()
{
    if(ShowTitleScreen)
    {
        alias_method_SceneTitleStart.apply(this, arguments);
    }
    else // Skip title screen
    {
        DataManager.setupNewGame();
        this._commandWindow.close();

        if (Silv.SkipTitle.FadeOutTitle) { this.fadeOutAll(); }

        SceneManager.goto(Scene_Map);
    }
};
})();

License:
Public Domain or CC0.
Do whatever you want. No credits required.
 
Last edited:

mlogan

Global Moderators
Global Mod
Joined
Mar 18, 2012
Messages
14,153
Reaction score
7,804
First Language
English
Primarily Uses
RMMV
Hi, I just wanted to let you know I tried out this script, but chose to go with another because when I use yours, there is a lag of 1-2 seconds where the title screen can still be seen. I just thought you might want to know in case it's something that can be fixed.
 

SilverDash

Veteran
Veteran
Joined
Oct 11, 2015
Messages
405
Reaction score
158
First Language
Dutch
Primarily Uses
RMMV
Didn't know there is another one. Also there is no lag. It's just that you see the title screen very briefly so that any custom initialization code from there can still execute. Should probably add an option to skip that.
 
Last edited by a moderator:

SilverDash

Veteran
Veteran
Joined
Oct 11, 2015
Messages
405
Reaction score
158
First Language
Dutch
Primarily Uses
RMMV
Updated, now by default skips the titlescreen entirely.
 

SOC

"God is my Judge"
Veteran
Joined
Mar 22, 2012
Messages
555
Reaction score
478
First Language
English
Primarily Uses
RMMV
Can you make it an option to only skip if there is no save file present?
 

HalcyonDaze

Smoke and Mirrors
Veteran
Joined
Feb 6, 2013
Messages
262
Reaction score
117
First Language
English
Primarily Uses
RMMV
Can you make it an option to only skip if there is no save file present?
I was just getting ready to say the same thing. That would be a small but insanely useful add-on!
 

SilverDash

Veteran
Veteran
Joined
Oct 11, 2015
Messages
405
Reaction score
158
First Language
Dutch
Primarily Uses
RMMV
Can you make it an option to only skip if there is no save file present?
I just added it. Set the "Skip If Savefile Present" parameter to false to apply it. Now let it 'be a small but insanely useful add-on!' :p
 
Last edited by a moderator:

SOC

"God is my Judge"
Veteran
Joined
Mar 22, 2012
Messages
555
Reaction score
478
First Language
English
Primarily Uses
RMMV
Thanks!

And just in case anyone doesn't know how to save and use the plugin, copy and paste his script into a notepad file, then go to save as, change file type to all types, and add .js at the end of the filename you give it, like SilvSkipTitle.js
 

Dinamic Creates

Project Stealth | Project Dungeon Trios
Veteran
Joined
Nov 27, 2014
Messages
69
Reaction score
24
First Language
Spanish
Primarily Uses
RMMV
I love the savefile update 
 

Kuro Neko

Veteran
Veteran
Joined
Sep 26, 2013
Messages
173
Reaction score
15
First Language
English
Primarily Uses
Is there anyway, for example, if no save data -> skip title, start at position x,y of map 1, if there's any save data, skip title, start at position x,y of map 2?


Edit: Nevermind. I found a way to do so.
 
Last edited by a moderator:

Tonedawg181

Tonedawg Gaming
Veteran
Joined
Oct 21, 2016
Messages
65
Reaction score
20
First Language
English
Primarily Uses
RMMV
uhhh, ive never seen a plugin do this... the code is saved in a .js and when u view it in notepad it all looks correct.... but for some reason when i put it into my game the entire plugin comes up blank, like i can select it in the list but the whole thing appears blank and it doesn't function. I'd really like this feature to save time on testing stuff. Ive used this copy and paste method several times to use plugins, and tired re-making it a few times so i dont think it's an error in that step. But i have never seen one once imported just completely show up blank in rpgmv... If anyone has an idea on how to fix it let me know.

EDIT: turns out all I had to do with get rid of the space in the file name for the .js and it worked, great plugin I use it a lot while testing. :D
 
Last edited:

BreakerZero

Veteran
Veteran
Joined
Jul 8, 2018
Messages
707
Reaction score
282
First Language
English (USA)
Primarily Uses
RMMV
Not that I like the necropost idea or course seeing what I've had in the past, but even nearly one year later I can't help but think of another use for this plugin.

I noticed in some recent games (Breath of the Wild from the Zelda series as one example) where instead of getting sent to the main menu on first run, it drops you straight into the action to master the basics (possibly even with an opening cutscene to set things up in terms of backstory). Only after you make any significant progress to have a save file in this configuration will the game switch to menu load for all future sessions for as long as you have an established progression record, and this plugin does its fair share to allow for you to add that mechanic to your own game.
 

SilverDash

Veteran
Veteran
Joined
Oct 11, 2015
Messages
405
Reaction score
158
First Language
Dutch
Primarily Uses
RMMV
Updated for the latest version of RMMV.
Also now you can select your starting scene in the parameter-list (or type your own).
Fixed starting-lag (that could apparently occur on certain hardware?)
 

FleshToDust

Eventer, Disliker of Plugins
Veteran
Joined
Jul 10, 2017
Messages
567
Reaction score
2,678
First Language
English
Primarily Uses
RMMV
Great work on the plugin and good to see you're still around.
Your fullscreen plugin doesn't seem to work when combined with this though.
 
Last edited:

SilverDash

Veteran
Veteran
Joined
Oct 11, 2015
Messages
405
Reaction score
158
First Language
Dutch
Primarily Uses
RMMV
Your fullscreen plugin doesn't seem to work when combined with this though.
Indeed it appears that my Fullscreen script had a dumb bug with the parameter caused after upgrading the script (because strings are now automatically converted to booleans):

Code:
SE.Params.Fullscreen.FullScreenIfTitleSkipped === 'true'
// Should have been:
SE.Params.Fullscreen.FullScreenIfTitleSkipped === true
I just fixed it in my new MasterDemo or copy-paste it from below:
Code:
"use strict";
/*:
╔════════════════╗
║ Plugin Manager ║
╚════════════════╝
 * @plugindesc v1.11 - Starts the game in fullscreen mode.
 * @author Squirting Elephant
  ╔════════════╗
  ║ Parameters ║
  ╚════════════╝
 * @param FullScreenIfTitleSkipped
 * @text Activate Fullscreen if Title Skipped?
 * @desc Also go into fullscreen-mode if the title-screen was skipped?
 * @type boolean
 * @on Yes
 * @off No
 * @default true
 *
   ╔══════╗
   ║ Help ║
   ╚══════╝
 * @help
 * License: Public Domain or CC0.
 *
 * Optional Plugin(s):
 * SE_SkipTitle (is required if you don't want to go full-screen when you skip the titlescreen).
 *
 * Alias created for:
 * * SceneManager.run()
 *
 * Version History:
 * v1.11 (04 Oktober 2019)
 * - Fixed a bug with the parameter.
 *
 * v1.10 (28 September 2019)
 * - Updated this plugin for the latest version of RMMV and SE_Keys.
 * - Changed the names from Silv --> SE.
*/

/*╔═══════════════════════╗
  ║ Plugin Initialization ║
  ╚═══════════════════════╝*/
var Imported = Imported || {};
Imported.SE_Fullscreen = { name: 'SE_Fullscreen', version: 1.11, author: 'Squirting Elephant', date:'2019-09-28'};
var SE = SE || {};

/*╔════════════╗
  ║ Parameters ║
  ╚════════════╝*/
SE.Params = SE.Params || {};
SE.Params.Fullscreen = PluginManager.parameters('SE_Fullscreen');

(function()
{
  function parseParameters(string)
  {
    try
    {
      return JSON.parse(string, (key, value) => {
        try { return parseParameters(value); }
        catch (e) { return value; }
        });
    } catch (e) { return string; }
  };

  for (var key in SE.Params.Fullscreen) { SE.Params.Fullscreen[key] = SE.Params.Fullscreen[key].replace('\r', ''); } // Because: fix stupid RMMV bug (https://forums.rpgmakerweb.com/index.php?threads/parameter-string-does-not-equal-string.113697/)
  SE.Params.Fullscreen = parseParameters(JSON.stringify(SE.Params.Fullscreen));


  /*╔═════════════════════════╗
    ║ Alias: SceneManager.run ║
    ╚═════════════════════════╝*/
    var SEA_SceneManager_Run = SceneManager.run;
    SceneManager.run = function(sceneClass)
    {
        SEA_SceneManager_Run.apply(this, arguments);
        if ((Imported.SE_SkipTitle == null) || ((SE.Params.Fullscreen.FullScreenIfTitleSkipped === true) || (SE.Params.SkipTitle.StartScene === 'Scene_Title')))
        {
            Graphics._switchFullScreen();
        }
    };

})();

/*╔═════════════╗
  ║ End of File ║
  ╚═════════════╝*/
 

Dhylec

Warper
Member
Joined
Sep 27, 2019
Messages
2
Reaction score
1
First Language
English
Primarily Uses
RMMV
I just added it. Set the "Skip If Savefile Present" parameter to false to apply it. Now let it 'be a small but insanely useful add-on!' :p
Can't find this parameter not even in your master demo.
 

SilverDash

Veteran
Veteran
Joined
Oct 11, 2015
Messages
405
Reaction score
158
First Language
Dutch
Primarily Uses
RMMV
Can't find this parameter not even in your master demo.
Sorry, I missed this when upgrading the script. Pastebin is down right now so I'll post it here and update it in the new Master Demo.
Code:
"use strict";
/*:
╔════════════════╗
║ Plugin Manager ║
╚════════════════╝
 * @plugindesc v1.10 - Skips the titlescreen and optionally can change the starting scene to whatever you want.
 * @author Squirting Elephant
   ╔════════════╗
   ║ Parameters ║
   ╚════════════╝
 * @param SkipIfSavefile
 * @text Skip titlescreen if savefile present?
 * @desc Skip the titlescreen if one or more savefiles are present?
 * @type boolean
 * @on Skip
 * @off Don't skip
 * @default true
 *
 * @param StartScene
 * @text Starting Scene
 * @desc The name of the scene to load when the game starts. Note: does nothing if the titlescreen isn't skipped.
 * @type select
 * @option Scene_Battle
 * @option Scene_Boot
 * @option Scene_Debug
 * @option Scene_Equip
 * @option Scene_File
 * @option Scene_GameEnd
 * @option Scene_Gameover
 * @option Scene_Item
 * @option Scene_Load
 * @option Scene_Map
 * @option Scene_Menu
 * @option Scene_Name
 * @option Scene_Options
 * @option Scene_Save
 * @option Scene_Shop
 * @option Scene_Skill
 * @option Scene_Status
 * @option Scene_Title
 * @default Scene_Map
 *
   ╔══════╗
   ║ Help ║
   ╚══════╝
 * @help
 * License: Public Domain or CC0.
 *
 * Required Plugin(s):
 * * <None>
 *
 * Overrides & Aliases:
 * * Scene_Boot.prototype.start()
 */

/*╔═══════════════════════╗
  ║ Plugin Initialization ║
  ╚═══════════════════════╝*/
var Imported = Imported || {};
Imported.SE_SkipTitle = { name: 'SE_SkipTitle', version: 1.10, author: 'Squirting Elephant', date:'2019-11-23'};
var SE = SE || {};
SE.Alias = SE.Alias || {};
SE.Params = SE.Params || {};
SE.Params.SkipTitle = PluginManager.parameters('SE_SkipTitle');
SE.Params.SkipTitle.StartScene = SE.Params.SkipTitle.StartScene.replace('\r', ''); // Because: fix stupid RMMV bug (https://forums.rpgmakerweb.com/index.php?threads/parameter-string-does-not-equal-string.113697/)
SE.Params.SkipTitle.SkipIfSavefile = (SE.Params.SkipTitle.SkipIfSavefile === 'true');

(function()
{

  function bShowTitleScreen()
  {
    return (DataManager.isAnySavefileExists() && (SE.Params.SkipTitle.SkipIfSavefile === false));
  }

  /*╔══════════════════════════════════════╗
    ║ Override: Scene_Boot.prototype.start ║
    ╚══════════════════════════════════════╝*/
  SE.Alias.SkipTitleScreen_Scene_Boot_prototype_start = Scene_Boot.prototype.start;
  Scene_Boot.prototype.start = function()
  {
    if (bShowTitleScreen() === true)
    {
      // Load regular titlescreen.
      SE.Alias.SkipTitleScreen_Scene_Boot_prototype_start.apply(this, arguments);
    }
    else // Skip titlescreen.
    {
      Scene_Base.prototype.start.call(this);

      SoundManager.preloadImportantSounds();
      if (DataManager.isBattleTest()) {
          DataManager.setupBattleTest();
          SceneManager.goto(Scene_Battle);
      } else if (DataManager.isEventTest()) {
          DataManager.setupEventTest();
          SceneManager.goto(Scene_Map);
      } else {
          this.checkPlayerLocation();
          DataManager.setupNewGame();
          SceneManager.goto(eval(SE.Params.SkipTitle.StartScene)); // Note: This is the only overriden line.
          Window_TitleCommand.initCommandPosition();
      }

      this.updateDocumentTitle();
    }
  };

})();

/*╔═════════════╗
  ║ End of File ║
  ╚═════════════╝*/
Note that if you upgrade from v1.00 --> v1.10 that you need to delete and and re-add it in your plugin manager because the parameters changed!
 

Renchu

Warper
Member
Joined
Feb 18, 2020
Messages
3
Reaction score
0
First Language
Portuguese
Primarily Uses
RMMV
Hello! Is it possible to permanently disable the original title screen? Your plugin does skip the title, but I noticed it's still possible to access it through Main Menu.
 

Users Who Are Viewing This Thread (Users: 0, Guests: 2)

Latest Threads

Latest Posts

Latest Profile Posts

Here's a sample of some pixel edits I made.

Maybe for use as sidewalks.

If you want to use them, Credit me and Enterbrain for this. Only for use with rpgmaker vxace
If there are any mods or admins online, could you please see about the re-translation pages for RPG Maker MV? They are all down :rsad:
Werewolf cons: you lose control of yourself once a month and could accidentally kill your friends. Vampire cons: no garlic bread. The choice is simple. Werewolf for sure.
2 huge market drops in 2 days. So glad I sold my non-dividend stocks about 2 weeks ago. And if the dividend ones drop heavily, hey more cheap stocks for me!
My tutorial is live! It covers using Yanfly's weapon unleash to replace the basic attack skill with a more dynamic version depending on which weapon type the actor has equipped. It also includes how to import a custom function used to generate a random number within supplied minimum and maximum values, used in the replaced skills, to give weapons a set damage range.

Forum statistics

Threads
94,523
Messages
921,591
Members
124,376
Latest member
Darkyyy
Top