RMRK is retiring.
Registration is disabled. The site will remain online, but eventually become a read-only archive. More information.

RMRK.net has nothing to do with Blockchains, Cryptocurrency or NFTs. We have been around since the early 2000s, but there is a new group using the RMRK name that deals with those things. We have nothing to do with them.
NFTs are a scam, and if somebody is trying to persuade you to buy or invest in crypto/blockchain/NFT content, please turn them down and save your money. See this video for more information.
[XP] Tidloc's Item Weight 2.1

0 Members and 1 Guest are viewing this topic.

**
Rep:
Level 81
To teach is to learn with someone else.
Well, I've been working on a XP project for some time now and I've been collecting lots (I mean LOTS) of scripts around the internet and I must say that I found some really good ones here :) You guys are great...
Well, that's why I felt kinda guilty for leeching all the scripts here... So to not feel guilty anymore I thought I should at least contribute a little  ;D (Sorry for bad english, I'm not a native english speaker :) )

One of the scripts I liked the most here is Tidloc's Weighted Items with Mr Wiggles modification that added Item Storage system from Game Guy + item dropping to storage.

Original Script:
http://rmrk.net/index.php/topic,36737.0.html
Mr Wiggles Version:
http://rmrk.net/index.php/topic,37795.0.html

However after playing around with it for some time I found some bugs regarding item adding and dropping and Weight counting,
for example:

 :savepoint: On shops, after reaching Overweight, you could still buy items AND LOSE gold but the Item didn't appear.
 :savepoint: When reaching overweight and getting more items sometimes you keep increasing weight but not adding items... So if you drop EVERYTHING you would still have weight on you.
 :savepoint: The opposite happened as well, sometimes you could drop items and get them back without adding the weight and then dropping everything again, reaching NEGATIVE weight
 :savepoint: When you had overweight reached and grabbed back items from the Storage they simply disappeared.

Well, these were some of the issues I encountered. Basically they were all about the disappearance of Items or addition of weight without items. Since it's a great script I decided to try to fix it as best as I could (And implement some new stuff that I would need to use it on my project)

So that's basically it... I bring forth Tidloc's Item Weight 2.0 (Download link for 2.1 already released!!)
http://rapidshare.com/files/376697322/Weighted_Items_2.1.exe.html

CREDITS:
-> Tidloc, the creator of the Weight System
-> Albertfish, not sure but apparently helped Tidloc (It's on the original credits)
-> Mr Wiggles, the one who brought Item Storage with Drops and the event system
-> Game_Guy, the Designer of the Item Storage system

and now me, DaniAngione! (Or Daniel Angione)
Here's a list of the changes I made:

TIDLOC'S ITEM WEIGHT 2.0

 :savepoint: Removal and fixing of many bugs (some of them listed above)
 :savepoint: New UI for the weight system with colored text for maxweight and overweight, always visible on bottom of Item menu with
maximum weight displayer.
 :savepoint: Weight Count displayer for Shops and the Item Storage scene.
 :savepoint: Brought Tidloc's Decimal weight from his version of the script to the Mr Wiggles version and adapted it to the International Units System, using kilograms (that can be changed on the script)
 :savepoint: Adapted a running and pixel movement I had to it - Now you can't use C to run when above max weight.
 :savepoint: My favorite addition: Added an Item Filter! You can easily setup it on the beggining of the script by placing the items, armor and weapons IDs in the respective arrays. That way, the player WON'T be able to drop those items (like key items, quest items and else)

TIDLOC'S ITEM WEIGHT 2.1
 :savepoint: Fixed the bug where your item disappeared when unequipping it with overweight limit reached.
 :savepoint: Fixed the bug found by Mr Wiggles that made it possible to store Quest Items in the Item Storage bag and destroy them by changing maps.
 :savepoint: Added support for items found on the map (like chests, bodies, bookshelfs and any other kind of event)
 :savepoint: Completely translated to English (at least the parts important for this Tutorial)

I also have good and bad news :)

The good one is that I experimented with aliasing and managed to change the Scene_Equip without needing to change the standard XP script... :) Like I said I'm not really a good scripter and we're always learning I guess :)

The bad thing is that the only way I found to make the support for chests and else work is kinda crude but at least it works and chests won't cause bugs on weight anymore :)

IDEAS FOR NEXT RELEASES:
 :savepoint: Improve Chest Support
 :savepoint: Try aliasing with all the other parts I edited so the script works alone (without having to change standard XP scripts)

Any ideas, suggestions or opinions are welcome :)

Well I think that's it :)

Now a list of known issues:

 :savepoint: And the second thing (which is also an apologize) is that I'm not a good scripter... so... I have some trouble with script linking and aliasing and all that... So the script is working nice but it's not really clean (And I also had to slightly edit some of the standard XP scripts - more details about that on the Weight System Script)
 :savepoint: It's not really an issue, it's more like an apologize... Like I said, I'm not a native english speaker... So... My RPGmaker is in Portuguese (I'm from Brazil) and I didn't translate some stuff but you guys won't have problems with that, I mean... When starting the game, there are 3 options: everyone knows they're "Start", "Load" and "Quit"  ;D
The most important things (Like the weight system and item names) are in english.
(FIXED 2.1)
 :savepoint: You can store Items even if they're filtered and then delete them by changing map. (FIXED 2.1)
 :savepoint: Items disappear when taking off equipment with overweight. (FIXED 2.1)

