Well, some of those variables aren't publically accessible. Also, you would need to perform a check to see if they are already defined. Otherwise, for games that were started with the IRP, you would be deleting the entire reserve party everytime you loaded the game. In other words, it would be something like this:
class Game_Party
def ma_irp_initvars
# Initialize Variables
@ma_reserve_actors = []
@ma_max_active_size = MAX_MEMBERS
@ma_min_active_size = PARTY_CHANGE_MIN_ACTIVE_SIZE
@ma_max_reserve_size = PARTY_CHANGE_MAX_RESERVE_SIZE
@ma_locked_actors = []
@ma_party_access = true
@ma_return_reserve_members = false
@ma_draw_party_space = false
end
end
class Scene_File < Scene_Base
alias omg_what_rdsvfl read_save_file
def read_save_file(*args)
omg_what_rdsvfl(*args)
$game_party.ma_irp_initvars if !$game_party.ma_reserve_actors
end
end
Of course, I don't recall the script so there may be other instance variables I am neglecting, but you got the basic idea. Additionally, there are other things that happen in the read_save_file method, and if those methods interact with any of the variables created for the IRP then it won't make a difference. I did not look into that for this script, but it could easily be a problem for other scripts and would require additional aliasing.
All of my scripts in Ace have support for old savefiles, so you can look at them to see how it's done too. But you got the idea.