Demonsdance
New Member
- Joined
- Nov 16, 2013
- Messages
- 12
- Reaction score
- 0
Is the action cache meant to be incomplete for now on some classes? I wanted to try to complete a Monk routine.
Is the action cache meant to be incomplete for now on some classes? I wanted to try to complete a Monk routine.
All the skills that require forms to use (which are grayed unless you're in the form) are not being loaded. Anyway to manually load them, or can you make them load?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Windows.Forms;
using ff14bot;
using ff14bot.Enums;
using ff14bot.Managers;
using ff14bot.Navigation;
using ff14bot.Objects;
using TreeSharp;
using Action = TreeSharp.Action;
namespace Kupo.Rotations
{
public class PugilistMonk : KupoRoutine
{
public override int PullRange
{
get { return 5; }
}
public override ClassJobType[] Class
{
get { return new ClassJobType[]{ClassJobType.Monk, ClassJobType.Pugilist};}
}
protected override Composite CreatePull()
{
return new PrioritySelector(
r => Actionmanager.InSpellInRangeLOS("Bootshine", Core.Target),
new Decorator(r => (r as SpellRangeCheck?) == SpellRangeCheck.ErrorNotInRange, new Action(r => Navigator.MoveTo(Core.Target.Location))),
Cast("Bootshine", r => (r as SpellRangeCheck?) == SpellRangeCheck.Success || (r as SpellRangeCheck?) == SpellRangeCheck.ErrorNotInFront)
);
}
protected override Composite CreateCombatBuffs()
{
return new PrioritySelector(
Apply("Blood for Blood",r=> true, r=>Core.Player),
Apply("Internal Release",r=> true, r=>Core.Player)
);
}
protected override Composite CreateHeal()
{
return new PrioritySelector(
Cast("Second Wind", r => Core.Player.HealthPercent <= 40, r => Core.Player)
);
}
protected override Composite CreateCombat()
{
return new PrioritySelector(
Apply("Fracture"),
Cast("Snap Punch"),
Cast("Twin Snakes"),
Cast("Bootshine")
);
}
}
}
I got the same issue eventually, your file fixed it for me too.Replace kuporoutine.cs with this:
using System; using System.Collections.Generic; using System.Linq; using Syst - Pastebin.com
Let me know if it still throws an error.
Is there any way you can make so bot skips an unreachable target after x seconds?Question
Is there any way you can make so bot skips an unreachable target after x seconds?
protected override Composite CreatePull()
{
return new PrioritySelector(
//Checking to see if we're in range -- If not, move to the location
new Decorator(
r => Actionmanager.InSpellInRangeLOS("Heavy Shot", Core.Target) == SpellRangeCheck.ErrorNotInRange,
new Action(r => Navigator.MoveTo(Core.Target.Location))),
//Checking to see if we're not facing the target -- If not, face it
new Decorator(
r => Actionmanager.InSpellInRangeLOS("Heavy Shot", Core.Target) == SpellRangeCheck.ErrorNotInFront,
new Action(r => Core.Target.Face())),
//We'll open with a Heavy Shot for heavy
Cast("Heavy Shot", r => Actionmanager.InSpellInRangeLOS("Heavy Shot", Core.Target) == SpellRangeCheck.Success)
);
}
Cast("Aetherflow", r => Core.Player.ManaPercent <= 80, r => Core.Player),
[15:48:18.461 D] DoAction Spell 121 1073783713
[15:48:18.471 N] Applying Bio
[15:48:18.527 N] Applying Virus
[15:48:18.539 N] Applying Energy Drain
[15:48:18.594 N] Casting Ruin
protected override Composite CreateCombat()
{
return new PrioritySelector(
Apply("Bio"),
Apply("Aero"),
Apply("Virus"),
Apply("Aetherflow"),
Apply("Energy Drain"),
Cast("Ruin", r => true)
);
}
Hi Mashtag,
Quick question, was trying to revamp the Arcanist and noticed that Core.Player.ManaPercent existed in the FFbot Objects, is it usable? For Arcanist that have a spell that restores 20% MP so in order to keep the mana up since the bot just go full throttle killing mode without stopping (my type of kill style hehe). I was trying to add the following line to the combatbuff section. Will the following line work?
Code:Cast("Aetherflow", r => Core.Player.ManaPercent <= 80, r => Core.Player),
Okay so I stopped trying to be cute with the code and said might as well spam the Aetherflow spell
But in the long it doesn't try to cast it.
Code:[15:48:18.461 D] DoAction Spell 121 1073783713 [15:48:18.471 N] Applying Bio [15:48:18.527 N] Applying Virus [15:48:18.539 N] Applying Energy Drain [15:48:18.594 N] Casting Ruin
Here's the lines for it, not sure why it isn't casting.
Code:protected override Composite CreateCombat() { return new PrioritySelector( Apply("Bio"), Apply("Aero"), Apply("Virus"), Apply("Aetherflow"), Apply("Energy Drain"), Cast("Ruin", r => true) ); }
Apply("Aetherflow",onTarget:r=>Core.Player),
Use this:
Code:Apply("Aetherflow",onTarget:r=>Core.Player),
Cast("Aetherflow", r => true , r=> Core.Player),
Overall:
Ability to change pathing heuristic has been added, find it under the new settings button on the main menu.
Added global exception logging
Kupo:
Fix null reference exception
Add basic pugilist and monk class support
You really shouldn't have that problem unless its a fate mob that's running since the fate ended. If its a regular mob, you probably should make a more complex spider web typed Mesh profile so it knows how to navigate around obstacles.
In the mashtag revised routines he has a setup that should move to target if its not in range. This is what I use for my archer.
- I have a mob in a spot that is unreachable unless through jumping, it's right next to a farm spot. The bot always ends up trying to go for that mob at some point and I get stuck running in place.
- What does this new heuristic option do?
- I would love to see some GUI way of exporting Rotations or even creating them.