This would be a whole lot cooler if you used an SVN For hosting so people could dynamically update the bot on the fly
Hi, Joe. I have use this routines. It pretty good. But I have an issue. The bot would stuck and generate HLL errors when run for a moment. Below is the log. Code: [16:33:40.202 N] Killing Republic Artillery Soldier with 100% health at 19.25 meters [16:33:41.369 N] [JoesCombat] Attackers List (Block 1) Duration: 5 [16:33:41.373 N] [JoesCombat] Initiating Combat with Republic Artillery Soldier InGroup: False My Spec: MarauderAnnihilation [16:33:41.375 N] [JoesCombat] TWR Dur: 0ms [16:33:41.375 N] [JoesCombat] LoadVar Dur: 11ms [16:33:41.390 N] [JoesCombat] SoG: N HP: 100.0 RS: 000.0 AC: 1 CTScale: 1.0 TD: 19.3 THP: 100.00 Comp: NONE CHP: 100.0 Casting Force Charge [16:33:41.642 N] [JoesCombat] Waiting for Cast Duration: 0 [16:33:41.805 N] [JoesCombat] Attackers List (Block 1) Duration: 10 [16:33:41.836 N] [JoesCombat] TWR Dur: 0ms [16:33:41.836 N] [JoesCombat] LoadVar Dur: 41ms [16:33:42.005 N] [JoesCombat] MoveTo: Republic Artillery Soldier Moving to within 0.4 from dist of 1.5 current LOS: True [16:33:42.144 D] Generating path to <-30.5267, -23.55312, 91.4266> [16:33:42.177 D] Raycast path generated. [16:33:42.177 D] Generated path to <-30.5267, -23.55312, 91.4266> () with 1 hops. [16:33:43.396 N] [JoesCombat] SoG: N HP: 100.0 RS: 003.0 AC: 1 CTScale: 1.0 TD: 0.6 THP: 84.12 Comp: Vette CHP: 100.0 Casting Rupture [16:33:43.648 N] [JoesCombat] Waiting for Cast Duration: 0 [16:33:43.809 N] [JoesCombat] Attackers List (Block 1) Duration: 8 [16:33:43.849 N] [JoesCombat] TWR Dur: 0ms [16:33:43.849 N] [JoesCombat] LoadVar Dur: 47ms [16:33:44.220 N] [JoesCombat] Attackers List (Block 1) Duration: 9 [16:33:44.245 N] [JoesCombat] TWR Dur: 0ms [16:33:44.245 N] [JoesCombat] LoadVar Dur: 34ms [16:33:44.591 D] [HLL] Dictionary contains 0 key already. Value: 0 [16:33:44.591 D] [HLL] Dictionary contains 0 key already. Value: -12.93068 [16:33:44.591 D] [HLL] Dictionary contains 0 key already. Value: 0 [16:33:44.591 D] [HLL] Dictionary contains 35982300 key already. Value: 1.212639E-37 [16:33:44.591 D] [HLL] Dictionary contains 35982932 key already. Value: 0 [16:33:44.591 D] [HLL] Dictionary contains 0 key already. Value: -44.9611 [16:33:44.591 D] [HLL] Dictionary contains 0 key already. Value: 0 [16:33:44.591 D] [HLL] Dictionary contains -1064737206 key already. Value: 1 [16:33:44.591 D] [HLL] Dictionary contains 1034451788 key already. Value: 1 Can you fix it?
1. Try updating the PullDist setting to something like 3.0f - it may be that because of that range the mob isn't being targeted because it's more than 20m out? 2. Try the latest (I removed the 'break;' in the Pull Block) If neither of the above work, I'm not sure what may be causing it on your system. And if the above doesn't work and you come up with anything that does-the-trick, let me know. Routine is SorcererCombat(), in MercHelpers.cs. Joe
1. Let me know how it's being run (i.e. with DoRandomGrind on, with a Grinding Profile, or a Questing Profile). 2. Where it's being run (i.e. which planet/area) 3. HLL errors are GUARANTEED to happen periodically, there's only so much I can do on that. The question is to how long the bot goes Ape-Shit. If it's more than say 5s, then yes I'd say it's a problem. You can try updating the BotDefaultPriority to Realtime or Low (read the first post for details on updating MercHelpers.cs if you're not running C#/C# Express to do the edit). Setting the bot priority (DefaultBotPriority) to Realtime will ensure that when the bot 'throws a fit with HLL', it will end the fit quickly. However, on older/slower systems, that may cause other issues I won't get into. Joe
I'm running with a grinding profile for Marauder (Annihilation) at planet Taris. I have tired to bot at other planets too, it occur same HLL error when bot for about an hour.
Ok, updated MarauderCombat in re: to movement, and an UpdateObjects() that I should have removed - let me know if any improvement. Joe
Hey Joe, Could you take a look at Smuggler - gunslinger - Dirtyfighting. Its running alot and in my oppinion using a really bad routine. Its Always trying to get at the same position as the mob, to do blaster whip and then berserks around do some low ability abilities. Also your spechandler for Smuggler is off, it should be: Code: case AdvancedClass.Gunslinger: tree1 = SkillTreeId.GunslingerSharpshooter; tree2 = SkillTreeId.GunslingerSaboteur; tree3 = SkillTreeId.GunslingerDirtyFighting; break;
Ok, thanks Mr. Expert. Send me your update to it. Edit: 1. Read the startup info. In the Ability Detection, you'll see the line [JoesCombat] Spec overridden to: GunslingerDirtyFighting This is done as the .exe doesn't properly detect the spec (ongoing issue, reported at least a few months back). If you make the update you proposed, still doesn't work, tested it. Not a reversal, but WITHIN THE .EXE, PERIOD. 2. I honestly don't play the spec, and since it was tagged as 'Dirty Fighting' I'd assumed it was a Melee Spec, so mybad on that. Try and be a little more 'diplomatic' if you could, please. Joe
Sure mate, wasnt meant negative in any way!!! I know tree3 is not selected by the bot sadly, so i changed spechandler to Always give me tree3 for my smuggler. In the beginning it gave me the wrong spec, cause in your release sharpshooter was tree 3 and dirtyfighting tree 1. My last post gives the correct order. Yeah dirty fighting is basically a ranged spec, with melee in it. Still at current it goes running a lot and never comes to its good abilities. Basically i try to follow this routine SWTOR Gunslinger DPS Class Guide - Dulfy Still many abilities you get later on. Also the routine on Dulfy, is mostly to long. If you got good gear and melee/tank comp then you'll burn threw them like hell Shrap bomb is obtainable at lvl 20 Wounding Shots at lvl 30 And Hemorrhaging Blast at lvl 45 XS Freighter flyby lvl 48 As opener i would do the following: - drop shield - Aimed Shot (this one takes a few secs to cast and below level 40 normal mobs its mostly an (almost) kill on the weakest target) - XS Freighter flyby (if got ability and grouppack (grouppack is almost Always an issue)) - Scrambling field is currently on leveling, not much of a dealbreaker... Additional info: PvE Strategies •Cover placement should be in range of all the mobs you are going to need to kill, because you don't want to have to move. •Ideally, use Scrambling Field/Ballistic Shield when your group is about to take a ton of damage. Strategic use of this skill can save the group from a wipe. •Diversion is useful to debuff accuracy on all mobs in PvE except for Operation Bosses, as of Patch 1.1.2. •Flourish Shot/Shatter Shot debuffs armor by 20% and should be kept up on the main DPS target at all times. It is on a very short cooldown, and does not have a prohibitive energy cost. •Quickdraw/Takedown has a low energy cost and is very damaging. As soon as a mob gets below 30% health, it should always be kept on cooldown. •Remember that your energy regenerates more slowly at lower levels. Keep it above 50%, and you probably won't run out. Every PvE build should consider having the following abilities, as they are all Tier 1:•Dirty Fighting/Lethality•No Holds Barred/Lethality (3 points) - Increases crit on ranged and tech abilities by 3%. This is ALL of your skills. [Edit] What i would add, if a mob comes to melee range do the following: - Dirty Kick (4 sec stun) - Vital shot (bleed) - Blaster Whip (instant) - Pulse Detonator(knockback) - then normal routine (by then they are mostly dead) For the ability Quickdraw there is the following: - Quickdraw is useable if target is at or below 30% - Quickdraw is also useable if the following occurs: 1.Dirty Shot: Wounding Shots has a 45% to finish the CD of Quickdraw, and makes your next Quickdraw usable on any target The ability Distraction is the interrupt ability. [/Edit] Pure currently contains this routine and i think its a good base to work from there to a better leveling build. Btw is it possible to put points in your ability tree as you level from the routine?
Updated last night - you can check the first post - DPS on it should be MUCH higher now. Made ranged, and tried to exploit the Bleeds. Routine is GunslingerCombat() (note it supports all three specs, and the spec, now, is basically ignored as all three specs are now ranged). Due to the spec bug I added code a few months back to override the spec on startup to Dirty Fighting (thus the message on startup) to Dirty Fighting if it sees the ability Wounding Shots. And I believe most if not all of your points are already covered, only so many hours in the day.... Thanks Joe
Joe, thanks for the update! Runs MUCH better now Additional notes: It sometimes Casts Sweeping Gunfire with only one mob ( i think this is duo line 2586) Plus you got a spelling error on line 2787 (Sweepging should be Sweeping) Also would it be possible to face the targeted mob before using Crouch? It sometimes got its mob on the side or behind me (which looks pretty darn bottish Again thanks!
Think I got it all (and added Saboteur as well) - let me know if you see anything else. Saboteur seems great at AOE/DoTs, but the single-target DPS doesn't seem as good, but mebbe something I'm doin wrong on it. Joe
I love the ability to zone out while farming dailies or kuat and this profile works very well for that. It's helped me level ~6 characters to 55 with this off and on and I'm on number 7 the sniper. This routine and it's not casting cull. It looks like it's currently checking for self buffs on poisoned tech so I changed it to check the target for the "Poisoned (Tech)" buff. I tried to fix it with this, but it breaks the script. Maybe someone who knows the syntax better can correct it. if (MercCast("Cull", OccurCount(CTDebuffs.Contains, "Poisoned (Tech)") >= 2)) break; The warrior tank profile is spamming the AOE slow ability Chilling Scream when not in range or just in range of mobs. I commented it out because it looks bottish and at a certain level it costs rage to spam it. It seems like a PVP or niche PVE raiding move -- is there any reason to have it in a PVE rotation? I think it gives a free attack or something if slow is on the target. Also for warriors, I tried using the DPS profile but it's constantly taunting. Which leads me to another question. The new tank mode switch is bound to the NumPad Plus key which is also the key to swap between target lowest health. Target lowest health has some odd behavior for melee classes because sometimes you're going from the melee mobs near you to a ranged mob at distance to a melee mob nearby. I generally turned that off, but with tanks the "target lowest" toggle seems to be no longer working. Thanks for all the work on this great profile. -- 056
Hey Joe, Was just wondering what's up with inquisitor? It stands still, too far away from target and just mashes an attack it can't complete. Causing a log out of inactivity
As in no Skill Tree? If you're 55 with no Skill Tree/Spec, sorry but there's not much I can do there. Joe