Feel free to throw rocks at me or say anything you'd like to :)
And use and edit the script, of course :)
« Last Edit: April 17, 2010, 03:39:43 AM by DaniAngione »
That's all.


*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Most Mature Member2010 Favourite Staff Member
It looks like he made some modifications to it grafikal - he links to that thread in his original post :)

Anyway, looks like the additions are pretty cool. Nice work Dani, but I suggest you ask tidloc if he/she's OK with you making these mods.

**
Rep:
Level 81
To teach is to learn with someone else.
It looks like he made some modifications to it grafikal - he links to that thread in his original post :)

Anyway, looks like the additions are pretty cool. Nice work Dani, but I suggest you ask tidloc if he/she's OK with you making these mods.

No, grafikal was right :) I forgot the original script at first, I added it by editing the post :)

And Tidloc says on the script it's free to use the way I want but I sent him/her a PM just to make sure
That's all.

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Most Mature Member2010 Favourite Staff Member
Ah, then I apologize for my hasty remarks Lord grafikal :)

****
Rep:
Level 83
Cool, yea i found some problems with tidlocs weighed items script as well, i tried to bani-ad it but i only fixed actor[0] cause i only have one actor.  I'll be sure to check this version out.

[Edit] - I like your version, did things that i didn't even think of at the time that and saves me work latter. (cause i would've had to do something about it)  ;D
« Last Edit: April 16, 2010, 04:34:17 PM by Mr_Wiggles »
Spoiler for:
METALFRESH is a paint contractor that specializes in refinishing metal and vinyl siding. We paint metal buildings as well as siding on homes.

We also

    Refinish decks
    Do custom interior painting
    Strip wallpaper
    Refinish cedar siding
    Metal front doors and sidelights
    Metal garage and service doors
    Grained fiberglass doors

    If your structure is *RUSTED *FADED *CHALKING *IN NEED OF COLOR CHANGE, we can fix it with a guarentee!

northern Illinois and southern Wisconsin.

http://metalfreshcoatings.com


**
Rep:
Level 81
To teach is to learn with someone else.
[Edit] - I like your version, did things that i didn't even think of at the time that and saves me work latter. (cause i would've had to do something about it)  ;D

Thanks! :) But like I said I'm not a really good scripter so there's plenty of stuff to clean up and all...
I used your version because that Item Storage Drop idea was awesome :)

Personally the thing I like the most in my version is the Item Filter..

Oh, btw I just found a bug, something I forgot to test :(
When you've reached maximum weight and try to UNequip an item it just disappears :( I'll have to fix that :P
That's all.

****
Rep:
Level 83
also, i have some stuff tangled up in my game with this script. It is showing that i have 2 of every item, and when i try to replace just the chunks that you edited i get a syntax in The chest storage script.   ;9

so im trying to sort that out, also i should note that im using a new items menu, and shop system. But it will even show up for the chest window as well.

i push drop i drop 2 items, i only see 1 in the chest. since you made the edits perhaps you can help find where its doing this at.


[edit] never mind im editing my script in my game to be "up to date". Also you know that you can drop an item, then when in the item dropped bag you can put items that you couldn't drop in it, then when you leave the map its deleted.
« Last Edit: April 16, 2010, 05:57:57 PM by Mr_Wiggles »
Spoiler for:
METALFRESH is a paint contractor that specializes in refinishing metal and vinyl siding. We paint metal buildings as well as siding on homes.

We also

    Refinish decks
    Do custom interior painting
    Strip wallpaper
    Refinish cedar siding
    Metal front doors and sidelights
    Metal garage and service doors
    Grained fiberglass doors

    If your structure is *RUSTED *FADED *CHALKING *IN NEED OF COLOR CHANGE, we can fix it with a guarentee!

northern Illinois and southern Wisconsin.

http://metalfreshcoatings.com


**
Rep:
Level 81
To teach is to learn with someone else.
[edit] never mind im editing my script in my game to be "up to date". Also you know that you can drop an item, then when in the item dropped bag you can put items that you couldn't drop in it, then when you leave the map its deleted.

Omg! Sorry! And thanks for letting me know - Yeah, I forgot to put the Item Filter conditional on the Item_Storage system!  ::)

I'll fix that tonight (I'm not at home :( ) I also guess that if I upload it again I'll translate everything to english   ;D
But it's pretty easy to fix - just need to put a conditional checking the array before sending the item to the storage :P

That's the good part of publishing scripts, people find issues you wouldn't think of

I'll also update the main post with those issues until they're fixed!
Thanks for your feedback, Mr Wiggles!
« Last Edit: April 16, 2010, 06:41:28 PM by DaniAngione »
That's all.

****
Rep:
Level 83
No problem, thanks for showing some new things that can be done to it, i finished making the script i had in my project up to date with what you showed in your version. I'll be sure to find some place to credit you in the game.
Spoiler for:
METALFRESH is a paint contractor that specializes in refinishing metal and vinyl siding. We paint metal buildings as well as siding on homes.

We also

    Refinish decks
    Do custom interior painting
    Strip wallpaper
    Refinish cedar siding
    Metal front doors and sidelights
    Metal garage and service doors
    Grained fiberglass doors

    If your structure is *RUSTED *FADED *CHALKING *IN NEED OF COLOR CHANGE, we can fix it with a guarentee!

northern Illinois and southern Wisconsin.

http://metalfreshcoatings.com


********
Resource Artist
Rep:
Level 94
\\\\\
Project of the Month winner for June 2009
Ah, then I apologize for my hasty remarks Lord grafikal :)

