• Visit Rebornbuddy
  • [Release] RebornBuddy64 Version 1.0.424 - DirectX11 / x64 bit compatible

    Discussion in 'Rebornbuddy Forum' started by mastahg, Feb 29, 2016.

    1. mastahg

      mastahg Administrator Staff Member

      Joined:
      Feb 27, 2011
      Messages:
      5,229
      Likes Received:
      364
      Trophy Points:
      83
      Were checking offset_e, can you confirm that its not 1 when you have it under some conditions?

      Version 293

      Code:
      
      GetTo:
      Fort Jobb teleport now works more reliably 
      Add the elevator in the tempest
      
      Kupo:
      Update basic gladiator/paladin rotation
      
      
      
       
    2. newb23

      newb23 Community Developer

      Joined:
      Nov 26, 2014
      Messages:
      397
      Likes Received:
      15
      Trophy Points:
      18
      @mastahg

      I'm not entirely sure what's going wrong, but I am not able to get the full properties list off of targetable and attackable objects after the patch today.

      I am running:
      Code:
      ClearLog();
      
      var s = Core.Me.CurrentTarget;
      {
       Log(s.EnglishName);
       foreach (var prop in s.GetType().GetProperties())
       {
        Log("\t" + prop.Name + ": " + prop.GetValue(s));
       }
      }
      And getting: You need to register and have one post to see spoilers!
      I have tried casting the objects to GameObjects (which they are by default), BattleCharacters, and Characters, with no luck. Targeting non-attackable things, like a SummoningBell, give the following (as a GameObject):
      You need to register and have one post to see spoilers!
      I believe the issue resides in `ff14bot.Objects.BattleCharacter.get_OmenMatrix()`, but that's just a guess from the stacktrace.
       
    3. mastahg

      mastahg Administrator Staff Member

      Joined:
      Feb 27, 2011
      Messages:
      5,229
      Likes Received:
      364
      Trophy Points:
      83
      Not sure if thats something that was really ever supported. But I've added a fix, it checks if inside that function is null. Also you can use the DynamicString() extension method to get a nice table for objects and you can pass the name of fields to not print, and names of fields with default values are excluded. Both that function and your method are slow due to reflection so only use in debugging.
       
    4. newb23

      newb23 Community Developer

      Joined:
      Nov 26, 2014
      Messages:
      397
      Likes Received:
      15
      Trophy Points:
      18
      Right on, thank you. It appears to be pulling in all the properties again.
       
    5. MKItt

      MKItt New Member

      Joined:
      Jul 19, 2019
      Messages:
      7
      Likes Received:
      1
      Trophy Points:
      3
      Thank you for the update! Busy with this as well if you can believe it! :) Thanks.
       
    6. iyake

      iyake Member

      Joined:
      Oct 19, 2014
      Messages:
      143
      Likes Received:
      5
      Trophy Points:
      18
      ShopExchangeCurrency.CanAfford is always returning 0

      Code:
      foreach (var i in SpecialShopManager.Items) {
         Log(i);
         Log(ShopExchangeCurrency.CanAfford(i));
      }
      Log(ConditionParser.ItemCount(25199));
      
      output:
      Code:
      SpecialShopItem: { CurrencyCosts: [15, 0, 0], CurrencyTypes: [25199, 0, 0], CollectabilityRequired: [0, 0, 257], HqCurrencies: [False, False, False], HqRewards: [False, False], Items: [Dzo Tenderloin, ], ItemIds: [27848, 0], Item0: Dzo Tenderloin, Item1: , SetSize: 1, TabIndex: 4 }
      0
      SpecialShopItem: { CurrencyCosts: [30, 0, 0], CurrencyTypes: [25199, 0, 0], CollectabilityRequired: [0, 0, 257], HqCurrencies: [False, False, False], HqRewards: [True, False], Items: [Dzo Tenderloin, ], ItemIds: [27848, 0], Item0: Dzo Tenderloin, Item1: , SetSize: 1, TabIndex: 4 }
      0
      SpecialShopItem: { CurrencyCosts: [15, 0, 0], CurrencyTypes: [25199, 0, 0], CollectabilityRequired: [0, 0, 257], HqCurrencies: [False, False, False], HqRewards: [False, False], Items: [Robe Lettuce, ], ItemIds: [27845, 0], Item0: Robe Lettuce, Item1: , SetSize: 1, TabIndex: 4 }
      0
      SpecialShopItem: { CurrencyCosts: [30, 0, 0], CurrencyTypes: [25199, 0, 0], CollectabilityRequired: [0, 0, 257], HqCurrencies: [False, False, False], HqRewards: [True, False], Items: [Robe Lettuce, ], ItemIds: [27845, 0], Item0: Robe Lettuce, Item1: , SetSize: 1, TabIndex: 4 }
      0
      SpecialShopItem: { CurrencyCosts: [15, 0, 0], CurrencyTypes: [25199, 0, 0], CollectabilityRequired: [0, 0, 257], HqCurrencies: [False, False, False], HqRewards: [False, False], Items: [Pixieberry, ], ItemIds: [27847, 0], Item0: Pixieberry, Item1: , SetSize: 1, TabIndex: 4 }
      0
      SpecialShopItem: { CurrencyCosts: [30, 0, 0], CurrencyTypes: [25199, 0, 0], CollectabilityRequired: [0, 0, 257], HqCurrencies: [False, False, False], HqRewards: [True, False], Items: [Pixieberry, ], ItemIds: [27847, 0], Item0: Pixieberry, Item1: , SetSize: 1, TabIndex: 4 }
      0
      SpecialShopItem: { CurrencyCosts: [15, 0, 0], CurrencyTypes: [25199, 0, 0], CollectabilityRequired: [0, 0, 257], HqCurrencies: [False, False, False], HqRewards: [False, False], Items: [Kriollo Kukuru Bean, ], ItemIds: [27846, 0], Item0: Kriollo Kukuru Bean, Item1: , SetSize: 1, TabIndex: 4 }
      0
      SpecialShopItem: { CurrencyCosts: [30, 0, 0], CurrencyTypes: [25199, 0, 0], CollectabilityRequired: [0, 0, 257], HqCurrencies: [False, False, False], HqRewards: [True, False], Items: [Kriollo Kukuru Bean, ], ItemIds: [27846, 0], Item0: Kriollo Kukuru Bean, Item1: , SetSize: 1, TabIndex: 4 }
      0
      SpecialShopItem: { CurrencyCosts: [15, 0, 0], CurrencyTypes: [25199, 0, 0], CollectabilityRequired: [0, 0, 257], HqCurrencies: [False, False, False], HqRewards: [False, False], Items: [King Salmon, ], ItemIds: [27844, 0], Item0: King Salmon, Item1: , SetSize: 1, TabIndex: 4 }
      0
      SpecialShopItem: { CurrencyCosts: [30, 0, 0], CurrencyTypes: [25199, 0, 0], CollectabilityRequired: [0, 0, 257], HqCurrencies: [False, False, False], HqRewards: [True, False], Items: [King Salmon, ], ItemIds: [27844, 0], Item0: King Salmon, Item1: , SetSize: 1, TabIndex: 4 }
      0
      SpecialShopItem: { CurrencyCosts: [500, 0, 0], CurrencyTypes: [25199, 0, 0], CollectabilityRequired: [0, 0, 257], HqCurrencies: [False, False, False], HqRewards: [False, False], Items: [Craftsman's Competence Materia VIII, ], ItemIds: [26735, 0], Item0: Craftsman's Competence Materia VIII, Item1: , SetSize: 1, TabIndex: 4 }
      0
      SpecialShopItem: { CurrencyCosts: [500, 0, 0], CurrencyTypes: [25199, 0, 0], CollectabilityRequired: [0, 0, 257], HqCurrencies: [False, False, False], HqRewards: [False, False], Items: [Craftsman's Cunning Materia VIII, ], ItemIds: [26736, 0], Item0: Craftsman's Cunning Materia VIII, Item1: , SetSize: 1, TabIndex: 4 }
      0
      SpecialShopItem: { CurrencyCosts: [500, 0, 0], CurrencyTypes: [25199, 0, 0], CollectabilityRequired: [0, 0, 257], HqCurrencies: [False, False, False], HqRewards: [False, False], Items: [Craftsman's Command Materia VIII, ], ItemIds: [26737, 0], Item0: Craftsman's Command Materia VIII, Item1: , SetSize: 1, TabIndex: 4 }
      0
      1769
      
       
    7. Neverdyne

      Neverdyne Community Developer

      Joined:
      Sep 12, 2014
      Messages:
      644
      Likes Received:
      18
      Trophy Points:
      18
      Hey Mastahg, do you think there's a chance to get the ability to lower item quality and/or split stack in BagSlot?
       
    8. Illu

      Illu New Member

      Joined:
      Oct 17, 2014
      Messages:
      22
      Likes Received:
      0
      Trophy Points:
      1
      Hey,
      It seems like SpellData.BaseCooldown isnt working as intended at the moment.
      SpellData.BaseCooldown is returning 0 at any time, which is interessting because SpellData.AdjustedCooldown is returning the correct values.
       
    9. mastahg

      mastahg Administrator Staff Member

      Joined:
      Feb 27, 2011
      Messages:
      5,229
      Likes Received:
      364
      Trophy Points:
      83
      Looks like white scrips was missing from the specialcurrencymanager, please check with the latest version and let me know if the issue still exists

      I'll take a look into it.

      I'll take a look but you probably should be using AdjustedCooldown if you care what it is for the player, and Cooldown to check what is left on the cooldown.



      Version 297
      Code:
      
      PartyManager:
      Partymanager will now return proper results while inside a trust.
      Several methods, properties, and classes were refactored so its likely precompiled dll's that interacted with the partymanager will need to be recompiled for the update
      
      
      SpecialCurrency.WhiteCraftersScrips added
      SpecialCurrency.WhiteGatherersScrips added
      
      BattleCharacter.Name will now read the name in the games memory for objects with npcid == 0, this will effect the npcs in trusts as well as chocobos, and possibly other areas as well.
      
      Object.DynamicString() will now properly display intptr properties as hex
      Object.DynamicString() will no longer display empty arrays
      
      
       
    10. Illu

      Illu New Member

      Joined:
      Oct 17, 2014
      Messages:
      22
      Likes Received:
      0
      Trophy Points:
      1
      Hey Mashtag,
      First of all thanks for adding Trust NPCs to the PartyManager!

      But it seems like this is resulting in some "inconvenience" I would say.
      We're currently filtering potential attackable NPCs while in a Party with "GameObjectManager.GetObjectsOfType<BattleCharacter>().Where(r => r.TaggerType == 2).ToList()".
      The point is with Trust NPCs added to "PartyManager.IsInParty" NPCs attacked and "tagged" by our fellow Trust-Members in dungeons wont return 2 for "BattleCharacter.TaggerType,
      they will either return 1 if we as a player hit them with some ability or return 0 if they weren't hit by the player yet.

      Another thing I discovered while investigating this issue is, while we're in a Alliance-Raid, everything our Party tag is returning TaggerType 2 like it should be,
      but everything that gets tagged by the two other partys will obviously result in 1 and Bosses will return TaggerType 0 everytime.

      So in general it would be nice to determine if we're in a Trust-Party, a Alliance-Raid-Party or "Normal"-Party.
       
      Last edited: Aug 5, 2019
    11. Illu

      Illu New Member

      Joined:
      Oct 17, 2014
      Messages:
      22
      Likes Received:
      0
      Trophy Points:
      1
      Hey again,

      Seems like I've made a mistake yesterday while observing the TaggerType changes for Trust NPC Targets.
      NPCs attacked/hit/tagged will change their TaggerType to 1 and not, like I stated in my previous post, 0.
      I guess my hasty put together code for the RBConsole lead me, due to poor formatting, into some wrong conclusions.
      At this point my guess is that you're reading TaggerType from an Offset, if that's not the case would it be possible to change TaggerType to actually return 2 when a Trust NPC or Alliance Raid Member has tagged something?
      Sorry for bothering you.
       
      Last edited: Aug 6, 2019
    12. kraftaddikt

      kraftaddikt Member

      Joined:
      Jul 3, 2015
      Messages:
      46
      Likes Received:
      4
      Trophy Points:
      8
      While working on writing some Dragoon combat logic, I kept running into this issue with the combos, mainly that Chaos Thrust, Wheeling Trust and Fang and Claw aren't available in the ActionManager after use. Since the combo action order for Dragoon changed with the release of 5.0, that might have something to do with it?

      Code:
      LastSpell Name: True Thrust
      Time left on Combo: 12.84901
      ---
      LastSpell Name: Disembowel
      Time left on Combo: 13.28636
      ---
      LastSpell Name: EmptySpell <- Used Chaos Thrust here
      Time left on Combo: 0
      ---
      LastSpell Name: EmptySpell <- Used Wheeling Thrust here
      Time left on Combo: 0
      ---
      LastSpell Name: EmptySpell <- Used Fang and Claw here
      Time left on Combo: 0
      ---
      LastSpell Name: True Thrust
      Time left on Combo: 12.91748
      ---
      LastSpell Name: Vorpal Thrust
      Time left on Combo: 12.78737
      ---
      LastSpell Name: Full Thrust
      Time left on Combo: 13.08021
      ---
      LastSpell Name: EmptySpell <- Used Fang and Claw here
      Time left on Combo: 0
      ---
      LastSpell Name: EmptySpell <- Used Wheeling Thrust here
      Time left on Combo: 0
      
      Though not lv76 yet, at lv76 after performing a Wheeling Thrust => Fang and Claw combo or a Fang and Claw => Wheeling Thrust combo, the player receives the aura "Raiden Thrust Ready" which changes True Thrust into Raiden Thrust. Raiden Thrust acts as True Trust in that sense of combo actions so those should behave the same way in regards to combos.
       
      Last edited: Aug 6, 2019
    13. Sodimm

      Sodimm Member

      Joined:
      Nov 8, 2014
      Messages:
      383
      Likes Received:
      7
      Trophy Points:
      18
      Code:
      Log(WorldManager.InSanctuary);
      always returns false.
       
    14. mastahg

      mastahg Administrator Staff Member

      Joined:
      Feb 27, 2011
      Messages:
      5,229
      Likes Received:
      364
      Trophy Points:
      83
      These actions likely modify the action resource manager.

      Please execute this
      Code:
      Log("struct: {0}",ActionResourceManager.CostTypesStruct);
      
      and paste the output here.

      Run it before and after casting each of the actions you had issues with and label them similarly so i can figure out what they are modifying.
       
    15. mastahg

      mastahg Administrator Staff Member

      Joined:
      Feb 27, 2011
      Messages:
      5,229
      Likes Received:
      364
      Trophy Points:
      83
      Should be working now.
       
    16. kraftaddikt

      kraftaddikt Member

      Joined:
      Jul 3, 2015
      Messages:
      46
      Likes Received:
      4
      Trophy Points:
      8
      I ran this four times, since I was now able to test the Combo action where True Thrust turns into Raiden Thrust if the positionals are met. I ran both combos in order, once with and once without positional triggers.
      There's some discrepancies in the data when the SpellName is populated depending on the rotation.

      True Thrust > Disembowel combo (no positionals) > True Thrust > Vorpal Thrust combo (no positionals)
      Code:
      // Idle, no action
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 0, timer2: 0, offset_8: 0, offset_9: 0, offset_A: 0, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Blood of the Dragon
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 18079, timer2: 1, offset_8: 159, offset_9: 70, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used True Thrust
      lastspell name: True Thrust
      combo time: 13.54395
      struct: ResourceTable: { timer: 15154, timer2: 1, offset_8: 50, offset_9: 59, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Disembowel
      lastspell name: Disembowel
      combo time: 13.16446
      struct: ResourceTable: { timer: 12444, timer2: 1, offset_8: 156, offset_9: 48, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Chaos Thrust
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 9794, timer2: 1, offset_8: 66, offset_9: 38, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Wheeling Thrust
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 17188, timer2: 1, offset_8: 36, offset_9: 67, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Fang and Claw (DID NOT DO POSITIONAL HERE, TRUE THRUST DID NOT UPGRADE TO RAIDEN THRUST)
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 23929, timer2: 1, offset_8: 121, offset_9: 93, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used True Thrust
      lastspell name: True Thrust
      combo time: 13.27134
      struct: ResourceTable: { timer: 21184, timer2: 1, offset_8: 192, offset_9: 82, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Vorpal Thrust
      lastspell name: Vorpal Thrust
      combo time: 13.83857
      struct: ResourceTable: { timer: 19062, timer2: 1, offset_8: 118, offset_9: 74, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Full Thrust
      lastspell name: Full Thrust
      combo time: 13.5773
      struct: ResourceTable: { timer: 16199, timer2: 1, offset_8: 71, offset_9: 63, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Fang and Claw
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 22894, timer2: 1, offset_8: 110, offset_9: 89, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Wheeling Thrust (DID NOT DO POSITIONAL HERE, TRUE THRUST DID NOT UPGRADE TO RAIDEN THRUST)
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 28773, timer2: 1, offset_8: 101, offset_9: 112, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used True Thrust
      lastspell name: True Thrust
      combo time: 12.82479
      struct: ResourceTable: { timer: 25266, timer2: 1, offset_8: 178, offset_9: 98, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      True Thrust > Disembowel combo (positionals) > True Thrust > Vorpal Thrust combo (positionals)
      Code:
      // Idle, no action
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 0, timer2: 0, offset_8: 0, offset_9: 0, offset_A: 0, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Blood of the Dragon
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 18318, timer2: 1, offset_8: 142, offset_9: 71, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used True Thrust
      lastspell name: True Thrust
      combo time: 13.44526
      struct: ResourceTable: { timer: 16227, timer2: 1, offset_8: 99, offset_9: 63, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Disembowel
      lastspell name: Disembowel
      combo time: 13.47926
      struct: ResourceTable: { timer: 12564, timer2: 1, offset_8: 20, offset_9: 49, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Chaos Thrust
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 9070, timer2: 1, offset_8: 110, offset_9: 35, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Wheeling Thrust
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 16433, timer2: 1, offset_8: 49, offset_9: 64, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Fang and Claw (DID POSITIONAL, TRUE THRUST UPGRADED TO RAIDEN THRUST)
      lastspell name: Fang and Claw
      combo time: 13.77715
      struct: ResourceTable: { timer: 23364, timer2: 1, offset_8: 68, offset_9: 91, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Raiden Thrust
      lastspell name: Raiden Thrust
      combo time: 13.58409
      struct: ResourceTable: { timer: 20467, timer2: 1, offset_8: 243, offset_9: 79, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Vorpal Thrust
      lastspell name: Vorpal Thrust
      combo time: 14.04773
      struct: ResourceTable: { timer: 16939, timer2: 1, offset_8: 43, offset_9: 66, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Full Thrust
      lastspell name: Full Thrust
      combo time: 13.66067
      struct: ResourceTable: { timer: 14039, timer2: 1, offset_8: 215, offset_9: 54, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Fang and Claw
      lastspell name: Fang and Claw
      combo time: 13.31007
      struct: ResourceTable: { timer: 21160, timer2: 1, offset_8: 168, offset_9: 82, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Wheeling Thrust
      lastspell name: Wheeling Thrust
      combo time: 13.44318
      struct: ResourceTable: { timer: 27296, timer2: 1, offset_8: 160, offset_9: 106, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Raiden Thrust(DID POSITIONAL, TRUE THRUST UPGRADED TO RAIDEN THRUST)
      lastspell name: Raiden Thrust
      combo time: 12.54093
      struct: ResourceTable: { timer: 22805, timer2: 1, offset_8: 21, offset_9: 89, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      
      True Thrust > Vorpal Thrust combo (no positionals) > True Thrust > Disembowel combo (no positionals)
      Code:
      // Idle, no action
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 0, timer2: 0, offset_8: 0, offset_9: 0, offset_A: 0, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Blood of the Dragon
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 18452, timer2: 1, offset_8: 20, offset_9: 72, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used True Thrust
      lastspell name: True Thrust
      combo time: 13.18286
      struct: ResourceTable: { timer: 15698, timer2: 1, offset_8: 82, offset_9: 61, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Vorpal Thrust
      lastspell name: Vorpal Thrust
      combo time: 13.48847
      struct: ResourceTable: { timer: 13440, timer2: 1, offset_8: 128, offset_9: 52, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Full Thrust
      lastspell name: Full Thrust
      combo time: 13.45954
      struct: ResourceTable: { timer: 11023, timer2: 1, offset_8: 15, offset_9: 43, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Fang and Claw
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 18727, timer2: 1, offset_8: 39, offset_9: 73, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Wheeling Thrust (DID NOT DO POSITIONAL HERE, TRUE THRUST DID NOT UPGRADE TO RAIDEN THRUST)
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 25456, timer2: 1, offset_8: 112, offset_9: 99, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used True Thrust
      lastspell name: True Thrust
      combo time: 13.48938
      struct: ResourceTable: { timer: 23163, timer2: 1, offset_8: 123, offset_9: 90, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Disembowel
      lastspell name: Disembowel
      combo time: 13.56982
      struct: ResourceTable: { timer: 20568, timer2: 1, offset_8: 88, offset_9: 80, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Chaos Thrust
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 17853, timer2: 1, offset_8: 189, offset_9: 69, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Wheeling Thrust
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 25061, timer2: 1, offset_8: 229, offset_9: 97, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Fang and Claw (DID NOT DO POSITIONAL HERE, TRUE THRUST DID NOT UPGRADE TO RAIDEN THRUST)
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 27760, timer2: 1, offset_8: 112, offset_9: 108, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used True Thrust
      lastspell name: True Thrust
      combo time: 12.54081
      struct: ResourceTable: { timer: 24745, timer2: 1, offset_8: 169, offset_9: 96, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      [CODE]
      
      True Thrust > Vorpal Thrust combo (positionals) > True Thrust > Disembowel combo (positionals)
      [CODE]
      // Idle, no action 
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 0, timer2: 0, offset_8: 0, offset_9: 0, offset_A: 0, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Blood of the Dragon
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 17657, timer2: 1, offset_8: 249, offset_9: 68, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used True Thrust
      lastspell name: True Thrust
      combo time: 13.21965
      struct: ResourceTable: { timer: 15077, timer2: 1, offset_8: 229, offset_9: 58, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Vorpal Thrust
      lastspell name: Vorpal Thrust
      combo time: 13.65621
      struct: ResourceTable: { timer: 12890, timer2: 1, offset_8: 90, offset_9: 50, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Full Thrust
      lastspell name: Full Thrust
      combo time: 13.37919
      struct: ResourceTable: { timer: 10278, timer2: 1, offset_8: 38, offset_9: 40, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Fang and Claw
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 17429, timer2: 1, offset_8: 21, offset_9: 68, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Wheeling Thrust (DID POSITIONAL, TRUE THRUST UPGRADED TO RAIDEN THRUST)
      lastspell name: Wheeling Thrust
      combo time: 13.52224
      struct: ResourceTable: { timer: 22007, timer2: 1, offset_8: 247, offset_9: 85, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Raiden Thrust
      lastspell name: Raiden Thrust
      combo time: 13.39009
      struct: ResourceTable: { timer: 18920, timer2: 1, offset_8: 232, offset_9: 73, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Disembowel
      lastspell name: Disembowel
      combo time: 13.69278
      struct: ResourceTable: { timer: 15774, timer2: 1, offset_8: 158, offset_9: 61, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Chaos Thrust
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 12623, timer2: 1, offset_8: 79, offset_9: 49, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Wheeling Thrust
      lastspell name: EmptySpell
      combo time: 0
      struct: ResourceTable: { timer: 19750, timer2: 1, offset_8: 38, offset_9: 77, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Fang and Claw (DID POSITIONAL, TRUE THRUST UPGRADED TO RAIDEN THRUST)
      lastspell name: Fang and Claw
      combo time: 13.4385
      struct: ResourceTable: { timer: 26794, timer2: 1, offset_8: 170, offset_9: 104, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      // Used Raiden Thrust
      lastspell name: Raiden Thrust
      combo time: 12.64375
      struct: ResourceTable: { timer: 23385, timer2: 1, offset_8: 89, offset_9: 91, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      -----------------------
      
      As you can see, once Raiden Thrust is used, the LastSpell.Name property has no problem setting the data for Fang and Claw and Wheeling Thrust. But going from Disembowel to Chaos Thrust seems to be an issue regardless.

      Does this data help?
       
    17. newb23

      newb23 Community Developer

      Joined:
      Nov 26, 2014
      Messages:
      397
      Likes Received:
      15
      Trophy Points:
      18
      @mastahg

      A use case I am exploring for BaseCooldown vs AdjustedCooldown is to tell if a skill is oGCD or not. Reasons why we would want to know if they tick the GCD or not, is for weaving purposes. EX: I need to single weave an ability before the next GCD, or I need to weave two (double weave).

      One of the methods @Illu thought of to check oGCD was to check SpellData.AdjustedCooldown != SpellData.BaseCoolDown, because only the GCD spells should be affected by Spell/Skill speed. oGCDs are set.

      Another method may be,
      Code:
                  foreach (var spell in ActionManager.CurrentActions)
                  {
                      if(spell.Value.BaseCooldown.TotalMilliseconds != 2500)
                          _ogcdSpells.Add(spell.Value);
                  }
      2500ms being the base for all GCD spells by default.
       
    18. mastahg

      mastahg Administrator Staff Member

      Joined:
      Feb 27, 2011
      Messages:
      5,229
      Likes Received:
      364
      Trophy Points:
      83
      Pretty sure you can just check the SpellType, SpellType.Ability should all be off the global.
       
    19. newb23

      newb23 Community Developer

      Joined:
      Nov 26, 2014
      Messages:
      397
      Likes Received:
      15
      Trophy Points:
      18
      Okay, so I tried doing just SpellType.Ability, and it leaves off SpellType.Spell, which makes sense. So I added those, but there were still oGCDs missing, so I I did !=SpellType.Weaponskill, which got almost all of them... But there are a few non-weaponskills that are GCD as well, such as Holy Spirit, Confiteor, and Clemency which are listed as SpellType.Spell.

      There's got to be some boolean that can be checked for it it ticks the GCD, hasn't there? If BaseCooldown can't be fixed?
       
    20. Illu

      Illu New Member

      Joined:
      Oct 17, 2014
      Messages:
      22
      Likes Received:
      0
      Trophy Points:
      1
      Hay,

      It seems like they sperated ActionResourceManager.Arcanist.Aetherflow into Aetherflow for Scholar and Aetherflow for Summoner. So ActionResourceManager.Arcanist.Aetherflow is actually retuning the correct values for Summoner but not for Scholar anymore, the Scholar Offset seems to be Offset_A

      ActionResourceManager.CostTypesStruct
      Code:
      struct: ResourceTable: { timer: 0, timer2: 3, offset_8: 0, offset_9: 0, offset_A: 3, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      struct: ResourceTable: { timer: 0, timer2: 2, offset_8: 0, offset_9: 0, offset_A: 2, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      struct: ResourceTable: { timer: 0, timer2: 1, offset_8: 0, offset_9: 0, offset_A: 1, offset_B: 0, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      
      ActionResourceManager.Scholar.FaerieGauge is also not returning the correct values and seems to be Offset_B now
      ActionResourceManager.CostTypesStruct
      Code:
      struct: ResourceTable: { timer: 0, timer2: 15360, offset_8: 0, offset_9: 0, offset_A: 0, offset_B: 60, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      struct: ResourceTable: { timer: 0, timer2: 20481, offset_8: 0, offset_9: 0, offset_A: 1, offset_B: 80, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      struct: ResourceTable: { timer: 0, timer2: 23040, offset_8: 0, offset_9: 0, offset_A: 0, offset_B: 90, offset_C: 0, offset_D: 0, offset_E: 0, offset_F: 0 }
      
       
      Last edited: Aug 12, 2019

    Share This Page