0 of 0

File information

Last updated

Original upload

Created by

Akatoshka7

Uploaded by

Akatoshka7

Virus scan

Safe to use

23 comments

  1. frztdmn
    frztdmn
    • member
    • 1 kudos
    Eliminated. 
    1. Akatoshka7
      Akatoshka7
      • premium
      • 81 kudos
      So what was the problem? I just tested this by adding two additional slots to both the sword with the original effect, both on the runes, and to the sword that I added this chance to in XML - both options worked correctly.
    2. frztdmn
      frztdmn
      • member
      • 1 kudos
      I apologize, I made a hasty comment, I checked that your mod doesn't cause the problem, that's why I deleted the comment. Your mod works in next gen, even without making changes to the script since the bleed effects that are added in Next Gen are effects caused only by warlock set bonuses.
    3. Akatoshka7
      Akatoshka7
      • premium
      • 81 kudos
      Don't use BIA NG? Because it contains an equivalent fix for this problem - it just doesn’t make sense.
  2. bigbanglsy2003
    bigbanglsy2003
    • member
    • 0 kudos
    Just out of curiosity, can we package or integrate this mod into BIA thx
    1. Akatoshka7
      Akatoshka7
      • premium
      • 81 kudos
      In what sense? Can you put this script in BIA OG so you don't have an extra folder? Well, yes, you can - I'm pretty sure this script isn't there, so you don't even need to merge anything. BIA NG has an equivalent fix for this problem - it just doesn’t make sense.
  3. Ka1am33t
    Ka1am33t
    • member
    • 2 kudos
    i was not aware of this bug, and i'm playing this game for a long time.
    It brings me joy when i see that there is still some love for Old Gen version, and modders like you that keeping it alive and improved still.
    Really apreciated it and endorsed!
    1. Akatoshka7
      Akatoshka7
      • premium
      • 81 kudos
      Considering how much I've modded my game over the years, porting all this NG would be too much of a headache. The most paradoxical thing is that I decided to start publishing some of my own mods shortly before the release of NG, and its release basically destroyed this desire. However, now that the game seems to be getting closer to the final version, I plan to post some stuff, plus adapt what's already been posted for NG as much as possible without having it.

      In any case, I'm glad that my fix was useful to you. To be honest, this bug is quite difficult to detect, and I hardly would have ever known about it if not for a post by one person on Discord.
  4. ElementaryLewis
    ElementaryLewis
    • premium
    • 706 kudos
    Actually, the bug is present in Next Gen as well. But Brothers In Arms fix it exclusively for Next Gen.
    (Me and a partner fix it).
    1. Akatoshka7
      Akatoshka7
      • premium
      • 81 kudos
      Ha! It seems the person who helped me with testing has BiA installed. Can I ask how exactly the bug was fixed? The difference in approaches is interesting.
    2. ElementaryLewis
      ElementaryLewis
      • premium
      • 706 kudos
      public function GetItemBuffs( id : SItemUniqueId, out buffs : array<SEffectInfo>) : int
          {
              var attrs, abs, absFast : array< name >;
              var i, k, j : int;//---===modBIA===---//
              var type : EEffectType;
              var abilityName : name;
              var buff : SEffectInfo;
              var dm : CDefinitionsManagerAccessor;
             
              //---===modBIA===---//
              var applyChance : float;
              var isNewBuff : bool;
              //---===modBIA===---//
             
              buffs.Clear();
             
              if( !IsIdValid(id) )
                  return 0;
             
             
              GetItemContainedAbilities(id, absFast);
              if(absFast.Size() == 0)
                  return 0;
             
              GetItemAbilities(id, abs);
              dm = theGame.GetDefinitionsManager();
              for(k=0; k<abs.Size(); k+=1)
              {
                  dm.GetContainedAbilities(abs[k], attrs);
                  applyChance = CalculateAttributeValue(GetItemAbilityAttributeValue(id, 'buff_apply_chance', abs[k]));//---===modBIA===---//
                 
                  for( i = 0; i < attrs.Size(); i += 1 )
                  {
                      //---===modBIA===---//
                      /*
                      if( IsEffectNameValid(attrs[i]) )
                      {
                          EffectNameToType(attrs[i], type, abilityName);
                         
                          buff.effectType = type;
                          buff.effectAbilityName = abilityName;                  
                         
                          buffs.PushBack(buff);
                         
                         
                          if(absFast.Size() == 1)
                              return buffs.Size();
                          else
                              absFast.EraseFast(0);                  
                      }
                      */
                      if( !IsEffectNameValid(attrs[i]) )
                          continue;
                     
                          EffectNameToType(attrs[i], type, abilityName);
                         
                          isNewBuff = true;
                          for( j = 0; j < buffs.Size(); j += 1 )
                          {
                              if( buffs[j].effectType == type )
                              {
                                  buffs[j].applyChance += applyChance;
                                  isNewBuff = false;
                                  break;
                              }
                          }
                         
                          if( !isNewBuff )
                              continue;

                          buff.applyChance = applyChance;
                          buff.effectType = type;
                          buff.effectAbilityName = abilityName;                  
                         
                          buffs.PushBack(buff);
                      //---===modBIA===---//
                  }
              }
             
              return buffs.Size();
          }  

      From inventoryCompoment.ws
      My partner found this code somewhere in the CDPR forum. I apply some change for friendly merge and in my testing, I was able to get the updated stats number and the increase effect in combat.
      I'll look how to did.

      [EDIT] Well you just apply a few selected buff. Mine simply look to all.
    3. Akatoshka7
      Akatoshka7
      • premium
      • 81 kudos
      I guess yes, your code is better because it takes into account any possible effect. However, since in the vanilla game only these six effects are involved in runestones, and besides them my code simply uses the original chance calculation, I consider my solution generally acceptable.
    4. ElementaryLewis
      ElementaryLewis
      • premium
      • 706 kudos
      A fine one for Classic 1.32 enjoyer player.
    5. frztdmn
      frztdmn
      • member
      • 1 kudos
      I´ve looked at the script in the atackAction.ws file and I´m wondering if making this change would allow the mod to work on Next Gen.private function FillDataFromWeapon()
      {
      var inv : CInventoryComponent;
      var i, size : int;
      var dmgTypes : array< name >;
      var buffs : array<SEffectInfo>;
      var actorAttacker : CActor;

      inv = attacker.GetInventory();

      actorAttacker = ( CActor ) attacker;
      if ( actorAttacker )
      {
      size = inv.GetWeaponDTNames(weaponId, dmgTypes);
      for( i = 0; i < size; i += 1 )
      AddDamage( dmgTypes[i], actorAttacker.GetTotalWeaponDamage(weaponId, dmgTypes[i], crossbowId) );

      size = inv.GetItemBuffs(weaponId, buffs);
      for( i = 0; i < size; i += 1 )
      {
      //modFixChanceOfEffectsOnSwords++
      if(actorAttacker == thePlayer)
      {
      if(buffs[i].effectType == EET_Bleeding) buffs[i].applyChance = CalculateAttributeValue(thePlayer.GetAttributeValue('desc_bleedingchance_mult'));
      if(buffs[i].effectType == EET_Bleeding1) buffs[i].applyChance = CalculateAttributeValue(thePlayer.GetAttributeValue('desc_bleedingchance_mult'));
      if(buffs[i].effectType == EET_Bleeding2) buffs[i].applyChance = CalculateAttributeValue(thePlayer.GetAttributeValue('desc_bleedingchance_mult'));
      if(buffs[i].effectType == EET_Bleeding3) buffs[i].applyChance = CalculateAttributeValue(thePlayer.GetAttributeValue('desc_bleedingchance_mult'));
      if(buffs[i].effectType == EET_Poison) buffs[i].applyChance = CalculateAttributeValue(thePlayer.GetAttributeValue('desc_poinsonchance_mult'));
      if(buffs[i].effectType == EET_Burning) buffs[i].applyChance = CalculateAttributeValue(thePlayer.GetAttributeValue('desc_burningchance_mult'));
      if(buffs[i].effectType == EET_Stagger) buffs[i].applyChance = CalculateAttributeValue(thePlayer.GetAttributeValue('desc_staggerchance_mult'));
      if(buffs[i].effectType == EET_SlowdownFrost) buffs[i].applyChance = CalculateAttributeValue(thePlayer.GetAttributeValue('desc_freezingchance_mult'));
      if(buffs[i].effectType == EET_Confusion) buffs[i].applyChance = CalculateAttributeValue(thePlayer.GetAttributeValue('desc_confusionchance_mult'));
      }
      //modFixChanceOfEffectsOnSwords--

      AddEffectInfo(buffs[i].effectType, , , buffs[i].effectAbilityName, ,buffs[i].applyChance);
      }

      if( theGame.CanLog() && dmgTypes.Size() == 0 && buffs.Size() == 0 )
      {
      LogDMHits( "Weapon " + inv.GetItemName( weaponId ) + " has no damage and no buff stats defined - it will do nothing!" );
      }
      }
      }

      I have no idea how to check If it works, I did a test with a new game, merged successfully and there was no problem at the launch the game. I did a test using a sword with a Devana Rune and a sword with 2% stat likely to cause bleeding, The stats of the sword are increased when placing the rune and when hitting enemies the red bleeding activation signs appear. But I don't know how I can check if the percentage activation on hit is equal or higher when using the sword without the rune placed. Can anyone confirm?
       
    6. ElementaryLewis
      ElementaryLewis
      • premium
      • 706 kudos
      Or use Brothers In Arms. We just discuss you don't need the mod when BiA already fix it.
    7. frztdmn
      frztdmn
      • member
      • 1 kudos
      I plan to play with BiA and use it as a base for a better collection of mods, I already have some that I know are compatible, but I need to test with others and learn more about modding to make compatible with BiA mods that I like but that at the moment are not compatible but that will be after I can finish the game with the collection of mods that I already have,  since it would be my first time playing The Witcher 3 with mods. I discovered BiA very late, after having built up a large collection of mods, and since my last game was ruined by the corruption of a save, I had to start over. For now I'd like to know if the small modification I made to the script would work, I'm just trying to apply the little bit I know about modding.
    8. Akatoshka7
      Akatoshka7
      • premium
      • 81 kudos
      Well, I guess yes, this change is okay. Of course, I can't be sure about the need to add EET_Bleeding1, EET_Bleeding2 and EET_Bleeding3, since I don't know what this is used for in NG, but it's unlikely that this code will interfere with anything.
    9. ElementaryLewis
      ElementaryLewis
      • premium
      • 706 kudos
      Those new EET_Bleeding1 are from FCR3 for introducing the new Wolf set bonus.
      Basically, each adrenaline point adds the possibility to cause more bleeding effect on the enemy, so they lost more HP.

      Further that, Wolf set increase its sword damage by 1% for each piece when they are more stackable bleeding on each enemy, so in full gear, it gives 6% damage for each bleeding.
      For example, one enemy has one bleeding and other has two bleeding, then the sword got 18% boost damage in total.
    10. Akatoshka7
      Akatoshka7
      • premium
      • 81 kudos
      Wow, that's interesting... although a little overwrought in my opinion.
    11. ElementaryLewis
      ElementaryLewis
      • premium
      • 706 kudos
      I agree. It's better than classic, but still not than others set bonus.
    12. Akatoshka7
      Akatoshka7
      • premium
      • 81 kudos
      Personally, I reworked it for myself this way: oils increases the chance of a critical strike by 5% and gives +1 additional oil on the blade at a time (that is, a maximum of 6) per item. And I also reworked the “poisoned blades” skills, adding not only the poison, but also bleeding or paralysis (you get one of the three by chance), the Wolf set increases the chance of work this skill by 2% per item.
    13. frztdmn
      frztdmn
      • member
      • 1 kudos
      Including the effects EET_Bleeding1, EET_Bleeding2, and EET_Bleeding3 in the mod script would prevent the wolf set bonuses in Next Gen from being nullified when using a Rune of Devana.
  5. frztdmn
    frztdmn
    • member
    • 1 kudos
    eliminated