lol, no problem, at the time I didn't realize that this topic was an updated version of what I liked, so I had thought I was linking to a duplicate script topic. Cool that it's been updated though.

**
Rep:
Level 81
To teach is to learn with someone else.
Another issue found:

When on maximum weight or near it: You find a chest with an Item inside it and when you try to get it you don't get the item but the chest activates the switch and changes to empty, making the contents disappear...

I already fixed the other 2 issues but I'll fix this one before releasing 2.1 :)

[EDIT!]----------------------------------------

Ok, it's done. Version 2.1 released and updates already edited on the main post :)

Feedback would certainly be appreciated and thanks for the support everyone :)
« Last Edit: April 17, 2010, 03:40:57 AM by DaniAngione »
That's all.

**
Rep: +0/-0Level 82
@Mr_Wiggles: Do you think you could share how to fix the two items bug? I've got the same problem.

****
Rep:
Level 83
whoops sorry i answered you other question i saw in another thread. (equipped items weight messes up)

any ways if you still need that i put it in the spoiler. for you question here i can post my version of the script although it has been altered a little for my needs so tell me if you get any errors, but I'm busy this week so I can't fix it until latter.

This will be the Weighted items, the chest storage should be unchanged.  If it has a syntax error let me know and i will paste my version of that as well.  Also this version lacks the item filter, i didn't need it so i didn't put it in.
Code: [Select]
################################################################################
#   Item Weight V 1.0                                                          #
#         by Tidloc                                                            #
################################################################################
#  V 1.4                                                                       #
#    by Mr Wiggles - Drop to map.                                              #
################################################################################
#   This script allows the player to carry only a limited amount of weight.   #
#   To define the weight of an item, weapon or armor simply enter \w<*VALUE*>  #
#   in the description box of that item. If left out the weight will be 0!     #
################################################################################
#   Definition of the constants:                                               #
#    TIDLOC_GROUPWEIGHT_MAX ................. limit of weight, where the       #
#                                             player will be slowed down.      #
#    TIDLOC_GROUPWEIGHT_SHOW_MAX ............ true if GROUPWEIGHT_MAX shall be #
#                                             used  for max weight, not        #
#                                             CARRY_OVER_MAX.                  #
#    TIDLOC_GROUPWEIGHT_CARRY_OVER_MAX ...... maximum weight, if exceeding     #
#                                             this limit, no more items can be #
#                                             picked up.                       #
#    TIDLOC_GROUPWEIGHT_MAXWEIGHT_SWITCH .... the number of the global switch  #
#                                             which shall be turned true if    #
#                                             the max-limit is exceeded.       #
#    TIDLOC_GROUPWEIGHT_OVERWEIGHT_SWITCH ... the number of the global switch  #
#                                             which shall be turned true if    #
#                                             you cannot carry any more.       #
#                   if a switch is 0, it's not used                            #
################################################################################
#   To alter this limits in game use the following script-commands:             #
#    $game_temp._tidloc_pweight(*VALUE*) for GROUPWEIGHT_MAX                   #
#    $game_temp._tidloc_pmax(*VALUE*) for CARRY_OVER_MAX                       #
#   You may leave Value empty to reset to the constants.                       #
################################################################################
#  You are free to use this script in what ever game you want, but please      #
#  credit me for this hell of work ^_^                                         #
#       Credits also to Albertfish for his help when it was needed!            #
################################################################################
#  Mr Wiggles:                                                                 #
#                                                                              #
#    This version will store recently dropped items, which then can be picked   #
#    up through an event that calls a chest in Game_Guy's Item Storage Script. #
#                                                                              #
#    Use $game_temp.recentdrop for the chest that will house the recently      #
#    dropped items from Tidloc's Weighted Items Script.                         #
################################################################################
TIDLOC_GROUPWEIGHT_MAX               = 10   # Set by players Skill
TIDLOC_GROUPWEIGHT_CARRY_OVER_MAX    = 1000000000
TIDLOC_GROUPWEIGHT_MAT_POWER         = 2   # Number of decimal algarisms.
TIDLOC_GROUPWEIGHT_MAXWEIGHT_SWITCH  = 20
TIDLOC_GROUPWEIGHT_OVERWEIGHT_SWITCH = 3


module CHEST_DROP # Mr Wiggles
  
# Switch that when false erases items that where dropped (like for a map change)
DROPED_ITEM_SW = 5
# This switch is Turned on when player drops new items
RELOCATE_ITEM  = 9
# Button to drop item
DROP_ITEM = Input::Letters["D"]
# Button to use item
USE_ITEM  = Input::C # Space, Enter, "C"
# Chest that will store items
DROP_CHEST_ID = 1

end # Mr Wiggles

