Jump to content
Sign in to follow this  
AeroFunk80

AutoSave/Forced Save Script

Recommended Posts

I've done Google searches and have found several AutoSave scripts out there. However, I haven't found quite what I'm looking for.

 

In the scripts I've discovered, they simply AutoSave after certain criteria is met in the game: Player Transfer, Weapon/Armor/Item Found, after a Battle, etc. I'm not looking for an AutoSave feature to happen like this. I don't even know if you'd consider what I'm looking for as an "AutoSave."

 

What I'm looking for is the following:

 

  • When a player Saves, they aren't taken to the save screen, where they can choose to select which slot to save in: saving new, overwriting, etc.
  • When the player reaches a Save point in my game (specifically a bonfire) it asks, "Do you want to save?" I then want it to just automatically save to a preset Save slot and that's their permanent save spot for their entire playthrough.
  • I want the option to force a Save. This is what I want the most. My game has several quests that can result in multiple things happening (someone dies, the players actions result in a change to the story, etc) and I want these choices to be permanent. I want to keep the Player from stopping the game and just reloading their last Saved Game.

 

Example: Player hits a Bonfire at the beginning of a dungeon. This saves the game to their predetermined Save slot. It automatically overwrites their previous Save they did last. Halfway through the dungeon, the player is hit with a choice to rescue an NPC from a dungeon or leave him chained up. Once the choice is made, I want a way to force the save on the player. They have no choice after they make their decision. It just autosaves at that point and there's no going back. And no, the save window doesn't pop up asking the player to Save (with the option to cancel). It just autosaves because I script it into the Event.

 

Does something like this already exist? If so--I couldn't find it.

 

Thanks for any help I can get. Really appreciate it :-)

Share this post


Link to post
Share on other sites

You could try this:

 

 

 

class Scene_Map
  #--------------------------------------------------------------------------
  # * Execute Save
  #--------------------------------------------------------------------------
  def do_save(filename)
    file = File.open(filename, "wb")
    write_save_data(file)
    file.close
  end
  #--------------------------------------------------------------------------
  # * Write Save Data
  #     file : write file object (opened)
  #--------------------------------------------------------------------------
  def write_save_data(file)
    characters = []
    for actor in $game_party.members
      characters.push([actor.character_name, actor.character_index])
    end
    $game_system.save_count += 1
    $game_system.version_id = $data_system.version_id
    @last_bgm = RPG::BGM::last
    @last_bgs = RPG::BGS::last
    Marshal.dump(characters,           file)
    Marshal.dump(Graphics.frame_count, file)
    Marshal.dump(@last_bgm,            file)
    Marshal.dump(@last_bgs,            file)
    Marshal.dump($game_system,         file)
    Marshal.dump($game_message,        file)
    Marshal.dump($game_switches,       file)
    Marshal.dump($game_variables,      file)
    Marshal.dump($game_self_switches,  file)
    Marshal.dump($game_actors,         file)
    Marshal.dump($game_party,          file)
    Marshal.dump($game_troop,          file)
    Marshal.dump($game_map,            file)
    Marshal.dump($game_player,         file)
  end
end 

 

 

 

Your saving would then be done via script call;

  do_save(filename)

Where "filename" is a string.

Share this post


Link to post
Share on other sites

Wait... I saw that topic already...

 

(...)

 

Yes, there it is: duplicated thread.

Somebody could close one of the duplicated threads? =P

Edited by Rikifive

Share this post


Link to post
Share on other sites

Oh, lol. I don't frequent rm forums as much as I used to, so stands to reason I wouldn't have known about it.

Well, if anyone's interested, there's now an rggs2 solution xd.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
Top ArrowTop Arrow Highlighted