Status
Not open for further replies.

Cuddlebuns

Veteran
Veteran
Joined
May 5, 2019
Messages
35
Reaction score
4
First Language
English
Primarily Uses
RMVXA
So this is the idea I have.
Each character is given a number of points that can be allocated to any of their parameters (ATK, DEF, MAT, MDF, AGI, and/or LUK) to increase that parameter by 1 per allocated point. Allocated points can be reset from the menu to allow the player to reallocate the points of any character.

I know there are already stat point distribution scripts available, but none of the ones I looked at had a feature to reset the points after they are allocated. If anyone could point me to a script that does this, that would be much appreciated!
 

Heirukichi

Veteran
Veteran
Joined
Sep 24, 2015
Messages
1,418
Reaction score
591
First Language
Italian
Primarily Uses
RMVXA
I know there are already stat point distribution scripts available, but none of the ones I looked at had a feature to reset the points after they are allocated. If anyone could point me to a script that does this, that would be much appreciated!
In my opinion you might have more luck by picking one of those scripts and asking to add the reset feature rather than asking for a complete script. Writing the full script takes way more time than just adding a reset feature. Of course, it also depends on how the script handles those parameters, but if it just does it the VX Ace way, it should not be that hard.
 

CaRa_CrAzY

Undefined Custom Title
Veteran
Joined
Jan 19, 2019
Messages
65
Reaction score
27
First Language
Portuguese
Primarily Uses
Other
I am working on a skill/stat allocation script for VXA since January, and I think its pretty trivial to add a reset feature to a system like this.
I am not very knowledgeable about the already developed scripts out there, but I am surprised they do not offer this feature.
If that is really the case I would be interested in making a patch for a preexisting script.
 

Cuddlebuns

Veteran
Veteran
Joined
May 5, 2019
Messages
35
Reaction score
4
First Language
English
Primarily Uses
RMVXA
If that is really the case I would be interested in making a patch for a preexisting script.
That would be awesome if you could do that! I have a script by Mr. Trivel which seems to work. My only other issue with it is that it overrides the status window, which needs to be left mostly untouched by other scripts. So the only two features to add would be the ability to reset the points and to have it as a new menu option rather than replacing anything else.

Code:
# )----------------------------------------------------------------------------(
# )--     AUTHOR:     Mr Trivel                                              --(
# )--     NAME:       Stat Points                                            --(
# )--     CREATED:    2014-06-17                                             --(
# )--     VERSION:    1.0                                                    --(
# )----------------------------------------------------------------------------(
# )--                          DESCRIPTION                                   --(
# )--  Adds Stat Points to actors which are gained on level up. And can be   --(
# )--  spent in Status screen.                                               --(
# )----------------------------------------------------------------------------(
# )--                          INSTRUCTIONS                                  --(
# )--               Customize below to your needs.                           --(
# )----------------------------------------------------------------------------(
# )--                          LICENSE INFO                                  --(
# )--    http://mrtrivelvx.wordpress.com/terms-of-use/                       --(
# )----------------------------------------------------------------------------(

module MrTS
  module Stat_Points
    # )----------------------------------------------------(
    # )--  Stat points each actor gets at the beginning  --(
    # )----------------------------------------------------(
    Default = 6
 
    # )----------------------------------------------------(
    # )--  How many stat points actor gets on level up.  --(
    # )----------------------------------------------------(
    PointsOnLevelUp = 6
 
    # )---------------------------------------------------(
    # )--  By how much your stats grow per stat point.  --(
    # )---------------------------------------------------(
    StatsPerIncrease = 1
  end
end