#-------------------------------------------------------------------------------
# * Window_Weight
#-------------------------------------------------------------------------------
class Window_Weight < Window_Base
  def initialize
    super(0, 0, 640, 480) # 140, 80
    self.z = 200
    self.contents = Bitmap.new(width - 32, height - 32)
    self.opacity = 0
    refresh
  end
  def refresh
    self.contents.font.name = "Times New Roman"
    self.contents.font.size = 20  
    self.contents.clear
    self.contents.font.color = system_color
    a = 1
    for i in 0...TIDLOC_GROUPWEIGHT_MAT_POWER
     a*=10.0
    end
    # Draw Weight in Maxed out color if over max
    if $game_temp._tidloc_groupweight/a > $game_temp._tidloc_groupweight_max/a
      self.contents.font.color = knockout_color
      weight = ($game_temp._tidloc_groupweight/a).to_s
      max_weight = ($game_temp._tidloc_groupweight_max/a).to_s
      self.contents.draw_text(5, 9, 160, 32,weight+" / "+max_weight, 0)
    # Draw Weight in Warning color if close to max
    elsif $game_temp._tidloc_groupweight/a >= $game_temp._tidloc_groupweight_max/a - 15
      self.contents.font.color = crisis_color
      weight = ($game_temp._tidloc_groupweight/a).to_s
      max_weight = ($game_temp._tidloc_groupweight_max/a).to_s
      self.contents.draw_text(5, 9, 160, 32,weight+" / "+max_weight, 0)
    else
    # Draw Weight in normal color if under max
      self.contents.font.color = normal_color
      weight = ($game_temp._tidloc_groupweight/a).to_s
      max_weight = ($game_temp._tidloc_groupweight_max/a).to_s
      self.contents.draw_text(5, 9, 160, 32,weight+" / "+max_weight, 0)
    end
    # Draw Weight Total:
    self.contents.draw_text(0,-9, 120, 32, "Weight Total:\n")
    self.contents.font.color = normal_color
    # Draw Weight help
    self.contents.font.color = normal_color
    self.contents.draw_text(280, -9, 200, 32, "Use items with Space,")
    self.contents.draw_text(280,  9, 200, 32, "Drop items with \"D\".")
  end
end

#==============================================================================
# * Window_Item
#==============================================================================
class Window_Item < Window_Selectable
  #--------------------------------------------------------------------------
  # * Help Text Update
  #--------------------------------------------------------------------------
  def update_help
    @help_window.set_text(self.item == nil ? "" : self.item.description)
    if self.item != nil
      help = self.item.description.to_s
      $game_temp.item_description_lentgh = help.length
    end
  end
end

#-------------------------------------------------------------------------------
# * Game_Temp
#-------------------------------------------------------------------------------
class Game_Temp
  attr_accessor :_tidloc_itemweight
  attr_accessor :_tidloc_weaponweight
  attr_accessor :_tidloc_armorweight
  attr_accessor :_tidloc_groupweight
  attr_accessor :_tidloc_groupweight_max
  attr_accessor :_tidloc_groupweight_carry_over_max
  attr_accessor :_tidloc_iweight_slow
  attr_accessor :recentdrop
  attr_accessor :item_description_lentgh
  
  alias wo_weight_initialize initialize
  def initialize
    wo_weight_initialize
    self._tidloc_itemweight                  = []
    self._tidloc_weaponweight                = []
    self._tidloc_armorweight                 = []
    self.recentdrop                          = []
    self.item_description_lentgh             = 0
    self._tidloc_groupweight                 = 0
    self._tidloc_groupweight_max             = TIDLOC_GROUPWEIGHT_MAX
    self._tidloc_groupweight_carry_over_max  = TIDLOC_GROUPWEIGHT_CARRY_OVER_MAX
    self._tidloc_iweight_slow                = false
    
    for i in 1...$data_items.size
      if $data_items[i].description[0] != nil
        text  = $data_items[i].description
        text2 = ""
        text.gsub!(/\\w<([0-9]+)>/) {"\1[#{$1}]"}
        while ((c = text.slice!(/./m)) != nil)
          if c != "\1"
            text2 += c
          else
            text.sub!(/\[([_A-Za-z0-9-]+)\]/, "")
            self._tidloc_itemweight[i]=$1.to_i
          end
        end
        $data_items[i].description = text2
      end
      self._tidloc_itemweight[i] = 0 if self._tidloc_itemweight[i].nil?
    end
    for i in 1...$data_weapons.size
      if $data_weapons[i].description[0] != nil
        text  = $data_weapons[i].description
        text2 = ""
        text.gsub!(/\\w<([0-9]+)>/) {"\1[#{$1}]"}
        while ((c = text.slice!(/./m)) != nil)
          if c != "\1"
            text2 += c
          else
            text.sub!(/\[([_A-Za-z0-9-]+)\]/, "")
            self._tidloc_weaponweight[i]=$1.to_i
          end
        end
        $data_weapons[i].description = text2
      end
      self._tidloc_weaponweight[i] = 0 if self._tidloc_weaponweight[i].nil?
    end
    for i in 1...$data_armors.size
      if $data_armors[i].description[0] != nil
        text  = $data_armors[i].description
        text2 = ""
        text.gsub!(/\\w<([0-9]+)>/) {"\1[#{$1}]"}
        while ((c = text.slice!(/./m)) != nil)
          if c == "\1"
            text.sub!(/\[([_A-Za-z0-9-]+)\]/, "")
            self._tidloc_armorweight[i]=$1.to_i
          else
            text2 += c
          end
        end
        $data_armors[i].description = text2
      end
      self._tidloc_armorweight[i] = 0 if self._tidloc_armorweight[i].nil?
    end
  end

   def _tidloc_pweight(new_weight=TIDLOC_GROUPWEIGHT_MAX)  
    self._tidloc_groupweight_max = new_weight
  end
  
  def _tidloc_pmax(new_max=TIDLOC_GROUPWEIGHT_CARRY_OVER_MAX)
    self._tidloc_groupweight_carry_over_max = new_max
  end
end


