Demonbuddy is ready and released, happy Season 14!
  • Visit Rebornbuddy
  • Visit Exilebuddy
  • Visit Demonbuddy

  • Unknownbuddy 5/20 slots taken, private ESP for PUBG.

Ultima - The Ultimate Combat Routine

Discussion in 'Combat Routines' started by Endus, Nov 25, 2014.

  1. Endus

    Endus Community Developer

    Joined:
    Jul 9, 2012
    Messages:
    457
    Likes Received:
    5
    Trophy Points:
    0
    [​IMG]

    The Ultimate Combat Routine

    [​IMG]

    [​IMG]

    Introduction
    Finally, here it is. The (hopeful) successor to Magitek, built upon the (CoRoutine) foundation of MoreDots. Huge shoutout to Exmortem and Wheredidigo for all their support along the way. This Combat Routine wouldn't exist without their influence/aid.

    Features
    All Classes/Jobs 1-50 Single Target DPS
    DPS Classes/Jobs 1-50 Multi Target DPS
    On The Fly Class/Job Switching
    Chocobo Support
    SMN Pet Support (Currently Only Manually Controlling Garuda)

    Currently In Development
    50-60 Leveling For All Classes/Jobs
    Fully Implementing All Cross-Class Skills ***You Will NOT Be Able To Check The Check-Boxes Of Cross-Class Skills That Are Not Currently Implemented***
    Implementing Proper Tanking/Healing Logic

    Change Log
    (re-download Ultima any time you see a new line added here)
    Code:
    [U]8/9/15[/U]
    Fixed AoE Bug
    Fixed Armor Crush Logic
    Improved Ninjutsu Logic
    Fixed WAR Bugs
    Fixed BRD Bugs
    
    [U]8/1/15[/U]
    Improved Movement Code
    Improved Overall Cast Logic
    Fixed Dismount Bug (Fixed Disconnect Bug)
    Improved Ninjutsu Casting
    
    [U]7/26/15[/U]
    Improved Chocobo Summoning Logic || Thanks to [B]heinzskies[/B]
    Improved Ninjutsu Logic
    Added Movement Workaround (For Dismount Bug)
    
    [U]7/22/15[/U]
    Fixed Movement Bug
    Improved NIN Ninjutsu Logic
    
    [U]7/20/15[/U]
    Fixed Friendly Cast Bug
    Fixed Mounted Casting Issue
    Fixed BRD IronJaw
    Fixed Location Casting Issue
    Fixed Facing Issue
    Fixed DRG Bugs
    Fixed MNK Bugs
    Fixed BRD Bugs
    Improved BRD Rotation
    Improved Cast Method
    Improved Move Method
    
    [U]7/15/15[/U]
    Improved WHM Mana Usage
    Improved Spell Queuing
    Improved Cast Location Randomization
    
    [U]7/14/15[/U]
    Added Randomized Location Casting || Thanks To [B]Alexander[/B] (YourRaidingBuddy) And [B]Cloud[/B]
    Added Spell Queuing
    Fixed LNC/DRG CT Combo
    
    [U]7/12/15[/U]
    Improved DRK Target Transition Logic
    Improved CNJ/WHM Protect Logic
    Overhaul DRK Logic
    
    [U]7/11/15[/U]
    Fixed NIN Armor Crush
    Fixed MNK Elixir Field
    Improved Overall Casting Targeting Logic
    Fixed Friendly Targeting Bug
    Fixed NIN Rotation
    Fixed MNK Rotation
    Fixed DRG Rotation
    
    [U]7/10/15[/U]
    Added HW MNK Rotation
    Added New Settings for BRD/MCH/DRG/NIN/MNK
    Improved DRG Rotation
    Improved NIN Rotation
    Improved MCH Turret Logic
    
    [U]7/9/15[/U]
    Fixed BRD The Wanderer's Minuet
    Fixed NIN Duality
    Fixed Friendly Targeting
    Fixed CNJ/WHM Protect Logic
    Adjusted CNJ/WHM Stoneskin II Logic
    Improved MCH Rotation
    Added HW DRG Rotation
    Added HW NIN Rotation
    Added HW BRD Rotation
    
    [U]7/8/15[/U]
    Fixed Stoneskin II Logic
    Fixed Cleric Stance Logic
    Adjusted Targeting Logic
    
    [U]7/7/15[/U]
    Fixed OnLocation (Now TargetLocation) Cast and Movement Logic
    Added SelfLocation (To Cast Location Spells On Player Rather Than Target)
    Improved MCH Turret Logic
    Fixed MCH Reassemble Logic
    Added WHM Healing Logic
    Added WHM Settings
    Improved Goad Logic
    Updated Spell Library
    
    [U]6/28/15[/U]
    Fixed Movement Bug
    Fixed Suiton Logic
    Fixed Trick Attack Null Error
    Fixed MCH Settings
    Fixed DRK Settings
    Improved Movement Logic
    Improved AoE Logic
    Improved Pet Logic
    Improved Ninjutsu Logic
    
    [U]6/27/15[/U]
    Added Support For AST/DRK/MCH
    Tweaked AoE Logic
    Adjusted Role/Goad Logic
    Fixed DRK Chocobo Logic
    Fixed MCH Hawk's Eye and Reassemble Logic
    
    [U]6/11/15[/U]
    Corrected DRG AoE Logic || Thanks [B]exaccuss[/B]
    
    [U]6/7/15[/U]
    Updated Cross-Class GUI
    Improved Goad Logic
    Tweaked Movement Logic
    
    [U]6/6/15[/U]
    Fixed Cleric Stance
    Fixed Goad Logic
    Fixed CNJ/WHM DPS Rotation
    Fixed Movement Logic
    
    [U]6/5/15[/U]
    Improved Bard Song Logic || Thanks [B]oruna[/B]!
    
    
    [U]6/3/15[/U]
    Fixed ARC/SCH/SMN Rotation
    Fixed LNC/DRG Impulse Drive
    Improved Overall AoE Logic
    Fixed PGL/MNK Fists Of Earth Logic
    Rebuilt Auto-Goad Logic To Be Class/Job Specific || Thanks to [B]Wheredidigo[/B] for the advice
    
    [U]6/2/15[/U]
    (Hopefully) Fixed Dismount Issue
    Completely Rebuilt/Simplified Ultima's Core
    Added Setting For Default CR (Prevents Being Prompted On Every Class/Job Change) || Thanks [B]Neverdyne[/B]
    Added Rotation Settings/Overlay
    Added Logic For Spell Shapes || Big Thanks To [B]Neverdyne[/B]
    Added AoE Rotations For All DPS Classes/Jobs.
    Added Settings For PGL/MNK Fists
    Added Settings For PLD Oaths
    Added Setting For Shield Swipe And Improved Logic
    Improved THM/BLM Transpose Logic
    Improved ARC/SCH/SMN Summoning Logic
    Improved ARC/SCH/SMN Self-Healing Logic
    Fixed CNJ/WHM Self-Healing Logic.
    Added Smart Cleric Stance Swapping For CNJ/WHM/SCH
    Added Auto-Goad For ROG/NIN
    Maybe More? I've Lost Track... lol
    
    [U]5/16/15[/U]
    Fixed GUI Issues
    
    [U]4/21/15[/U]
    Fixed Chocobo Dismount Bug
    
    [U]4/20/15[/U]
    Fixed Targeting Logic Error (Null Exceptions)
    Fixed Dismount Issue
    Rebuilt Rest Logic (To Know When We're In Town/Sprinting)
    
    [U]4/19/15[/U]
    Updated Movement/Pull Code To Be Compatible With RebornBuddy's New System
    Fixed CR Selection Screen (Big Thanks To [B]Wheredidigo[/B] for the code)
    
    [U]3/26/15[/U]
    Added New Option For ROG/NIN (Poison Auras)
    Fixed LNC/DRG Rotation
    
    [U]3/25/15[/U]
    Improved ROG/NIN Rotation
    Added New Options For ROG/NIN (Dancing Edge and Ninjutsu Usage)
    Improved LNC/DRG Rotation
    Added Crafting/Gathering Job Support (Shouldn't Crash When Switching Jobs)
    
    [U]3/1/15[/U]
    Rebuilt THM/BLM
    Modified Recent Spell Dictionary (Not User Friendly Yet)
    
    [U]1/25/15[/U]
    Fixed Summoner MP Issues
    
    [U]1/24/15[/U]
    Improved Ninjutsu System
    
    [U]1/21/15[/U]
    Fixed Chocobo Summoning
    Fixed Various Movement Issues
    Fixed Various Targeting Issues
    Fixed Summoner Off-GCD Issues
    Fixed Summoner Shadow Flare Logic
    Improved Movement Cast Logic
    Completely Rebuilt Ninjutsu System
    Minor Performance Improvements
    Added SVN
    
    [U]12/18/14[/U]
    Fixed Pugilist/Monk Precombat Logic
    Fixed Ninja Pull Logic
    
    [U]12/17/14[/U]
    Improved Pugilist/Monk Rotation Logic (Thanks Azoth!)
    Improved Pull Logic
    Updated DoT/Buff Expiration Values
    
    [U]12/14/14[/U]
    Revamped Spell Library To Support Spell IDs
    Completely Rebuilt Off-GCD Method
    Fixed Lancer/Dragoon Impulse Drive Logic
    
    [U]12/9/14[/U]
    Minor Fixes/Improvements To Base Classes
    Updated Heavy Thrust, Impulse Drive, and Chaos Thrust Logic
    Removed Impulse Drive From All Cross-Classes
    Rebuilt Spell Library
    Improved OnLocation Casting
    ]Added More Intelligent GCD Management
    Added Execute Settings To Relevant Classes/Jobs
    
    [U]12/5/14[/U]
    Rebuilt Monk/Pugilist Profile
    
    [U]12/4/14[/U]
    Miscellaneous Code Improvements
    
    [U]12/3/14[/U]
    Fixed Pre-Combat Logic For Arcanist, Scholar, Summoner, Gladiator, Paladin
    Changed Pull Logic For Arcanist, Scholar, Summoner
    Small Change To Dragoon Rotation Logic
    
    [U]12/2/14[/U]
    Added Rest Logging
    Fixed Dragoon Power Surge Logic
    Fixed Dragoon Life Surge Logic
    Made Minor Improvements to Summoner Logic
    Fixed Paladin Sword Oath Logic
    
    [U]12/1/14[/U]
    Fixed Dragoon Pull Logic
    Fixed Typos
    Fixed Dragoon Full Thrust Logic
    Rebuilt Summoner Logic For Better Mana Efficiency
    
    [U]11/30/14[/U]
    Fixed Dragoon Full Thrust/Life Surge Interaction
    Added More Settings
    
    [U]11/29/14[/U]
    Eliminated Cast Spamming While Moving
    Fixed WHM Fluid Aura Logic
    Fixed SMN Swiftcast/Shadow Flare Logic
    Added Shroud Of Saints To CNJ/WHM For MP Recovery
    Reduced Heal Spam (On All Classes/Jobs That Currently Use Heals)
    Improved Pull Logic For All Classes/Jobs
    
    [U]11/25/14[/U]
    Rebuilt Off-GCD Logic || Shout-Out To [B]Ichiba[/B] For The Advice
    Fixed Ninjutsu Loop
    Added Life Surge to Lancer/Dragoon Rotation
    Release
    To any Community Developers out there: Feel free to chime in if you see anything that can be improved or if you have anything you want to contribute.

    [​IMG]

    SVN Checkout
    https://subversion.assembla.com/svn/ultimacr/
     

    Attached Files:

    Last edited: May 21, 2016
    Tinytox likes this.
  2. Wheredidigo

    Wheredidigo Community Developer

    Joined:
    Dec 15, 2013
    Messages:
    414
    Likes Received:
    8
    Trophy Points:
    0
    YAY! For finally getting this out to the public. I look forward to seeing how it does for everyone.
     
  3. Ichiba

    Ichiba New Member

    Joined:
    Jun 14, 2014
    Messages:
    258
    Likes Received:
    7
    Trophy Points:
    0
    Cool. Should probably have some settings and should check a gcd so it doesn't delay gcd abilities by doing non gcd abilities, but otherwise it looks kind of neat.
     
    Last edited: Nov 26, 2014
  4. exaccuss

    exaccuss Active Member

    Joined:
    Nov 10, 2013
    Messages:
    1,022
    Likes Received:
    5
    Trophy Points:
    38
    Tested out dragoon. Not bad at all. However, Please include settings for abilities. For example dragoon: the jumps, leg sweep etc etc. What really surprised me is life surge does not get used at all.
     
  5. Endus

    Endus Community Developer

    Joined:
    Jul 9, 2012
    Messages:
    457
    Likes Received:
    5
    Trophy Points:
    0
    I currently have all non-gcd abilities set to only cast during the gcd (unless I missed some, which is totally possible lol). Although, I will say that I've noticed it will try to cast too many skills during the gcd sometimes (clipping out of the gcd a bit). Let me know if you notice any specific examples. I'll try to improve the logic.

    Yeah that's my bad. I had actually already coded Life Surge and just forgot to put it in the rotation lol. I've updated the CR with the correct rotation. Let me know if it works how you'd expect it to (I didn't get the chance to test it, I'm off to work).

    I also forgot to put in settings for interrupts (in case you want to save them) and for some class/job spells (like Dragoon jumps). I'll get those in ASAP. Thanks for reminding me.
     
    Last edited: Nov 25, 2014
  6. Dgame

    Dgame New Member

    Joined:
    Aug 19, 2014
    Messages:
    319
    Likes Received:
    0
    Trophy Points:
    0
    Thank you for your hard work. Will mob aoe detection and evasion eventually be included?
     
  7. Endus

    Endus Community Developer

    Joined:
    Jul 9, 2012
    Messages:
    457
    Likes Received:
    5
    Trophy Points:
    0
    Evasion isn't too hard. Detection is the kicker. To my knowledge, there's currently no way to detect if an AoE spell is being cast/what kind of AoE spell it is (short of making a huge enemy spell database, which could be a possibility but would take a long time to complete). We could just move every time a mob casts a spell but that would end up clunky and jittery (especially since I don't think the bot can move and cast at the same time, I could be wrong about that though).

    I think its going to take the combined effort of mastahg and all the Community Devs to figure out a good solution for that one. If I finish the base of the CR (single target, AoE, tanking, healing, etc.) and there still isn't a good solution I'll try to rig something up.
     
    Last edited: Nov 25, 2014
  8. exaccuss

    exaccuss Active Member

    Joined:
    Nov 10, 2013
    Messages:
    1,022
    Likes Received:
    5
    Trophy Points:
    38
    When do you think aoe will be added in? When it will, will you be adding aoe toggle too?
     
  9. Endus

    Endus Community Developer

    Joined:
    Jul 9, 2012
    Messages:
    457
    Likes Received:
    5
    Trophy Points:
    0
    If there aren't too many issues with the single target rotation it'll be added pretty soon. I would also include a toggle for it (both were supposed to be in for launch but after weeks of development I decided to release what I had lol).
     
  10. kagamihiiragi17

    kagamihiiragi17 Community Developer

    Joined:
    Jun 24, 2014
    Messages:
    873
    Likes Received:
    23
    Trophy Points:
    0
    I've been running it as a low-level Gladiator with no major issues or complaints. It's not a very complex rotation at low level though. :)

    I will vote for actual settings like other people have mentioned, I would like to be able to change pull range and rest HP/MP/TP and the other standard stuff I can normally play with. It's a great first release though, love that it supports cross-class skills, and I look forward to seeing it get better.

    EDIT: Something else I've just noticed, does the bot move to LOS of an enemy if it targets an enemy that then moves out of LOS? I found the bot got a target from Order Bot which was out of its LOS, and instead of moving to LOS to pull, it just sat there until I moved it to LOS. Not 100% sure of the sequence of events in that scenario, it's just a question.
     
    Last edited: Nov 25, 2014
  11. Endus

    Endus Community Developer

    Joined:
    Jul 9, 2012
    Messages:
    457
    Likes Received:
    5
    Trophy Points:
    0
    Pull range should be dynamic. It should cast a spell as soon as it can (so like for Gladiator, if Shield Lob is set as a pull spell, it should cast it as soon as it's in range and then move in range for the melee abilities).

    The Rest settings I could add. I was trying to avoid settings that could cause users to break the CR (like setting the incorrect range in Magitek did) but I'll try to figure something out for Power Users.

    As for the movement issue, did it actually have a target? Current movement logic only moves to Core.Target/CurrentTarget. I've noticed sometimes Fatebot will stop moving before it targets anything (possibly because the intended target isn't in LoS) but my CR has no targeting logic so that falls solely on the botbase. If the botbase fails to control targeting I don't have a failsafe in place yet (but that only happened rarely and resolved itself once the PoI refreshed).

    If you actually had a target I might need to adjust something. It should detect that the target isn't in LoS and resolve it. I never tested with Order bot (only Fate and ExCombat) so there might be an issue there.
     
    Last edited: Nov 25, 2014
  12. kagamihiiragi17

    kagamihiiragi17 Community Developer

    Joined:
    Jun 24, 2014
    Messages:
    873
    Likes Received:
    23
    Trophy Points:
    0
    It actually probably didn't have a target specifically, but it did have a POI. That makes a bit more sense.
     
  13. sorenelise

    sorenelise Member

    Joined:
    Dec 4, 2011
    Messages:
    188
    Likes Received:
    0
    Trophy Points:
    16
  14. markiemark425

    markiemark425 New Member

    Joined:
    Oct 31, 2014
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    0
    Ive been running this as a paladin grinding on mobs and its working beautifully. Wonderful work.
     
  15. sorenelise

    sorenelise Member

    Joined:
    Dec 4, 2011
    Messages:
    188
    Likes Received:
    0
    Trophy Points:
    16
    Routine stops after I resurrect. I wasn't specific in my last post...sorry
     
  16. Ichiba

    Ichiba New Member

    Joined:
    Jun 14, 2014
    Messages:
    258
    Likes Received:
    7
    Trophy Points:
    0
    No, it does what you said, but that's not really what I meant. Animation lock makes it so if you do something like a cooldown like blood for blood 50ms before your GCD is ready, you'll have to wait something like 950ms with a gcd ready before it can actually do it. You can do

    Actionmanager.CurrentActions.TryGetValue("LowLevelGCD", out SomeSpellData);

    and then check SomeSpellData.Cooldown.TotalMilliseconds >= 1000 before doing off-gcd actions so the animation lock of an off-gcd action doesn't delay a gcd.

    Also, you should probably add !MovementManager.IsMoving || Core.Me.HasAura("Swiftcast") to spells that have a cast time so it doesn't just spam the heck out of them while you're moving around.
     
  17. Endus

    Endus Community Developer

    Joined:
    Jul 9, 2012
    Messages:
    457
    Likes Received:
    5
    Trophy Points:
    0
    The log 2572 2014-11-25 13.29.txt is using Kupper not Ultima. ;)

    The second log it looks like it got stuck in a Ninjutsu loop due to me leaving in an unnecessary redundancy. I've updated the OP with a new version. Try it and see if it fixes the problem for you. :cool:

    Yeah I originally had a movement check for spells with cast times for classes that didn't have an instant to spam but it looks like I forgot to work it back in after a revamp I did on the spellbook. I'll try to add that back in soon. Thanks for the reminder.

    As for the animation lock, thanks for the heads up. I'm gonna try something and if it works I'll report back and update the OP with the improved logic. :)

    EDIT: Well, thanks to the Console I now know some spells don't return a cooldown. Heavy Thrust (Lancer/Dragoon) will return a cooldown but True Thrust is always 0. Hrm...
     
    Last edited: Nov 25, 2014
  18. sorenelise

    sorenelise Member

    Joined:
    Dec 4, 2011
    Messages:
    188
    Likes Received:
    0
    Trophy Points:
    16
    I switched to kupper after the freeze, thanks for the update.
     
  19. exaccuss

    exaccuss Active Member

    Joined:
    Nov 10, 2013
    Messages:
    1,022
    Likes Received:
    5
    Trophy Points:
    38
    Another thing for dragoon, can we have an option on what to use power surge with? It's just i was under the impression that power surge should only be used with jump as it benefits the most from it. (based on guides and the rotation reborn thread)
     
  20. tmk147

    tmk147 New Member

    Joined:
    Oct 4, 2014
    Messages:
    21
    Likes Received:
    0
    Trophy Points:
    1
    I've been using Ultima all morning as a Bard and haven't run into any problems yet. I do have a question about what the default rest HP and rest energy are though. I don't see an option to change those values in the settings, so I was wondering what it was.
     

Share This Page