# )----------------------------------------------------------------------------(
# )--  Class: Scene_Status                                                   --(
# )----------------------------------------------------------------------------(
class Scene_Status < Scene_MenuBase
  # )--------------------------------------------------------------------------(
  # )--  Overwrite Method: start                                             --(
  # )--------------------------------------------------------------------------(
  def start
    super
    @status_window = Window_Status.new(@actor)
    @status_window.set_handler(:cancel,   method(:return_scene))
    @status_window.set_handler(:pagedown, method(:next_actor))
    @status_window.set_handler(:pageup,   method(:prev_actor))
    create_stat_command_window
  end
  # )--------------------------------------------------------------------------(
  # )--  New Method: create_stat_command_window                              --(
  # )--------------------------------------------------------------------------(
  def create_stat_command_window
    @command_window = MrTS_Stat_Command.new(22, (24*7)+12)
    @command_window.set_handler(:ok, method(:increase_stat))
  end
  # )--------------------------------------------------------------------------(
  # )--  New Method: increase_stat                                           --(
  # )--------------------------------------------------------------------------(
  def increase_stat
    @actor.spend_stat_point(@command_window.index)
    @status_window.refresh
    @command_window.activate
  end
end


# )----------------------------------------------------------------------------(
# )--  Class: MrTS_Stat_Command                                              --(
# )----------------------------------------------------------------------------(
class MrTS_Stat_Command < Window_Command
  # )--------------------------------------------------------------------------(
  # )--  Method: initialize                                                  --(
  # )--------------------------------------------------------------------------(
  def initialize(x, y)
    super(x,y)
    self.opacity = 0
  end
  # )--------------------------------------------------------------------------(
  # )--  Method: window_width                                                --(
  # )--------------------------------------------------------------------------(
  def window_width
    return 196
  end
  # )--------------------------------------------------------------------------(
  # )--  Method: make_command_list                                           --(
  # )--------------------------------------------------------------------------(
  def make_command_list
    6.times do
      add_command("", :ok)
    end
  end
  # )--------------------------------------------------------------------------(
  # )--  Method: process_ok                                                  --(
  # )--------------------------------------------------------------------------(
  def process_ok
    if current_item_enabled?
      Input.update
      deactivate
      call_ok_handler
    end
  end
end

# )----------------------------------------------------------------------------(
# )--  Class: Window_Status                                                  --(
# )----------------------------------------------------------------------------(
class Window_Status < Window_Selectable
  # )--------------------------------------------------------------------------(
  # )--  Overwrite Method: draw_block3                                       --(
  # )--------------------------------------------------------------------------(
  def draw_block3(y)
    draw_statpoints(32, y-line_height/2)
    draw_parameters(32, y+line_height/2)
    draw_equipments(288, y)
  end
 
  # )--------------------------------------------------------------------------(
  # )--  New Method: draw_statpoints                                         --(
  # )--------------------------------------------------------------------------(
  def draw_statpoints(x, y)
    change_color(system_color)
    draw_text(x, y, 140, line_height, "Stat Points: ")
    change_color(@actor.stat_point > 0 ? power_up_color : normal_color)
    draw_text(x+120, y, 36, line_height, @actor.stat_point.to_s,2)
  end
end