#-------------------------------------------------------------------------------
# * Game_Party
#-------------------------------------------------------------------------------
class Game_Party
  def tidloc_slowing(slow=true)
    if slow
      $game_player.tidloc_alt_speed -1
    else
      $game_player.tidloc_alt_speed 1
    end
  end
#----------------------
# Gain Item
#----------------------
alias tidloc_iweight_item gain_item
def gain_item(item_id, n)
# Add Wieght
if item_id > 0
  $game_temp._tidloc_groupweight += $game_temp._tidloc_itemweight[item_id] * n #([[item_number(item_id) + n, 0].max, 999].min - item_number(item_id))
end
# check if over weight
if $game_temp._tidloc_groupweight > $game_temp._tidloc_groupweight_carry_over_max
  $game_switches.[]=(TIDLOC_GROUPWEIGHT_OVERWEIGHT_SWITCH, true) if TIDLOC_GROUPWEIGHT_OVERWEIGHT_SWITCH != -1
  if !$game_temp._tidloc_iweight_slow
    $game_temp._tidloc_iweight_slow = true
    tidloc_slowing
  end
elsif ($game_temp._tidloc_groupweight > $game_temp._tidloc_groupweight_max && !$game_temp._tidloc_iweight_slow)
  $game_temp._tidloc_iweight_slow = true
  $game_switches.[]=(TIDLOC_GROUPWEIGHT_MAXWEIGHT_SWITCH, true) if TIDLOC_GROUPWEIGHT_MAXWEIGHT_SWITCH != -1
  tidloc_slowing
  tidloc_iweight_item(item_id, n)
elsif ($game_temp._tidloc_groupweight <= $game_temp._tidloc_groupweight_max && $game_temp._tidloc_iweight_slow)
  $game_temp._tidloc_iweight_slow = false
  $game_switches.[]=(TIDLOC_GROUPWEIGHT_MAXWEIGHT_SWITCH, false) if TIDLOC_GROUPWEIGHT_MAXWEIGHT_SWITCH != -1
  tidloc_slowing false
  tidloc_iweight_item(item_id, n)
else
  tidloc_iweight_item(item_id, n)
end
end
#----------------------
# Gain Weapon
#----------------------  
alias tidloc_iweight_weap gain_weapon
def gain_weapon(weapon_id, n)
if weapon_id > 0
   $game_temp._tidloc_groupweight += $game_temp._tidloc_weaponweight[weapon_id] * n #([[weapon_number(weapon_id) + n, 0].max, 99].min - weapon_number(weapon_id))
end
    if $game_temp._tidloc_groupweight > $game_temp._tidloc_groupweight_carry_over_max
      $game_switches.[]=(TIDLOC_GROUPWEIGHT_OVERWEIGHT_SWITCH, true) if TIDLOC_GROUPWEIGHT_OVERWEIGHT_SWITCH != -1
      if !$game_temp._tidloc_iweight_slow
        $game_temp._tidloc_iweight_slow = true
        tidloc_slowing
      end
    elsif $game_temp._tidloc_groupweight > $game_temp._tidloc_groupweight_max && !$game_temp._tidloc_iweight_slow
      $game_temp._tidloc_iweight_slow = true
      $game_switches.[]=(TIDLOC_GROUPWEIGHT_MAXWEIGHT_SWITCH, true) if TIDLOC_GROUPWEIGHT_MAXWEIGHT_SWITCH != -1
      tidloc_slowing
      tidloc_iweight_weap(weapon_id, n) if TIDLOC_GROUPWEIGHT_CARRY_OVER_MAX
      $game_switches.[]=(TIDLOC_GROUPWEIGHT_OVERWEIGHT_SWITCH, true) if !TIDLOC_GROUPWEIGHT_CARRY_OVER_MAX
    elsif $game_temp._tidloc_groupweight <= $game_temp._tidloc_groupweight_max && $game_temp._tidloc_iweight_slow
      $game_temp._tidloc_iweight_slow = false
      $game_switches.[]=(TIDLOC_GROUPWEIGHT_MAXWEIGHT_SWITCH, false) if TIDLOC_GROUPWEIGHT_MAXWEIGHT_SWITCH != -1
      tidloc_slowing false
      tidloc_iweight_weap(weapon_id, n)
    else
      tidloc_iweight_weap(weapon_id, n)
    end
  end
#----------------------
# Gain Armor
#----------------------  
alias tidloc_iweight_arm gain_armor
def gain_armor(armor_id, n)
if armor_id > 0
  $game_temp._tidloc_groupweight += $game_temp._tidloc_armorweight[armor_id] * n #([[armor_number(armor_id) + n, 0].max, 99].min - armor_number(armor_id))
end
if $game_temp._tidloc_groupweight > $game_temp._tidloc_groupweight_carry_over_max
  $game_switches.[]=(TIDLOC_GROUPWEIGHT_OVERWEIGHT_SWITCH, true) if TIDLOC_GROUPWEIGHT_OVERWEIGHT_SWITCH != -1
  if !$game_temp._tidloc_iweight_slow
    $game_temp._tidloc_iweight_slow = true
    tidloc_slowing
  end
elsif $game_temp._tidloc_groupweight > $game_temp._tidloc_groupweight_max && !$game_temp._tidloc_iweight_slow
  $game_temp._tidloc_iweight_slow = true
  $game_switches.[]=(TIDLOC_GROUPWEIGHT_MAXWEIGHT_SWITCH, true) if TIDLOC_GROUPWEIGHT_MAXWEIGHT_SWITCH != -1
  tidloc_slowing
  tidloc_iweight_arm(armor_id, n) if TIDLOC_GROUPWEIGHT_CARRY_OVER_MAX
  $game_switches.[]=(TIDLOC_GROUPWEIGHT_OVERWEIGHT_SWITCH, true) if !TIDLOC_GROUPWEIGHT_CARRY_OVER_MAX
