Yeah not sure why, but that method did stop working for me, so it might have just been a wierd bug or delay in actual targeting. However, I've actually made some major progress the last couple days in regard to eliminating the need for a double tap, as well as including an automatic melee autofollow. But I want to refine it some more. Though the secret was in the order of the keystrokes in the spam.
My current assist me key resembles:
Assist Mapped Key:
Step1:
send keystroke shift+alt+t > all other DPS
send keystroke shift+alt+f > all other melee
send variable keystroke target slot {slot} > all other DPS
- Code:
<?xml version="1.0" encoding="utf-8"?>
<Box xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<ObjectType>ISBoxer_Toolkit.Configs.KeyMaps.MappedKey</ObjectType>
<SerializedObject><?xml version="1.0" encoding="utf-8"?>
<MappedKey xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Name>Assist Me</Name>
<Description>To use this Hotkey, you must:
1. Give it a Hotkey
2. Configure the 'Assist Target' Variable Keystroke. (In the top left pane, select Variable Keystrokes, then find it in the bottom left)
3. Configure each of the "Target Slot #" Variable Keystrokes, for each Slot in your Character Set. (In the top left pane, select your Character set. Then in the bottom left pane, click each Slot number. Click 'Variable Keystrokes' tab in the bottom right. Add Target Slot 1, Target Slot 2, etc, giving it the Hotkey this character needs to press in order to Target each other character)</Description>
<Combo>
<Combo>Alt+A</Combo>
<Modifiers>Alt</Modifiers>
<Key>
<Key>A</Key>
<Code>30</Code>
</Key>
</Combo>
<Hold>
<Value>true</Value>
</Hold>
<UseFTLModifiers>
<Value>false</Value>
</UseFTLModifiers>
<SendNextClickBlockLocal>false</SendNextClickBlockLocal>
<ManualLoad>false</ManualLoad>
<ResetTimer>0</ResetTimer>
<ResetType>Never</ResetType>
<Mode>OnPressAndRelease</Mode>
<Steps>
<Step>
<Stick>0</Stick>
<Stop>false</Stop>
<Stump>false</Stump>
<Actions>
<MappedKeyAction xsi:type="VariableKeystrokeAction">
<Target>other Melee</Target>
<Name>Follow Target</Name>
<RoundRobin>false</RoundRobin>
<UseFTLModifiers>false</UseFTLModifiers>
</MappedKeyAction>
<MappedKeyAction xsi:type="Keystroke">
<Target>other DPS</Target>
<Combo>
<Combo>Shift+Alt+T</Combo>
<Modifiers>Shift Alt</Modifiers>
<Key>
<Key>T</Key>
<Code>20</Code>
</Key>
</Combo>
<RoundRobin>false</RoundRobin>
<UseFTLModifiers>false</UseFTLModifiers>
</MappedKeyAction>
<MappedKeyAction xsi:type="VariableKeystrokeAction">
<Target>other DPS</Target>
<Name>Target Slot {SLOT}</Name>
<RoundRobin>false</RoundRobin>
<UseFTLModifiers>false</UseFTLModifiers>
</MappedKeyAction>
</Actions>
</Step>
</Steps>
</MappedKey></SerializedObject>
</Box>
DPS Rotation Mapped Key:
step1:
sendd o mapped key action to virtual combat keymap > all
send do mapped key action to combat hotkeys > all
- Code:
<?xml version="1.0" encoding="utf-8"?>
<Box xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<ObjectType>ISBoxer_Toolkit.Configs.KeyMaps.MappedKey</ObjectType>
<SerializedObject><?xml version="1.0" encoding="utf-8"?>
<MappedKey xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Name>DPS Rotation</Name>
<Description />
<Combo>
<Combo>1</Combo>
<Modifiers>None</Modifiers>
<Key>
<Key>1</Key>
<Code>2</Code>
</Key>
</Combo>
<Hold>
<Value>true</Value>
</Hold>
<SendNextClickBlockLocal>false</SendNextClickBlockLocal>
<ManualLoad>false</ManualLoad>
<ResetTimer>0</ResetTimer>
<ResetType>Never</ResetType>
<Mode>Default</Mode>
<Steps>
<Step>
<Stick>0</Stick>
<Stop>false</Stop>
<Stump>false</Stump>
<Actions>
<MappedKeyAction xsi:type="MappedKeyExecuteAction">
<Target>all</Target>
<RoundRobin>false</RoundRobin>
<KeyMapString>Virtual Combat</KeyMapString>
<MappedKeyString>DPS Rotation</MappedKeyString>
</MappedKeyAction>
<MappedKeyAction xsi:type="MappedKeyExecuteAction">
<Target>self</Target>
<RoundRobin>false</RoundRobin>
<KeyMapString>Non-combat</KeyMapString>
<MappedKeyString>Assist Me</MappedKeyString>
</MappedKeyAction>
</Actions>
</Step>
</Steps>
</MappedKey></SerializedObject>
</Box>
My Virtual Combat per character keymaps resemble:
DPS:
Step1:
send keystroke 0 to action target group <class>
send keystroke 9 to action target group <class>
send keystroke 8 to action target group <class>
...
send keystroke 1 to action target group <class>
- Code:
<?xml version="1.0" encoding="utf-8"?>
<Box xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<ObjectType>ISBoxer_Toolkit.Configs.KeyMaps.MappedKey</ObjectType>
<SerializedObject><?xml version="1.0" encoding="utf-8"?>
<MappedKey xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Name>DPS Rotation</Name>
<Description />
<SendNextClickBlockLocal>false</SendNextClickBlockLocal>
<ManualLoad>false</ManualLoad>
<ResetTimer>0</ResetTimer>
<ResetType>Never</ResetType>
<Mode>Default</Mode>
<Steps>
<Step>
<Stick>0</Stick>
<Stop>false</Stop>
<Stump>false</Stump>
<Actions>
<MappedKeyAction xsi:type="Keystroke">
<Target>Guardian</Target>
<Combo>
<Combo>0</Combo>
<Modifiers>None</Modifiers>
<Key>
<Key>0</Key>
<Code>11</Code>
</Key>
</Combo>
<RoundRobin>false</RoundRobin>
<UseFTLModifiers>false</UseFTLModifiers>
</MappedKeyAction>
<MappedKeyAction xsi:type="Keystroke">
<Target>Guardian</Target>
<Combo>
<Combo>9</Combo>
<Modifiers>None</Modifiers>
<Key>
<Key>9</Key>
<Code>10</Code>
</Key>
</Combo>
<RoundRobin>false</RoundRobin>
<UseFTLModifiers>false</UseFTLModifiers>
</MappedKeyAction>
<MappedKeyAction xsi:type="Keystroke">
<Target>Guardian</Target>
<Combo>
<Combo>8</Combo>
<Modifiers>None</Modifiers>
<Key>
<Key>8</Key>
<Code>9</Code>
</Key>
</Combo>
<RoundRobin>false</RoundRobin>
<UseFTLModifiers>false</UseFTLModifiers>
</MappedKeyAction>
<MappedKeyAction xsi:type="Keystroke">
<Target>Guardian</Target>
<Combo>
<Combo>7</Combo>
<Modifiers>None</Modifiers>
<Key>
<Key>7</Key>
<Code>8</Code>
</Key>
</Combo>
<RoundRobin>false</RoundRobin>
<UseFTLModifiers>false</UseFTLModifiers>
</MappedKeyAction>
<MappedKeyAction xsi:type="Keystroke">
<Target>Guardian</Target>
<Combo>
<Combo>6</Combo>
<Modifiers>None</Modifiers>
<Key>
<Key>6</Key>
<Code>7</Code>
</Key>
</Combo>
<RoundRobin>false</RoundRobin>
<UseFTLModifiers>false</UseFTLModifiers>
</MappedKeyAction>
<MappedKeyAction xsi:type="Keystroke">
<Target>Guardian</Target>
<Combo>
<Combo>5</Combo>
<Modifiers>None</Modifiers>
<Key>
<Key>5</Key>
<Code>6</Code>
</Key>
</Combo>
<RoundRobin>false</RoundRobin>
<UseFTLModifiers>false</UseFTLModifiers>
</MappedKeyAction>
<MappedKeyAction xsi:type="Keystroke">
<Target>Guardian</Target>
<Combo>
<Combo>4</Combo>
<Modifiers>None</Modifiers>
<Key>
<Key>4</Key>
<Code>5</Code>
</Key>
</Combo>
<RoundRobin>false</RoundRobin>
<UseFTLModifiers>false</UseFTLModifiers>
</MappedKeyAction>
<MappedKeyAction xsi:type="Keystroke">
<Target>Guardian</Target>
<Combo>
<Combo>3</Combo>
<Modifiers>None</Modifiers>
<Key>
<Key>3</Key>
<Code>4</Code>
</Key>
</Combo>
<RoundRobin>false</RoundRobin>
<UseFTLModifiers>false</UseFTLModifiers>
</MappedKeyAction>
<MappedKeyAction xsi:type="Keystroke">
<Target>Guardian</Target>
<Combo>
<Combo>2</Combo>
<Modifiers>None</Modifiers>
<Key>
<Key>2</Key>
<Code>3</Code>
</Key>
</Combo>
<RoundRobin>false</RoundRobin>
<UseFTLModifiers>false</UseFTLModifiers>
</MappedKeyAction>
<MappedKeyAction xsi:type="Keystroke">
<Target>Guardian</Target>
<Combo>
<Combo>1</Combo>
<Modifiers>None</Modifiers>
<Key>
<Key>1</Key>
<Code>2</Code>
</Key>
</Combo>
<RoundRobin>false</RoundRobin>
<UseFTLModifiers>false</UseFTLModifiers>
</MappedKeyAction>
</Actions>
</Step>
</Steps>
</MappedKey></SerializedObject>
</Box>
My variable keystroke table is as follows:
shift+alt+5 shift+alt+1 shift+alt+2 shift+alt+3
shift+alt+1 shift+alt+5 shift+alt+2 shift+alt+3
shift+alt+1 shift+alt+2 shift+alt+5 shift+alt+3
shift+alt+1 shift+alt+2 shift+alt+3 shift+alt+5
In Game mapped Keys are:
shift+alt+1 = Target Party Slot 1
shift+alt+2 = Target Party Slot 2
shift+alt+3 = Target Party Slot 3
shift+alt+5 = Target Party Slot 5
shift+alt+f = Follow Target
shift+alt+t = acquire target's target
I also ensure that the characters in my team are created in the order of their loading, to attempt tor ensure a consistent party load order.