# )----------------------------------------------------------------------------(
# )--  Class: Game_Actor                                                     --(
# )----------------------------------------------------------------------------(
class Game_Actor < Game_Battler
 
  # )--------------------------------------------------------------------------(
  # )--  Public Instance Variables                                           --(
  # )--------------------------------------------------------------------------(
  attr_reader   :stat_point
  attr_reader   :stat_points_spent

  # )--------------------------------------------------------------------------(
  # )--  Alias to: setup                                                     --(
  # )--------------------------------------------------------------------------(
  alias mrts_sp_setup setup
  def setup(actor_id)
    mrts_sp_setup(actor_id)
    initialize_stat_points
  end
 
 
  # )--------------------------------------------------------------------------(
  # )--  New Method: initialize_stat_points                                  --(
  # )--------------------------------------------------------------------------(
  def initialize_stat_points
    @stat_point = MrTS::Stat_Points::Default
    @stat_points_spent.size.times do |i|
      add_param(i+2, -@stat_points_spent[i])
    end if @stat_points_spent
    @stat_points_spent = [0,0,0,0,0,0]
  end
 
  # )--------------------------------------------------------------------------(
  # )--  New Method: spend_stat_point                                        --(
  # )--------------------------------------------------------------------------(
  def spend_stat_point(stat_id)
    unless @stat_point > 0 && param(stat_id+2) < param_max(stat_id+2)
      Sound.play_buzzer
      return
    end
    inc_by = MrTS::Stat_Points::StatsPerIncrease
    add_param(stat_id+2, inc_by)
    @stat_point -= 1
    @stat_points_spent[stat_id] += inc_by
    Sound.play_ok
  end
 
  # )--------------------------------------------------------------------------(
  # )--  Alias To: change_class                                              --(
  # )--------------------------------------------------------------------------(
  alias mrts_sp_change_class change_class
  def change_class(class_id, keep_exp = false)
    initialize_stat_points unless keep_exp
    mrts_sp_change_class(class_id, keep_exp = false)
    @stat_point = MrTS::Stat_Points::Default + ( (level-1) * MrTS::Stat_Points::PointsOnLevelUp)
  end
 
  # )--------------------------------------------------------------------------(
  # )--  Alias to: level_up                                                  --(
  # )--------------------------------------------------------------------------(
  alias mrts_sp_level_up level_up
  def level_up
    mrts_sp_level_up
    @stat_point += MrTS::Stat_Points::PointsOnLevelUp
  end
end

I'm not sure how complicated it would be to make the required changes to this since my scripting knowledge is only rudimentary. Hopefully it's not too difficult.
 
Last edited:

Heirukichi

Veteran
Veteran
Joined
Sep 24, 2015
Messages
1,418
Reaction score
591
First Language
Italian
Primarily Uses
RMVXA
If you want to reset them just create an item that targets the user (like a book to reset stat points) and use this in the formula:
Code:
stats = b.instance_variable_get(:@stat_points_spent); stats.each_index { |s| b.add_param(s + 2, -stats[s]) }; stats = [0,0,0,0,0,0]
There is no need to edit the script to achieve something like that. It is written from mobile so you have to check for typos and report them to me. I already checked the code, but I cannot be 100% sure when looking at it from mobile.

Considering how small the formula box is in VX Ace there is a chance that something like this might not fit. If that is the case, just copy/paste this in your scripts (below the point allocation script).
Code:
class Game_Actor < Game_Battler
  def hrk_reset_stat_pointsì
    @stat_points_spent.each.with_index do |s, i|
      add_param(i + 2, -s)
      @stat_point += s
      @stat_points_spent[i] = 0
    end
  end
end
Then you can simply use this formula:
Code:
b.hrk_reset_stat_points
or you could use an event to do that, using:
Code:
$game_actors[actor_id].hrk_reset_stat_points

EDIT 2
My only other issue with it is that it overrides the status window
I completely missed this part. This is something that requires a lot more details than those you provided. Unfortunately, the default window has no way to allow you to allocate those points, this is also the reason why the scripter changed it. Therefore, to let the script work and have that window the same as before, you have to provide us all the necessary information to understand how you want your windows to act, how they are supposed to look like and how you want to allocate those points (because if you replace the default window written in the script, you have to allocate points somewhere).
 
Last edited:

CaRa_CrAzY

Undefined Custom Title
Veteran
Joined
Jan 19, 2019
Messages
65
Reaction score
27
First Language
Portuguese
Primarily Uses
Other
My current script does these two things you mentioned, but currently it doesn't work for stats, just skills.
I will take a look and see what I can do with the script you provided.

--Edit--

I tested @Heirukichi 's answer, and I don't know if it was intentional or not, but the method you wrote is not recovering the
allocated points back to the stat_point pool. It just resets the stats to their original values without refunding them.

I wrote two methods here. One for refunding every stat at once, and another one that will refund just a single stat.