elsif $game_temp._tidloc_groupweight <= $game_temp._tidloc_groupweight_max && $game_temp._tidloc_iweight_slow
  $game_temp._tidloc_iweight_slow = false
  $game_switches.[]=(TIDLOC_GROUPWEIGHT_MAXWEIGHT_SWITCH, false) if TIDLOC_GROUPWEIGHT_MAXWEIGHT_SWITCH != -1
  tidloc_slowing false
  tidloc_iweight_arm(armor_id, n)
else
  tidloc_iweight_arm(armor_id, n)
end
end
end

#-------------------------------------------------------------------------------
# * Game_Player
#-------------------------------------------------------------------------------
class Game_Player
  def tidloc_set_speed(speed=4)
    @move_speed = speed
  end
  
  def tidloc_alt_speed(speed=0)
    @move_speed += speed
  end
end

#-------------------------------------------------------------------------------
# * Scene_Item
#-------------------------------------------------------------------------------
class Scene_Item
  alias _tidloc_iweight_main main
  def main
    @weight_window   = Window_Weight.new
    @weight_window.x = 0
    @weight_window.y = 0
    _tidloc_iweight_main
    @weight_window.dispose
  end
  
  alias _tidloc_iweight_update update
  def update
    @weight_window.update
    _tidloc_iweight_update
    @weight_window.refresh
  end
#-------------------------------------------------------------------------------  
alias _tidloc_iweight_item update_item
def update_item
    @item = @item_window.item
#------------------    
if Input.trigger?(CHEST_DROP::USE_ITEM)
  # If not an item
    unless @item.is_a?(RPG::Item)
      # Play buzzer SE
      $game_system.se_play($data_system.buzzer_se)
      return
    end
    unless $game_party.item_can_use?(@item.id)
      # Play buzzer SE
      $game_system.se_play($data_system.buzzer_se)
      return
    end
    $game_system.se_play($data_system.decision_se)
    if @item.scope >= 3
        @item_window.active = false
        @target_window.x = (@item_window.index + 1) % 2 * 304
        @target_window.visible = true
        @target_window.active = true
        if @item.scope == 4 || @item.scope == 6
           @target_window.index = -1
        else
           @target_window.index = 0
        end # if scope == 4
     else
        if @item.common_event_id > 0
           $game_temp.common_event_id = @item.common_event_id
           $game_system.se_play($data_system.decision_se)
           if @item.consumable
              $game_party.lose_item(@item.id, 1)
              @item_window.draw_item(@item_window.index)
            end # if consumable
           $scene = Scene_Map.new
            return
         end # if common event
       end # if item scope >= 3
      @item_window.refresh
      @weight_window.refresh
      return
    end # if Input::C
#------------------    
    if Input.trigger?(CHEST_DROP::DROP_ITEM) # Drop Item
       $game_switches[CHEST_DROP::RELOCATE_ITEM] = true
       # define $chest
       if $game_system.chests[CHEST_DROP::DROP_CHEST_ID] == nil
          $chest = Game_Chest.new(GameGuy::ChestMaxItems)
        else
          $chest = $game_system.chests[CHEST_DROP::DROP_CHEST_ID]
        end
       # if it is an Item
       if @item.is_a?(RPG::Item)
          $game_system.se_play($data_system.buzzer_se)
          $game_party.gain_item(@item.id,-1)
          # add items into drop bag
          $chest.add_item(@item.id, 1)
          $game_switches[CHEST_DROP::DROPED_ITEM_SW] = true
        # if it is a Weapon  
        elsif @item.is_a?(RPG::Weapon)
          $game_system.se_play($data_system.buzzer_se)
          $game_party.gain_weapon(@item.id,-1)
          # add items into drop bag
          $chest.add_weapon(@item.id, 1)
          $game_switches[CHEST_DROP::DROPED_ITEM_SW] = true
        # if it is an Armor
        elsif @item.is_a?(RPG::Armor)
          $game_system.se_play($data_system.buzzer_se)
          $game_party.gain_armor(@item.id,-1)
          # add items into drop bag
          $chest.add_armor(@item.id, 1)
          $game_switches[CHEST_DROP::DROPED_ITEM_SW] = true
        end # item type
          $game_map.refresh
          @item_window.refresh
          @weight_window.refresh
         # update droped items
         $game_system.add_chest(CHEST_DROP::DROP_CHEST_ID)
         $game_map.game_chest_size(CHEST_DROP::DROP_CHEST_ID)
         chest_size = $number_of_droped_items
      return
    end # Input Drop button
#------------------    
    _tidloc_iweight_item
  end # def
end # class

