Jump to content

Fire Control - "proper" Chain Fire For Mwo / Tag Toggle / Jump Jet Spam [Fc 3.0.7 - 30Th Jan 2017]


542 replies to this topic

#281 Gaulwa

    Member

  • PipPipPipPipPip
  • Little Helper
  • Little Helper
  • 139 posts

Posted 22 January 2015 - 08:59 AM

Hi, first, I must mention the game operates some kind of conversion between azerty and qwerty.

In the settings, my keyboard has a qwerty layout. pressing A would register Q, pressing &é"'(- register 123456. But if I open the chat and write, it is correctly set to azerty.
Maybe the game is partly to blame.

Yes, the code exhibit the issue.
SetKeyDelay, 0, 50
 
F12::
   Send {1}
   return


But surely, there is a way to send the keys &é"'(- from a script? They probably have a special code.

Edited by Gaulwa, 22 January 2015 - 11:11 AM.


#282 Gaulwa

    Member

  • PipPipPipPipPip
  • Little Helper
  • Little Helper
  • 139 posts

Posted 22 January 2015 - 11:29 AM

Back from some test,
SetKeyDelay, 0, 50

F12::
   Send {&}
   return


This code works in a notepad, but does NOTHING in-game. It is supposed to be the azerty key for 1.
I press & on my keyboard, my weapon fire.
I send & in a script, nothing happen.
I send 1 in a script, game interpret it as shift+& and fire with arm lock (or anything linked to shift)

#283 evilC

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,298 posts
  • LocationLondon, UK

Posted 24 January 2015 - 12:19 PM

The ganme is probably reading the keyboard via "ScanCodes" - this only cares about the position, not what is written on the key.
Sending & is not triggering that obviously.

I will see what I can find out.

#284 evilC

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,298 posts
  • LocationLondon, UK

Posted 24 January 2015 - 12:23 PM

Made a post here: http://ahkscript.org....php?f=5&t=6092

#285 Gaulwa

    Member

  • PipPipPipPipPip
  • Little Helper
  • Little Helper
  • 139 posts

Posted 25 January 2015 - 04:32 PM

What I don't understand is why can I not simply send "&" as a signal?
Why pressing "&" on my keyboard works, and does not from a script. There must be a difference somewhere.
Also, do I have a way to send "ScanCodes" from script?

Edited by Gaulwa, 26 January 2015 - 09:12 AM.


#286 evilC

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,298 posts
  • LocationLondon, UK

Posted 02 February 2015 - 10:44 AM

Try {&}

If that does not work, try this test version:
http://evilc.com/fil...rl/firectrl.exe

#287 Gaulwa

    Member

  • PipPipPipPipPip
  • Little Helper
  • Little Helper
  • 139 posts

Posted 02 February 2015 - 03:45 PM

I can confirm this works:
SetKeyDelay, 0, 50
 
F12::
   Send {&}
   return