Code:
class Game_Actor < Game_Battler
  def reset_spent_points
    @stat_point += @stat_points_spent
      .each_with_index
      .reduce(0) do |total, (points, stat_id)|
        add_param(stat_id+2, -points)
        total += points
      end
    @stat_points_spent = [0,0,0,0,0,0]
  end
  def reset_param(stat_id)
    spent_points = @stat_points_spent[stat_id]
    add_param(stat_id+2, -spent_points)
    @stat_point += spent_points
    @stat_points_spent[stat_id] = 0
  end
end

Regarding the issue about the Status Menu being replaced, @Heirukichi is right. You need to provide us some info about how you wish the menu to look like.

What I can do for you right now is create a new entry in the main menu that leads to the old status window, preserving both windows the way they are. I do not see much difference between the old window and the new one. I think it will not add much a gain to the player at all, besides it will just help to pollute the menu with a new option.

Anyways, I will try to separate the windows regardless.
 
Last edited:

Cuddlebuns

Veteran
Veteran
Joined
May 5, 2019
Messages
35
Reaction score
4
First Language
English
Primarily Uses
RMVXA
Therefore, to let the script work and have that window the same as before, you have to provide us all the necessary information to understand how you want your windows to act, how they are supposed to look like and how you want to allocate those points (because if you replace the default window written in the script, you have to allocate points somewhere).
Screenshot (58).png