#-------------------------------------------------------------------------------
# * Scene_Shop
#-------------------------------------------------------------------------------
class Scene_Shop
  alias _tidloc_iweight_buy update_buy
  def update_buy
    _tidloc_iweight_buy
    if Input.trigger?(Input::C)
      @item = @buy_window.item
      if @item == nil or @item.price > $game_party.gold
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      case @item
      when RPG::Item
        number = $game_party.item_number(@item.id)
        max2 = $game_temp._tidloc_itemweight[@item.id]
      when RPG::Weapon
        number = $game_party.weapon_number(@item.id)
        max2 = $game_temp._tidloc_weaponweight[@item.id]
      when RPG::Armor
        number = $game_party.armor_number(@item.id)
        max2 = $game_temp._tidloc_armorweight[@item.id]
      end
      if number == 999
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      $game_system.se_play($data_system.decision_se)
      max = @item.price == 0 ? 999 : $game_party.gold / @item.price
      return if max2 == 0
      max2 = ($game_temp._tidloc_groupweight_max - $game_temp._tidloc_groupweight) / max2
      max = [max, 999 - number, max2].min
      @buy_window.active = false
      @buy_window.visible = false
      @number_window.set(@item, max, @item.price)
      @number_window.active = true
      @number_window.visible = true
    end
  end
end
#-------------------------------------------------------------------------------
# Scene Map
#-------------------------------------------------------------------------------
class Scene_Map
  alias wieght_update update
  def update  
    # Erase items that where droped if DROPED_ITEM_SW switch is off or if
    # there are no droped items to pick up
    if $game_system.chests[CHEST_DROP::DROP_CHEST_ID] != nil
      $game_map.game_chest_size(CHEST_DROP::DROP_CHEST_ID)
    end
    chest_size = $number_of_droped_items
    if chest_size == 0 and $game_switches[CHEST_DROP::DROPED_ITEM_SW] == true
      $game_switches[CHEST_DROP::DROPED_ITEM_SW] = false
    end
    if $game_switches[CHEST_DROP::DROPED_ITEM_SW] == false
      $game_temp.recentdrop.clear
      $number_of_droped_items = 0
      $game_system.chests[CHEST_DROP::DROP_CHEST_ID] = nil
    end
    wieght_update
  end
end


Spoiler for other answer:
sure, its just a patch that you can paste bellow the weighted items script, although it will only fix one member party, im sure i can rig it to do all four.

Just paste this in the Weighted items script bellow every thing.
Code: [Select]
#==============================================================================
# ** Game_System :: Rewrite to update equiped Wieght
#==============================================================================
class Game_System
alias equip_init initialize
 def initialize
   @old_weapon       = 0
   @old_shield       = 0
   @old_head         = 0
   @old_body_id      = 0
   @old_accessory_id = 0
  
   @weapon_equiped    = false
   @shield_equiped    = false
   @head_equiped      = false
   @body_equiped      = false
   @accessory_equiped = false
  
   @weapon_id    = 0
   @shield_id    = 0
   @head_id      = 0
   @body_id    = 0
   @accessory_id = 0
   equip_init
 end
 
alias equip_update update
def update
   @weapon_id = $game_party.actors[0].weapon_id
   @shield_id = $game_party.actors[0].armor1_id
   @head_id = $game_party.actors[0].armor2_id
   @body_id = $game_party.actors[0].armor3_id
   @accessory_id = $game_party.actors[0].armor4_id
#--------------------
# Weapon
if @weapon_id != 0 and @weapon_equiped == false
  $game_temp._tidloc_groupweight += $game_temp._tidloc_weaponweight[@weapon_id]
  @old_weapon = @weapon_id
  @weapon_equiped = true
  return
elsif @weapon_equiped == true and @weapon_id != @old_weapon and @weapon_id != 0
  $game_temp._tidloc_groupweight -= $game_temp._tidloc_weaponweight[@old_weapon]
  @old_weapon = @weapon_id
  $game_temp._tidloc_groupweight += $game_temp._tidloc_weaponweight[@weapon_id]
  return
elsif @weapon_id == 0 and @weapon_equiped == true and @old_weapon != 0
  $game_temp._tidloc_groupweight -= $game_temp._tidloc_weaponweight[@old_weapon]
  @weapon_equiped = false
  @old_weapon = 0
  return
end
#--------------------
# Shield
if @shield_id != 0 and @shield_equiped == false
  $game_temp._tidloc_groupweight += $game_temp._tidloc_weaponweight[@shield_id]
  @old_shield = @shield_id
  @shield_equiped = true
  return
elsif @shield_equiped == true and @shield_id != @old_shield and @shield_id != 0
  $game_temp._tidloc_groupweight -= $game_temp._tidloc_weaponweight[@old_shield]
  @old_shield = @shield_id
  $game_temp._tidloc_groupweight += $game_temp._tidloc_weaponweight[@shield_id]
  return
elsif @shield_id == 0 and @shield_equiped == true and @old_shield != 0
  $game_temp._tidloc_groupweight -= $game_temp._tidloc_weaponweight[@old_shield]
  @shield_equiped = false
  @old_shield = 0
  return
end
#--------------------
# Head
if @head_id != 0 and @head_equiped == false
  $game_temp._tidloc_groupweight += $game_temp._tidloc_weaponweight[@head_id]
  @old_head = @head_id
  @head_equiped = true
  return
elsif @head_equiped == true and @head_id != @old_head and @head_id != 0
  $game_temp._tidloc_groupweight -= $game_temp._tidloc_weaponweight[@old_head]
  @old_head = @head_id
  $game_temp._tidloc_groupweight += $game_temp._tidloc_weaponweight[@head_id]
  return
elsif @head_id == 0 and @head_equiped == true and @old_head != 0
  $game_temp._tidloc_groupweight -= $game_temp._tidloc_weaponweight[@old_head]
  @head_equiped = false
  @old_head = 0
  return