SetKeyDelay, 0, 50
F12::
Send {"}
return

SetKeyDelay, 0, 50
 
F12::
   Send {'}
   return

SetKeyDelay, 0, 50
 
F12::
   Send {(}
   return

SetKeyDelay, 0, 50
 
F12::
   Send {-}
   return


Each key works fine separately and trigger their respective weapon group.


I tried to put {"},{'},{(},{-} or ",',(,- in the firing sequence, does not work. each time I trigger the fire sequence with 'RIGHT MOUSE', the only visible effect is 'Arrow up' as each click move the selection bar up in the weapon groups.
Tested on both versions. The normal one, and the one from your previous message.

Edited by Gaulwa, 02 February 2015 - 07:16 PM.


#288 evilC

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,298 posts
  • LocationLondon, UK

Posted 06 February 2015 - 01:33 AM

Well I have been trying to find you a solution, but nada so far.

I did try to engage the AHK developer on the subject, but he seriously gave me the cold shoulder.

Basically, the response seems to be "working as intended". I don't know what to do really :(
Not having an AZERTY keyboard, and not even knowing how for sure I could test such a thing, even if I did (Would I need to change language too?), I don't see any other choice but to wait for someone to come along with the answer or me to find some time to work out a solution.
As I mentioned on my UJR thread (see sig), Fire Control's days are numbered (pun intended) anyway, so I will try to bear this problem in mind with the new system.

#289 evilC

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,298 posts
  • LocationLondon, UK

Posted 06 February 2015 - 01:53 AM

Ah, well after his flippant response, he did toss me a nugget of info.

It seems that this can potentially be worked around using "Unicode".

If you have AHK installed, could you please perform the following test:

SetKeyDelay, 0, 50
 
F12::
   Send {U+31}
   return

Please test this on the "ANSI 32-Bit" and "Unicode 32-bit" versions of AutoHotkey. Just double-click the entry in "Manage Programs And Features" to switch version of AHK.

Edited by evilC, 06 February 2015 - 01:54 AM.


#290 MadLibrarian

    Member

  • PipPipPipPipPipPip
  • Urban Commando
  • Urban Commando
  • 334 posts
  • Twitter: Link
  • Twitch: Link
  • LocationYou Essay

Posted 06 February 2015 - 01:58 AM

Good stuff. Thanks for the effort EvilC.

Edited by MadLibrarian, 06 February 2015 - 02:13 AM.


#291 evilC

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,298 posts
  • LocationLondon, UK

Posted 06 February 2015 - 02:14 AM

View PostMadLibrarian, on 06 February 2015 - 01:58 AM, said:

Good stuff. Thanks for the effort EvilC.

It's a pity it can be used for this, but that's life I suppose.
Personally not a tactic I use unless I am playing with my comp team, I think it is kinda lame.

I just use it to avoid wrist ache when climbing hills.

#292 MadLibrarian

    Member

  • PipPipPipPipPipPip
  • Urban Commando
  • Urban Commando
  • 334 posts
  • Twitter: Link
  • Twitch: Link
  • LocationYou Essay

Posted 06 February 2015 - 02:25 AM

View PostevilC, on 06 February 2015 - 02:14 AM, said:

It's a pity it can be used for this, but that's life I suppose.
Personally not a tactic I use unless I am playing with my comp team, I think it is kinda lame.

I just use it to avoid wrist ache when climbing hills.


Sorry I edited it because I though it might have come across like I was actually blaming you, but wasn't meaning to. Thought I got in quick enough, but I guess not. :P

#293 Gaulwa

    Member

  • PipPipPipPipPip
  • Little Helper
  • Little Helper
  • 139 posts

Posted 06 February 2015 - 03:41 AM

View PostevilC, on 06 February 2015 - 01:33 AM, said:

Basically, the response seems to be "working as intended". I don't know what to do really :(
Not having an AZERTY keyboard, and not even knowing how for sure I could test such a thing, even if I did (Would I need to change language too?), I don't see any other choice but to wait for someone to come along with the answer or me to find some time to work out a solution.
As I mentioned on my UJR thread (see sig), Fire Control's days are numbered (pun intended) anyway, so I will try to bear this problem in mind with the new system.


Thanks again for your efforts.
As mentioned in my previous message, the different Send {'} are working perfectly fine. I could make a macro with it and play without FireCtrl, which lead me to think the problem comes from the way FireCtrl handle the firing sequence.

If I use unicode, wouldn't that simply move the problem? I suppose it will press ALT every time. I'll try.


To test different keyboard layout, it's very easy. ANd you do not need to change windows language. (If you are running windows. I don't know for other OS)
0) Right click the windows taskbar > toolbar > language bar
1) Right click the language 'bar' (it's only an icon) > settings
2) General tab, installed services, click the Add button.
3) Select you language > more keyboard > French keyboard

Il the list will appear your different configurations which I assure are going to be:
English > Keyboard United Kingdom
English > Keyboard French

You can move them up and down to change priority, right click the language bar to switch, or, I highly recommend, go to the Advanced Key Settings tab, and either set a keyboard shortcut to switch, or a separate shortcut for each setting.

#294 evilC

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,298 posts
  • LocationLondon, UK

Posted 06 February 2015 - 04:15 AM

OK, so if you have French keyboard, you have the problem, but English not? OK, I can maybe test then.

No, sending unicode will not hold ALT. You only need to use ALT to type special characters in certain cases - this isn't "typing" them.

It may take a little work, but a solution is on the horizon - I am chatting with a guy now who is helping me find a decent solution.

#295 evilC

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,298 posts
  • LocationLondon, UK

Posted 06 February 2015 - 04:39 AM

OK, I think we have the first part of a workable solution.

Please test this code:

Edit: Dammit, the forum is mangling my code, see here.

Try replacing "1" with different stuff and see how it handles it.

Edited by evilC, 06 February 2015 - 04:41 AM.


#296 Gaulwa

    Member

  • PipPipPipPipPip
  • Little Helper
  • Little Helper
  • 139 posts

Posted 06 February 2015 - 10:18 AM

Tested with the following fire chain: 1,2,3,4,5,6 translated to azerty and then to Unicode: {U+0026},{U+00E9},{U+0022},{U+0027},{U+0028},{U+002D}

As expected on the standard version, FireCtrl simply try to press all keys together, so only the numbers 2 and 6 have any real effect. And something probably break in the script since on mouse up, it trigger arrow up effect.

So I tried to make my own macro:

Quote

SetKeyDelay, 0, 50
F12::
Send {&}
Sleep 500
Send {é}
Sleep 500
Send {"}
Sleep 500
Send {'}
Sleep 500
Send {(}
Sleep 500
Send {-}
Sleep 500
return

(send as quote because the code mangle the é character.) Works perfectly fine.

I could not find how to switch AHK to unicode, sorry.

Edit: now testing your unicode bandaid script :)

Edited by Gaulwa, 06 February 2015 - 10:27 AM.


#297 evilC

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,298 posts
  • LocationLondon, UK

Posted 07 February 2015 - 10:04 AM

Yeah, DO NOT attempt to put those characters in Fire Control, it will not work.

Just try the script I posted to see if it can translate "1" into the correct unicode char for you.

#298 Gaulwa

    Member

  • PipPipPipPipPip
  • Little Helper
  • Little Helper
  • 139 posts

Posted 08 February 2015 - 05:33 AM

You script does correctly translate "1" when tested in a text box.
The script has no effect in-game.

I also tried making a unicode macro, based on the previous one:
SetKeyDelay, 0, 50
F12::
Send {U+0026}
Sleep 500
Send {U+00E9}
Sleep 500
Send {U+0022}
Sleep 500
Send {U+0027}
Sleep 500
Send {U+0028}
Sleep 500
Send {U+002D}
Sleep 500
return

This macro has no effect. Did I do something wrong? Or maybe MWO simply does not accept unicode input.

Edited by Gaulwa, 08 February 2015 - 05:35 AM.


#299 evilC

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,298 posts
  • LocationLondon, UK

Posted 08 February 2015 - 06:08 AM

Still bashing away at this one, but it can be hard at times as the AHK developer seems more concerned with trying to make me look like an idiot rather than actually being helpful.

Try this code:

#SingleInstance force
#NoEnv
 
key := GetKeyVK("1")
key := Format("{:x}",key)
 
F12::
    Send {vk%key%}
    return


#300 bravetoss

    Member

  • PipPip
  • Death Star
  • 20 posts

Posted 09 February 2015 - 01:03 AM

Hello, great program, but i encountered one issue. I bind key to Weapon toggle f.e. "T", but when i push T ingame, TAG or MGs are working well, but it also change my target! (I use Left shift for target lock). How can I fix that without changing target lock key?





3 user(s) are reading this topic

0 members, 3 guests, 0 anonymous users