Besides applying my own simple window skin and using a script that displays custom parameters (which does not seem to conflict with Mr. Trivel's script), there are no changes to how the status window operates. My default windows behave normally as well.

Edit: That "QUOTE" at the end doesn't seem to be deletable.[/QUOTE]
 
Last edited:

CaRa_CrAzY

Undefined Custom Title
Veteran
Joined
Jan 19, 2019
Messages
65
Reaction score
27
First Language
Portuguese
Primarily Uses
Other
Now I think understand why you want two different options. Is the point buy window replacing the custom parameter window?
 

Cuddlebuns

Veteran
Veteran
Joined
May 5, 2019
Messages
35
Reaction score
4
First Language
English
Primarily Uses
RMVXA
Is the point buy window replacing the custom parameter window?
Yes, and that is one of the issues. The custom parameters must remain visible in the status window.
 

Heirukichi

Veteran
Veteran
Joined
Sep 24, 2015
Messages
1,418
Reaction score
591
First Language
Italian
Primarily Uses
RMVXA
I don't know if it was intentional or not, but the method you wrote is not recovering the
allocated points back to the stat_point pool
It was not. I changed the code in the previous message; thank you for pointing it out. By the way, the reduce method there is redundant; you already have direct access to the element of the array you need. It is much cleaner to simply add its value to @stat_point. Adding more methods only makes the code harder to read and does not make it more efficient at all - it actually does the opposite. That said, having a method to reset a single parameter looks useful (that one is well written) so @Cuddlebuns should copy that into the script as well.

@Cuddlebuns if you are using custom parameters I can see why you want the window to act this way. However, how do you plan on increasing those parameters if not using the overwritten window? What I mean is: how you want to access a window that allows you to modify those parameters? Do you want to still be able to do it from the normal window, but without modifying the parameters shown? Do you want to be able to allocate points on your custom parameters?
 

Cuddlebuns

Veteran
Veteran
Joined
May 5, 2019
Messages
35
Reaction score
4
First Language
English
Primarily Uses
RMVXA
What I mean is: how you want to access a window that allows you to modify those parameters? Do you want to still be able to do it from the normal window, but without modifying the parameters shown?
Actually, if there is a method of using the default window but still keeping the custom parameters visible, that would work too.

Do you want to be able to allocate points on your custom parameters?
No, the custom parameters are separate from the normal parameters. I do not plan for them to be allocatable.
 

Roninator2

Gamer
Veteran
Joined
May 22, 2016
Messages
2,576
Reaction score
544
First Language
English
Primarily Uses
RMVXA

CaRa_CrAzY

Undefined Custom Title
Veteran
Joined
Jan 19, 2019
Messages
65
Reaction score
27
First Language
Portuguese
Primarily Uses
Other
By the way, the reduce method there is redundant; you already have direct access to the element of the array you need. It is much cleaner to simply add its value to @stat_point. Adding more methods only makes the code harder to read and does not make it more efficient at all - it actually does the opposite. That said, having a method to reset a single parameter looks useful (that one is well written) so @Cuddlebuns should copy that into the script as well.
You are right. I have this bad habit of over complicating stuff :stickytongue:

So, by following @Heirukichi 's suggestion I rewrote the method for it to use the single reset inside it.
And then, I tried to split those two scenes, and here is the result. I hope it works.

Just a little explanation here
I had edit the script itself because it was directly overwriting the Scene_Status.
I can't think in a way to make it stop working this way by creating a patch.
Please, someone correct me if I am wrong here.

Code:
# )----------------------------------------------------------------------------(
# )--     AUTHOR:     Mr Trivel                                              --(
# )--     NAME:       Stat Points                                            --(
# )--     CREATED:    2014-06-17                                             --(
# )--     VERSION:    1.0                                                    --(
# )----------------------------------------------------------------------------(
# )--                          DESCRIPTION                                   --(
# )--  Adds Stat Points to actors which are gained on level up. And can be   --(
# )--  spent in Status screen.                                               --(
# )----------------------------------------------------------------------------(
# )--                          INSTRUCTIONS                                  --(
# )--               Customize below to your needs.                           --(
# )----------------------------------------------------------------------------(
# )--                          LICENSE INFO                                  --(
# )--    http://mrtrivelvx.wordpress.com/terms-of-use/                       --(
# )----------------------------------------------------------------------------(

module MrTS
  module Stat_Points
    # )----------------------------------------------------(
    # )--  Stat points each actor gets at the beginning  --(
    # )----------------------------------------------------(
    Default = 6
 
    # )----------------------------------------------------(
    # )--  How many stat points actor gets on level up.  --(
    # )----------------------------------------------------(
    PointsOnLevelUp = 6
 
    # )---------------------------------------------------(
    # )--  By how much your stats grow per stat point.  --(
    # )---------------------------------------------------(
    StatsPerIncrease = 1
  
    # )---------------------------------------------------(
    # )--  Main Menu Entry's display text.              --(
    # )---------------------------------------------------(
    CMD_NAME = "Point Buy"
  end
 
  # )--------------------------------------------------------------------------(
  # )--  Class: Window_MenuCommand                                           --(
  # )--------------------------------------------------------------------------(
  class ::Window_MenuCommand
    # )------------------------------------------------------------------------(
    # )-- Add Point Buy command to the Main Commands list                    --(
    # )------------------------------------------------------------------------(
    alias add_main_commands_caracrazy_1245h add_main_commands
    def add_main_commands(*args)
      result = add_main_commands_caracrazy_1245h(*args)
      add_command(Stat_Points::CMD_NAME, :point_buy, true)
      result
    end
  end
 
  # )--------------------------------------------------------------------------(
  # )--  Class: Scene_Menu                                                   --(
  # )--------------------------------------------------------------------------(
  class ::Scene_Menu
    # )------------------------------------------------------------------------(
    # )-- Alias to: Create Command Window                                    --(
    # )------------------------------------------------------------------------(
    alias create_command_window_caracrazy_43tgd create_command_window
    def create_command_window(*args)
      result = create_command_window_caracrazy_43tgd(*args)
      @command_window.set_handler(:point_buy, method(:command_personal))
      result
    end
    # )------------------------------------------------------------------------(
    # )-- Alias to:[OK] Personal Command                                     --(
    # )------------------------------------------------------------------------(
    alias on_personal_ok_caracrazy_43fg3 on_personal_ok
    def on_personal_ok(*args)
      result = on_personal_ok_caracrazy_43fg3(*args)
      if @command_window.current_symbol == :point_buy
        SceneManager.call(MrTs_Scene_Stat_Buy)
      end
      result
    end
  end
end

# )----------------------------------------------------------------------------(
# )--  Class: Scene_Status                                                   --(
# )----------------------------------------------------------------------------(
class MrTs_Scene_Stat_Buy < Scene_MenuBase
  # )--------------------------------------------------------------------------(
  # )--  Overwrite Method: start                                             --(
  # )--------------------------------------------------------------------------(
  def start
    super
    @status_window = MrTs_Window_Status.new(@actor)
    @status_window.set_handler(:cancel,   method(:return_scene))
    @status_window.set_handler(:pagedown, method(:next_actor))
    @status_window.set_handler(:pageup,   method(:prev_actor))
    create_stat_command_window
  end
  # )--------------------------------------------------------------------------(
  # )--  New Method: create_stat_command_window                              --(
  # )--------------------------------------------------------------------------(
  def create_stat_command_window
    @command_window = MrTS_Stat_Command.new(22, (24*7)+12)
    @command_window.set_handler(:ok, method(:increase_stat))
  end
  # )--------------------------------------------------------------------------(
  # )--  New Method: increase_stat                                           --(
  # )--------------------------------------------------------------------------(
  def increase_stat
    @actor.spend_stat_point(@command_window.index)
    @status_window.refresh
    @command_window.activate
  end
end


# )----------------------------------------------------------------------------(
# )--  Class: MrTS_Stat_Command                                              --(
# )----------------------------------------------------------------------------(
class MrTS_Stat_Command < Window_Command
  # )--------------------------------------------------------------------------(
  # )--  Method: initialize                                                  --(
  # )--------------------------------------------------------------------------(
  def initialize(x, y)
    super(x,y)
    self.opacity = 0
  end
  # )--------------------------------------------------------------------------(
  # )--  Method: window_width                                                --(
  # )--------------------------------------------------------------------------(
  def window_width
    return 196
  end
  # )--------------------------------------------------------------------------(
  # )--  Method: make_command_list                                           --(
  # )--------------------------------------------------------------------------(
  def make_command_list
    6.times do
      add_command("", :ok)
    end
  end
  # )--------------------------------------------------------------------------(
  # )--  Method: process_ok                                                  --(
  # )--------------------------------------------------------------------------(
  def process_ok
    if current_item_enabled?
      Input.update
      deactivate
      call_ok_handler
    end
  end
end

# )----------------------------------------------------------------------------(
# )--  Class: Window_Status                                                  --(
# )----------------------------------------------------------------------------(
class MrTs_Window_Status < Window_Status
  # )--------------------------------------------------------------------------(
  # )--  Overwrite Method: draw_block3                                       --(
  # )--------------------------------------------------------------------------(
  def draw_block3(y)
    draw_statpoints(32, y-line_height/2)
    draw_parameters(32, y+line_height/2)
    draw_equipments(288, y)
  end
 
  # )--------------------------------------------------------------------------(
  # )--  New Method: draw_statpoints                                         --(
  # )--------------------------------------------------------------------------(
  def draw_statpoints(x, y)
    change_color(system_color)
    draw_text(x, y, 140, line_height, "Stat Points: ")
    change_color(@actor.stat_point > 0 ? power_up_color : normal_color)
    draw_text(x+120, y, 36, line_height, @actor.stat_point.to_s,2)
  end
end


# )----------------------------------------------------------------------------(
# )--  Class: Game_Actor                                                     --(
# )----------------------------------------------------------------------------(
class Game_Actor < Game_Battler
 
  # )--------------------------------------------------------------------------(
  # )--  Public Instance Variables                                           --(
  # )--------------------------------------------------------------------------(
  attr_reader   :stat_point
  attr_reader   :stat_points_spent

  # )--------------------------------------------------------------------------(
  # )--  Alias to: setup                                                     --(
  # )--------------------------------------------------------------------------(
  alias mrts_sp_setup setup
  def setup(actor_id)
    mrts_sp_setup(actor_id)
    initialize_stat_points
  end
 
  # )--------------------------------------------------------------------------(
  # )--  New Method: initialize_stat_points                                  --(
  # )--------------------------------------------------------------------------(
  def initialize_stat_points
    @stat_point = MrTS::Stat_Points::Default
    @stat_points_spent.size.times do |i|
      add_param(i+2, -@stat_points_spent[i])
    end if @stat_points_spent
    @stat_points_spent = [0,0,0,0,0,0]
  end
 
  # )--------------------------------------------------------------------------(
  # )--  New Method: spend_stat_point                                        --(
  # )--------------------------------------------------------------------------(
  def spend_stat_point(stat_id)
    unless @stat_point > 0 && param(stat_id+2) < param_max(stat_id+2)
      Sound.play_buzzer
      return
    end
    inc_by = MrTS::Stat_Points::StatsPerIncrease
    add_param(stat_id+2, inc_by)
    @stat_point -= 1
    @stat_points_spent[stat_id] += inc_by
    Sound.play_ok
  end
 
  # )--------------------------------------------------------------------------(
  # )--  Alias To: change_class                                              --(
  # )--------------------------------------------------------------------------(
  alias mrts_sp_change_class change_class
  def change_class(class_id, keep_exp = false)
    initialize_stat_points unless keep_exp
    mrts_sp_change_class(class_id, keep_exp = false)
    @stat_point = MrTS::Stat_Points::Default + ( (level-1) * MrTS::Stat_Points::PointsOnLevelUp)
  end
 
  # )--------------------------------------------------------------------------(
  # )--  Alias to: level_up                                                  --(
  # )--------------------------------------------------------------------------(
  alias mrts_sp_level_up level_up
  def level_up
    mrts_sp_level_up
    @stat_point += MrTS::Stat_Points::PointsOnLevelUp
  end
 
  # )--------------------------------------------------------------------------(
  # )--  New Method: reset_spent_points                                      --(
  # )--------------------------------------------------------------------------(
  def reset_spent_points
    @stat_points_spent.size.times { |stat_id| reset_param(stat_id) }
  end
 
  # )--------------------------------------------------------------------------(
  # )--  New Method: reset_param                                             --(
  # )--------------------------------------------------------------------------(
  def reset_param(stat_id)
    spent_points = @stat_points_spent[stat_id]
    add_param(stat_id+2, -spent_points)
    @stat_point += spent_points
    @stat_points_spent[stat_id] = 0
  end
end

Let me know if something blows up goes wrong. :wink:
 

CaRa_CrAzY

Undefined Custom Title
Veteran
Joined
Jan 19, 2019
Messages
65
Reaction score
27
First Language
Portuguese
Primarily Uses
Other
Have you overwritted the old Mr Trivel's script with the new one I provided in my last post?
I tested it in a blank project and it worked. Peharps your other scripts are also generanting an issue.
Can you share them as well?
 

bgillisp

Global Moderators
Global Mod
Joined
Jul 2, 2014
Messages
13,451
Reaction score
14,182
First Language
English
Primarily Uses
RMVXA

This thread is being closed, due to being solved. If for some reason you would like this thread re-opened, please report this post and leave a message why. Thank you.

 
Status
Not open for further replies.

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

Latest Threads

Latest Profile Posts

Less than a week and I can move into my new apartment and out of this bad situation. I'm so excited! Then game making power will increase. :kaoluv:
Enter the password in letters. (English subtitles)
I really tried to pull off something for halloween, but I don't feel like going on. I feel like the plot I was building was too generic, and I couldn't connect to it as I do with other projects. On the bright side, I've been working on my cosmic-puzzle project, so far I think the core mechanics are working properly, so I'll be creating some large test maps to see how it works out.
People2_5 & SF_Monster1 added!

Ami
--- X Costume ---

M.Healer: I'm wearing M.Mage's Costume.
M.Mage: I'm wearing M.Healer's Costume.
M.Knight: Why not using the Scary Costume like me,The Scary Frankenstein?
M.Healer: Err…Because we have low of Budget.
M.Mage: Yeah,right.

Forum statistics

Threads
104,602
Messages
1,007,487
Members
136,084
Latest member
TikeTenGamesOffical
Top