Menu

Cannot add legit accessories to weapons

Help
Mark Rivas
2019-04-18
2019-04-19
  • Mark Rivas

    Mark Rivas - 2019-04-18

    I'm trying to build / edit weapons, but upon making specific changes to a weapon, it will not load into my inventory. The easiest example I can provide would be with editing the Dove; all of its parts are predefined except for its accessory. So I will attempt to put a lacerator accessory on it, and upon saving properly and loading my game, it will not appear in my inventory. Removing the accessory is the only way I have been able to replace the dove back into my inventory. Occurs with many other unique weapons as well, and the issue seems to consistently be within the accessory. I've double checked all of my weapon builds on gear calc to make sure they are all legit and that I haven't simply built them wrong.

    Thank you for continuing to support willowtree after all these years :)

     
    • matt911

      matt911 - 2019-04-18

      I'm sorry to be the bearer of bad news but the accessory is also predefined on The Dove. If I dump the data of gd_customweapons.PartCollections.PartCollection_repeater_TheDove, with my data tool the part of it that specifies which accessory parts are allowed looks like this:

      <AccessoryPartData Type="StructProperty WeaponCustomPartTypeData">
        <WeightedParts Type="ArrayProperty">
          <ArrayEntry Type="PropertyList" Ref="WeightedParts" Index="0">
            <Part Type="ObjectProperty">gd_weap_repeater_pistol.acc.acc_none</Part>
            <Manufacturers Type="ArrayProperty" />
            <MinGameStage Type="StructProperty AttributeInitializationData">
              <BaseValueConstant Type="FloatProperty">1</BaseValueConstant>
              <BaseValueAttribute Type="ObjectProperty" />
              <InitializationDefinition Type="ObjectProperty" />
              <BaseValueScaleConstant Type="FloatProperty">1</BaseValueScaleConstant>
            </MinGameStage>
            <MaxGameStage Type="StructProperty AttributeInitializationData">
              <BaseValueConstant Type="FloatProperty">100</BaseValueConstant>
              <BaseValueAttribute Type="ObjectProperty" />
              <InitializationDefinition Type="ObjectProperty" />
              <BaseValueScaleConstant Type="FloatProperty">1</BaseValueScaleConstant>
            </MaxGameStage>
            <DefaultWeight Type="StructProperty AttributeInitializationData">
              <BaseValueConstant Type="FloatProperty">0</BaseValueConstant>
              <BaseValueAttribute Type="ObjectProperty" />
              <InitializationDefinition Type="ObjectProperty" />
              <BaseValueScaleConstant Type="FloatProperty">1</BaseValueScaleConstant>
            </DefaultWeight>
          </ArrayEntry>
        </WeightedParts>
      </AccessoryPartData>
      

      There is an array that contains all the valid parts and the array contains only one part which is specified in the line that says "<part type="ObjectProperty">gd_weap_repeater_pistol.acc.acc_none</part>". If you change the accessory to that part then the weapon will not be invalid and it will appear in the game.

       

      Last edit: matt911 2019-04-18
      • Rishav

        Rishav - 2019-04-18

        In that case, how would you acquire the Hornet? The wiki specifically makes a note of the possibility of the Dove's barrel spawning with the Hornet's accessory to get both special effects combined.

         

        Last edit: Rishav 2019-04-18
        • matt911

          matt911 - 2019-04-19

          I'm sorry I don't know the answer to your question. Its possible that the rules in Borderlands were made more stringent in Borderlands Enhanced than they were in Borderlands classic or its possible that the person that wrote that on the wiki didn't know what they were talking about. If changing a part to another part on a weapon causes it to disappear in game, then the part you have changed it to is not valid on that weapon. I tried changing it myself and the weapon does not appear in game so I conclude that it is invalid in Borderlands Enhanced, which is the only version of Borderlands I have installed at the moment. It could be valid in Borderlands classic but some change they made makes it invalid in Borderlands Enhanced. I don't have Borderlands classic installed right now so I can't easlly check.

           
          • Rishav

            Rishav - 2019-04-19

            Fair enough. Strange that they'd decide to remove certain gear, rather than improve them but I guess there's not much that can be done about it. Thanks for checking!

             
            • matt911

              matt911 - 2019-04-19

              Here's a thread where someone reported that importing his savegame into Borderlands Enhanced caused two weapons to disappear.. One was the Dove Hornet and one was a pearl Avenger. Apparently at least the Dove Hornet was a legit weapon drop in Borderlands classic because he complains about having spent hours farming for it. This problem definitely appears to be due to a change in the code of the new version of Borderlands..

              https://www.reddit.com/r/Borderlands/comments/b9km5n/borderland_enhanced_disappearing_guns_avenger/

               
              • Rishav

                Rishav - 2019-04-19

                And a few more missing weapons are listed in the comments here. Pretty strange stuff.

                 
                • matt911

                  matt911 - 2019-04-19

                  I installed the classic Borderlands so I could look at the unreal package in it and I think I know what they did that caused the change of functionality in the new version of Borderlands. In Borderlands classic there was a BoolProperty called bEnabled in the each WeaponCustomPartTypeData section of the WeaponPartListCollectionDefinition. If that property did not exist or was false then that part restriction did not apply and it defaulted to using the part list of the AssociatedWeaponType, which in this case is the default repeater pistol which does allow the Dahl Hornet accessory. The WeaponPartListCollectionDefinition even in Borderlands classic specified acc_none, but they either forgot to or intentionally did not include the bEnabled property in the accessory section even though it was in the other part sections so that particular restriction wasn't actually ever applied in classic Borderlands.

                  I guess when they were making the enhanced version they must have decided that they either wanted to get rid of some excess data or they wanted to prevent themselves from forgetting to set the property and allowing weapons they didn't intend to allow so they removed the bEnabled property entries from the WeaponCustomPartTypeData section and I assume that now every one is always enabled so that accessory restriction that wasn't enabled in Borderlands classic now is enabled in Borderlands enhanced, preventting you from using any accessory except acc_none.

                   
                  • matt911

                    matt911 - 2019-04-19

                    I can also now report that the BLR Hornet code that Rishav posted does in fact work in the Borderlands classic version even though it is not allowed in the enhanced version.

                     
  • Rishav

    Rishav - 2019-04-18

    Hey there, would you mind sharing the exact build code in its entirety for the gear (Dove) that's causing the issue? It might help troubleshoot the problem.

     
  • Mark Rivas

    Mark Rivas - 2019-04-18

    Sure thing. I've both imported the code from gear calc and built it up from scratch with no difference in code, so I'm a little lost as to what's so wrong with it.

    gd_customweapons.Retail_Weapons.CustomWeap_repeater_TheDove
    gd_manufacturers.Manufacturers.Dahl
    gd_weap_repeater_pistol.A_Weapon.WeaponType_repeater_pistol
    gd_weap_repeater_pistol.Body.body1
    gd_weap_repeater_pistol.Grip.grip4_Dahl
    gd_weap_repeater_pistol.mag.mag1
    gd_weap_repeater_pistol.UniqueParts.TheDove_barrel4
    gd_weap_repeater_pistol.Sight.sight_none
    None
    gd_weap_repeater_pistol.Action.action3
    gd_weap_repeater_pistol.acc.acc1_Lacerator
    gd_weap_repeater_pistol.UniqueParts.TheDove_Material
    gd_weap_names_shared.Prefix.PrefixU_blank
    gd_weap_repeater_pistol.Title.TitleU_Retail_TheDove
    1
    5
    0
    0

     
  • Rishav

    Rishav - 2019-04-18

    And what is your character level?

     
  • Mark Rivas

    Mark Rivas - 2019-04-18

    I am at level 51 currently, and I have also attempted this edit at around level 30 with no difference

     
  • Rishav

    Rishav - 2019-04-18

    I'm assuming that've checked through the basics and tried various methods of importing the weapon, including importing it directly from your clipboard to an empty new slot that's available within your inventory's size limit or even straght into a free equipped inventory slot.

    I'm no expert but, as you verified with Gear Calc, the code you pasted seems to be "legit" barring the final number which corresponds to the level. Essentially, I've found it to be 2 + the level you want it to be. Given you have set it to 0, that assigns the weapon's level to -2, which might be a source of the issue. So the only change I would expect on that front would be:

    gd_customweapons.Retail_Weapons.CustomWeap_repeater_TheDove
    gd_manufacturers.Manufacturers.Dahl
    gd_weap_repeater_pistol.A_Weapon.WeaponType_repeater_pistol
    gd_weap_repeater_pistol.Body.body1
    gd_weap_repeater_pistol.Grip.grip4_Dahl
    gd_weap_repeater_pistol.mag.mag1
    gd_weap_repeater_pistol.UniqueParts.TheDove_barrel4
    gd_weap_repeater_pistol.Sight.sight_none
    None
    gd_weap_repeater_pistol.Action.action3
    gd_weap_repeater_pistol.acc.acc1_Lacerator
    gd_weap_repeater_pistol.UniqueParts.TheDove_Material
    gd_weap_names_shared.Prefix.PrefixU_blank
    gd_weap_repeater_pistol.Title.TitleU_Retail_TheDove
    1
    5
    0
    53

    Having said that, on the subject of importing gear with ridiculous bonuses, I'd definitely suggest opting for the Hornet Dahl Corrosive accessory instead. With it, you get the Dove's special effect combined with the Hornet's for a very special weapon.

    gd_customweapons.Retail_Weapons.CustomWeap_repeater_TheDove
    gd_manufacturers.Manufacturers.Dahl
    gd_weap_repeater_pistol.A_Weapon.WeaponType_repeater_pistol
    gd_weap_repeater_pistol.Body.body1
    gd_weap_repeater_pistol.Grip.grip4_Dahl
    gd_weap_repeater_pistol.mag.mag1
    gd_weap_repeater_pistol.UniqueParts.TheDove_barrel4
    gd_weap_repeater_pistol.Sight.sight_none
    None
    gd_weap_repeater_pistol.Action.action3
    gd_weap_repeater_pistol.acc.acc5_Hornet_Dahl_Corrosive
    gd_weap_repeater_pistol.UniqueParts.TheDove_Material
    gd_weap_names_shared.Prefix.PrefixU_blank
    gd_weap_repeater_pistol.Title.TitleM_Dahl1_Hornet
    1
    5
    0
    53

    Hope this helps.

     
  • Mark Rivas

    Mark Rivas - 2019-04-18

    Unfortunately, neither code will take hold in my save file. Nothing in my inventory and saving my game purged them right out of willowtree. Still, I appreciate the help and insight. I'm not frustrated that I can't have my dove / hornet so much as I am frustrated because I just want to know what the heck is causing so much trouble here haha

     
  • Rishav

    Rishav - 2019-04-18

    Just copied the sames values using WT#2.3.0.298 into my save and opened the game to find neither of them in my inventory or equipped.
    That's really curious; no idea why they seem to be incompatible with the game. Maybe @mat911 would be able to shed more light on this.

     
  • Mark Rivas

    Mark Rivas - 2019-04-19

    Thank you both for the info. I agree that this is a very strange change to make... While we are on the topic of reporting weapons that have "changed", for the sake of being aware of what we can lose in transferring our saves, I can also add Patton, Nailer, Reaver's Edge, The Spy, Sentinel, and as many have already reported, Leviathan. Perhaps some wiki edits are in order

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.