Step 1 ::
Grab the class and any methods you need to modify. In this case, that would be Game_Actor and the method 'param' - which determines the param value. so we write this code...
#===============================================================================class Game_Actor#=============================================================================== #----------------------------------------------------------------------------- # List Of Aliased Methods #----------------------------------------------------------------------------- alias :dekita_param_mod_tutorial

aram #----------------------------------------------------------------------------- # Method to determine value of actors params #----------------------------------------------------------------------------- def param(param_id) dekita_param_mod_tutorial(param_id) end endAll this code does it alias the current 'param' method and then calls the aliased method whenever param is called.
This is the most basic way of ensuring that the old method is not fully overwritten.
Step 2 ::
Now, we can add a way for the param value to be modified by a variable...
#===============================================================================class Game_Actor#=============================================================================== #----------------------------------------------------------------------------- # Determines Variable used for Param Mod #----------------------------------------------------------------------------- VARIABLE_ID = 1 #----------------------------------------------------------------------------- # List Of Aliased Methods #----------------------------------------------------------------------------- alias :dekita_param_mod_tutorial

aram #----------------------------------------------------------------------------- # #----------------------------------------------------------------------------- def param(param_id) (dekita_param_mod_tutorial(param_id) * $game_variables[VARIABLE_ID]).to_i endendSee what I did there?
Because I know that the old method for 'param' will return an integer value all I have to do is multiply that value by the value stored in my variable. Lets say in this case the variable is equal to '1.5', this means all stats will be multiplied by 1.5.
Then, because we dont want float numbers for our params (numbers with a decimal point such as 1.234), instead we want nice round integers (such as 1,2,3,4..) I enclosed the formula (old method * variable value) within brackets '( )' and then added an additional method onto the end. '.to_i' will ensure that the code is going to return an integer value.
And thats it done
Obviously, you can start getting 'more creative' and maybe create a class or module to determine how the param is going to be modified.
Hell, you could end up doing what I did and create about 30 scripts that modify the 'param' method to determine the value