end
#--------------------
# Body
if @body_id != 0 and @body_equiped == false
  $game_temp._tidloc_groupweight += $game_temp._tidloc_weaponweight[@body_id]
  @old_body = @body_id
  @body_equiped = true
  return
elsif @body_equiped == true and @body_id != @old_body and @body_id != 0
  $game_temp._tidloc_groupweight -= $game_temp._tidloc_weaponweight[@old_body]
  @old_body = @body_id
  $game_temp._tidloc_groupweight += $game_temp._tidloc_weaponweight[@body_id]
  return
elsif @body_id == 0 and @body_equiped == true and @old_body != 0
  $game_temp._tidloc_groupweight -= $game_temp._tidloc_weaponweight[@old_body]
  @body_equiped = false
  @old_body = 0
  return
end
#--------------------
# Accessory
if @accessory_id != 0 and @accessory_equiped == false
  $game_temp._tidloc_groupweight += $game_temp._tidloc_weaponweight[@accessory_id]
  @old_accessory = @accessory_id
  @accessory_equiped = true
  return
elsif @accessory_equiped == true and @accessory_id != @old_accessory and @accessory_id != 0
  $game_temp._tidloc_groupweight -= $game_temp._tidloc_weaponweight[@old_accessory]
  @old_accessory = @accessory_id
  $game_temp._tidloc_groupweight += $game_temp._tidloc_weaponweight[@accessory_id]
  return
elsif @accessory_id == 0 and @accessory_equiped == true and @accessory_body != 0
  $game_temp._tidloc_groupweight -= $game_temp._tidloc_weaponweight[@accessory_body]
  @accessory_equiped = false
  @old_accessory = 0
  return
end
#--------------------
equip_update
 end
end

#==============================================================================
# ** Game_Actor :: Rewrite to update equiped Wieght
#==============================================================================
class Game_Actor < Game_Battler
  #--------------------------------------------------------------------------
  # * Change Equipment
  #     equip_type : type of equipment
  #     id    : weapon or armor ID (If 0, remove equipment)
  #--------------------------------------------------------------------------
  def equip(equip_type, id)
    case equip_type
    when 0  # Weapon
      if id == 0 or $game_party.weapon_number(id) > 0
        $game_party.gain_weapon(@weapon_id, 1)
        @weapon_id = id
        $game_party.gain_weapon(@weapon_id, -1)
      end
    when 1  # Shield
      if id == 0 or $game_party.armor_number(id) > 0
        update_auto_state($data_armors[@armor1_id], $data_armors[id])
        $game_party.gain_armor(@armor1_id, 1)
        @armor1_id = id
        $game_party.gain_armor(@armor1_id, -1)
      end
    when 2  # Head
      if id == 0 or $game_party.armor_number(id) > 0
        update_auto_state($data_armors[@armor2_id], $data_armors[id])
        $game_party.gain_armor(@armor2_id, 1)
        @armor2_id = id
        $game_party.gain_armor(@armor1_id, -1)
      end
    when 3  # Body
      if id == 0 or $game_party.armor_number(id) > 0
        update_auto_state($data_armors[@armor3_id], $data_armors[id])
        $game_party.gain_armor(@armor3_id, 1)
        @armor3_id = id
        $game_party.gain_armor(@armor1_id, -1)
      end
    when 4  # Accessory
      if id == 0 or $game_party.armor_number(id) > 0
        update_auto_state($data_armors[@armor4_id], $data_armors[id])
        $game_party.gain_armor(@armor4_id, 1)
        @armor4_id = id
        $game_party.gain_armor(@armor1_id, -1)
      end
    end
  end
end # class
« Last Edit: April 21, 2010, 01:10:57 AM by Mr_Wiggles »
Spoiler for:
METALFRESH is a paint contractor that specializes in refinishing metal and vinyl siding. We paint metal buildings as well as siding on homes.

We also

    Refinish decks
    Do custom interior painting
    Strip wallpaper
    Refinish cedar siding
    Metal front doors and sidelights
    Metal garage and service doors
    Grained fiberglass doors

    If your structure is *RUSTED *FADED *CHALKING *IN NEED OF COLOR CHANGE, we can fix it with a guarentee!

northern Illinois and southern Wisconsin.

http://metalfreshcoatings.com


**
Rep: +0/-0Level 82
Thanks! It's fixed now! ;D

EDIT: In the first script, what did you actually do to stop two items from showing up when there's only one? It's just that I'd customised the script myself and I'd be a bit loathed to get rid of my mods. Can you remember which lines you edited?
« Last Edit: April 21, 2010, 08:51:56 PM by CountVlad »

****
Rep:
Level 83
UH, well, i think that it would just be easier to re-mod my version with what you edited.  What i did to my old version to get this new one that i posted. Sorry.
Spoiler for:
METALFRESH is a paint contractor that specializes in refinishing metal and vinyl siding. We paint metal buildings as well as siding on homes.

We also

    Refinish decks
    Do custom interior painting
    Strip wallpaper
    Refinish cedar siding
    Metal front doors and sidelights
    Metal garage and service doors
    Grained fiberglass doors

    If your structure is *RUSTED *FADED *CHALKING *IN NEED OF COLOR CHANGE, we can fix it with a guarentee!

northern Illinois and southern Wisconsin.

http://metalfreshcoatings.com


**
Rep: +0/-0Level 82
No problem. I'll see if I can analyze the two scripts and spot any changes. If I can't, I'll just have to use yours. Thanks for the help anyway.