The Best Hover/Fly /bind EVER!!!


010101

 

Posted

I use E for flight and R for hover. Switching between the stages and hitting the keys is seamless and extremely fast. What am I missing?


 

Posted

Well I gave up, I can't get the game to load in Any file using
/bind_load_file

I tried quotes I tried /, \, no matter what I put in It says unable to read in bind file.

So I just did this -

r "++forward"
button5 "powexec_name fly$$powexec_name hover"
button4 "tell $name, Sprinting$$powexec_name Sprint"
lalt+button4 "tell $name, falling!$$powexec_name Sprint$$powexec_name Hover$$powexec_name Fly$$powexec_abort"

until I figure out what the hell is wrong.

so Mouse button 4 switches on and off sprint and mouse button 5 switches between fly and hover.
I put in lalt+button4 to drop me to the ground.

thanks for trying to help though.


 

Posted

Thanks Blue Volt!

My G key wasn't working, so I thought powexec_name abort just didn't work... and I guess it shouldn't because I'm doing it wrong.

As for turning off Hover... I just press the G key. That turns off (if the above fix gets it working) everything, including hover. My intention is to either be in the air, hovering, with speed on demand, for which I press the T key. Or, if I press the G key, I'll be on the ground with Speed on Demand.

Good Suggestions on the up 1$$forward 1 commands rather than ++forward etc. I'll play with it once I get fly, but let us know if you find a good solution.

Van Renier, I actually meant that maybe the actual bind to one key was too long, but Blue Volt had examples of binds that were longer and work, so that's a non-issue.

Paraphrased Question by Sabercat "How does binding a toggle to a movement key work?" Answer: Magic. Seriously though, only thing I can figure out is that if you use +forward or some such, the command parser must check the key on BOTH when you press the key, and release the key, since it needs to know. It must just process any other commands at the same time.

Gnarly


 

Posted

The missing link is endurance. If you toggle fly on, and you get in a fight and forget to turn it off, you're wasting endurance. But if you DO remember to change to Hover, but then find yourself losing and you want to fly away, you have to hit an extra key.

With SinAbyss' setup, and it's variations, you have Speed on Demand. The "Demand" part is pressing a movement key... when you want to move, you move fast. If you don't want to move (and stop pressing the movement keys), you AUTOMATICALLY go into just hover, saving Endurance and get a defensive bonus.

If you have simple toggle keys for flight and hover, and they work for you, then no reason to change anything. Basically, we're a bunch of geeky programmers trying to automate and streamline the efficiency of something that's not TOO hard to do manually. Of course, when I'm in a group trying to make jokes, fight, navigate, and eat a cookie all at the same time, every little bit helps

Gnarly


 

Posted

[ QUOTE ]
Sorry Smak, I'm stumped. Everything you've got there looks fine. With the error messge you are getting, I've only ever seen that when the path or file name was wrong, so that's where I'd look. That's not to say that something else won't cause it. If you've done that and they are fine, I don't know what else to suggest.

The only other things I can think of:

Have you sucessfully bound any functions to the mouse buttons before? I've heard some mention about button4 and button5 not being supported by CoH. I don't know if this is hardware specific, or something that has been sloved. Maybe try a couple 'standard' keys just to check?

You do have hover and fly, right?

If you want, leave your e-mail address. I can send you the exact files I use, and you can just modify the path and keys as you need. I must admit, I can't see anything wrong with what is here, so I don't know if that will help.

Not sure what else to say. Sorry.

[/ QUOTE ]

I know for certain that with my mouse, 'button5' does not work. All I have for that /bind is Hover (with the correct syntax, I've checked it by using it on another key, then CaP'ing it to button5 just to be sure). Perhaps that's the problem. I know the fact that I can't get the 5th button on my mouse kinda urks me, since I want to use the 4th and 5th buttons to switch between Fly and Hover on my Tanker.


 

Posted

[ QUOTE ]
Paraphrased Question by Sabercat "How does binding a toggle to a movement key work?" Answer: Magic.


[/ QUOTE ]

Well, OK then. As long as there is a solid, rational explanation.

I read something about the "overwrite effect" which might be involved in this magic. It all still seems rather odd to me but I'm not going to question it too hard as long as it works.


 

Posted

[ QUOTE ]
[ QUOTE ]
w "+forward$$powexec_name hover$$powexec_name fly"

[/ QUOTE ]
One question:
Why do the commands like the one above return to hover when the key is released?

[/ QUOTE ]
Because the + at the start of a command string affects the whole string, not just the first command. In effect it says "reverse all of this when the button is released". I'm still fuzzy on exactly how that is implemented in all cases; however, powexec commands are executed both when the key is pressed and released, causing hover/fly mode to toggle.


 

Posted

So when I restarted CoH last night, my x == down bind started working. I guess it was just some kind of loading issue.

I also noticed something AWESOME last night. With Stealth on, you can't move and hover simultaneously. Now with these binds, that problem is GONE! Since you switch to Fly before moving, I can now effectively remain Stealthed and move! Whooo!!


 

Posted

Thanks so much, Blue Volt, (heck, and everyone here!) for the code - especially the reset while in mid-air one! That's made all the difference after I got knocked out of the air and died before I could reset the keys.

Btw, I found a way that you can use two movement keys at once without screwing up the bind. I use the arrow keys for movement so I kept the Q,E,A and D keys as Turn Left, Turn Right, Left and Right while changing W to Up and S to Down. Now, for example, when I use the up arrow key to fly forward I can hold W to go up or S to go down without screwing up the bind settings. Same with the other movement keys. Needless to say it doesn't work if you use WASD for movement regularly.


 

Posted

Has anyone used Gnarly's binds yet? I was just curious as to whether they work as intended. I have a two button mouse with a scroll, so I'm not so sure if I can get Blue Volt's to work as i'd like it to work.


 

Posted

[ QUOTE ]
[ QUOTE ]
[ QUOTE ]
w "+forward$$powexec_name hover$$powexec_name fly"

[/ QUOTE ]
One question:
Why do the commands like the one above return to hover when the key is released?

[/ QUOTE ]
Because the + at the start of a command string affects the whole string, not just the first command. In effect it says "reverse all of this when the button is released". I'm still fuzzy on exactly how that is implemented in all cases; however, powexec commands are executed both when the key is pressed and released, causing hover/fly mode to toggle.

[/ QUOTE ]
Ahh, I was wondering that question myself and had drawn the same conclusion. Sounds like a bit of info for v1.1 of the Unofficial and Incomplete Guide.

Now, how to exploit that useful little keydown/keyup tidbit in other binds...


 

Posted

I've been using the first bind on here and with-out being able to press two keys at once I've found myself hovering quite alot ;P (sorry I just love my graceful flight in battle).

I had fly on F ever since I got the power and with the binds, I kept F there 'just in case'. If I hit two keys at once (still not got that down pat yet!) I can hit F and it sets me back just right. I also have the bind set to my C key (instead of Q) so I can turn it off and on quickly. (in case I find myself wanting to fly away quickly in office buildings or such)

It's not a true fix for the two movement button thing, but it's a quick fix and one that's worked for me.


 

Posted

I'm actually going to make a new blaster just to have a flyer and try this out. Thanks a lot, guys.


 

Posted

Ok, I fixed my G key, thanks to Blue Volt's comment on Powexec_Abort, and my Ground setup is working great. Several people have asked me, so I'll post my latest here. I haven't tested fly/hover, because I can't, but with Ground working so sweet, and Air being almost the same, I think the following bind will work. If somebody with Fly want's to try it, could you please post some feedback here?


Changes from my last post: I added 2 new files for "traveling" aka autorun. While I still just use 1 key to go into autotravel - R - from whichever mode I'm in (ground or air), I use these 2 new files so that I can reprogram ALL the movement keys to cancel autotravel. I've found that in practice, having to hit a single key to cancel it requires too much accuracy because during travel I often don't even have my hand on the keyboard. This new setup makes all movement keys cancel travel mode and return to either air or ground, where you started.



Keybinds.txt:

g "powexec_name hover$$powexec_name fly$$powexec_name sprint$$powexec_name sprint$$powexec_abort$$bind_load_file c:\ground.txt$$forward 0"
t "powexec_name sprint$$powexec_name fly$$powexec_name hover$$powexec_name hover$$bind_load_file c:\air.txt$$forward 0"

e "+forward$$powexec_name sprint"
s "+left$$powexec_name sprint"
f "+right$$powexec_name sprint"
d "+backward$$powexec_name sprint"
space "+up"
lshift+space nop
r "autorun 1$$powexec_name sprint$$powexec_name sprint$$bind_load_file c:\GTravel.txt"


Ground.txt

e "+forward$$powexec_name sprint"
s "+left$$powexec_name sprint"
f "+right$$powexec_name sprint"
d "+backward$$powexec_name sprint"
space "+up"
lshift+space nop
r "autorun 1$$powexec_name sprint$$powexec_name sprint$$bind_load_file c:\GTravel.txt"


GTravel.txt

e "forward 0$$powexec_name sprint$$bind_load_file c:\Ground.txt"
s "forward 0$$powexec_name sprint$$bind_load_file c:\Ground.txt"
f "forward 0$$powexec_name sprint$$bind_load_file c:\Ground.txt"
d "forward 0$$powexec_name sprint$$bind_load_file c:\Ground.txt"
space "+up"
lshift+space nop
r "forward 0$$powexec_name sprint$$bind_load_file c:\Ground.txt"


Air.txt

e "+forward$$powexec_name hover$$powexec_name fly"
s "+left$$powexec_name hover$$powexec_name fly"
f "+right$$powexec_name hover$$powexec_name fly"
d "+backward$$powexec_name hover$$powexec_name fly"
space "+up$$powexec_name hover$$powexec_name fly"
lshift+space "+down$$powexec_name hover$$powexec_name fly"
r "forward 1$$up 1$$powexec_name hover$$powexec_name fly$$powexec_name fly$$bind_load_file c:\ATravel.txt"


ATravel.txt

e "forward 0$$up 0$$powexec_name fly$$powexec_name hover$$powexec_name hover$$bind_load_file c:\Air.txt"
s "forward 0$$up 0$$powexec_name fly$$powexec_name hover$$powexec_name hover$$bind_load_file c:\Air.txt"
f "forward 0$$up 0$$powexec_name fly$$powexec_name hover$$powexec_name hover$$bind_load_file c:\Air.txt"
d "forward 0$$up 0$$powexec_name fly$$powexec_name hover$$powexec_name hover$$bind_load_file c:\Air.txt"
up "forward 0$$up 0$$powexec_name fly$$powexec_name hover$$powexec_name hover$$bind_load_file c:\Air.txt"
lshift+space "forward 0$$up 0$$powexec_name fly$$powexec_name hover$$powexec_name hover$$bind_load_file c:\Air.txt"
r "forward 0$$up 0$$powexec_name fly$$powexec_name hover$$powexec_name hover$$bind_load_file c:\Air.txt"

Good Luck, and if you use these and they work (or especially if they don't) please take a minute to post your results here.


 

Posted

I'm testing it now with my flying character it looks good and it's working. (i'm so use to wasd though i decided to just bind it to those keys instead)


 

Posted

New to /binding. I'm using Sinabyss's binds (as I like the flight on demand idea). I'm using the default (QWES) keys for movement (AD for strafing), so I changed the original g in Sinabyss's bind to z for the toggle. Only prob with movement I'm having is moving forward/backward and strafing at the same time...not a prob, cuz I don't do both at the same time. I was reading about people having movement problems and wanted to know if that was it or if everyone has gone with the traditional WASD. I left the rest of the bind the same letting me fly in all directions to move out of danger while still being able to turn while I'm moving.
And forgive me if anything I just said didn't make any sense whatsoever. Usually ends up that way. )
And thanks again for posting all this guys.


 

Posted

Thanks Oaken Filipino!

I'm glad to know it works, especially since I started a Scrapper, and so my Controller isn't getting any closer to flying at the moment

Ok, but I just made a breakthrough! I figured out a way to prevent problems when pressing more than one key. I was thinking... Hmmm... when you use a +something command in a bind, it executes it once when you PRESS the key, and it comes back and does the bind AGAIN when you RELEASE it. So, I thought if it doesn't hold the bind in memory during that time, then you should be able to change the bind with the first key-press so that the key-release calls a different bind. This allows you to explicitly set the power on or off, rather than just toggling it. And it works! The key is pressed and the bind ensures that sprint is set by calling it with powexec twice. Then it loads a one liner bind file that changes JUST THAT KEY to a bind that makes sure Sprint is NOT set (by calling it twice then calling abort). You need a lot of little bind files, but it seems to work pretty smooth for me. No real slowdowns.

The one problem is that if you press two keys, and then release one but not the other, Sprint turns off even though you’re still moving. You can just release it, and everything is back to normal, and if you STILL want to go in that direction, you can just press the direction key you want.

So, sorry for the long posts, but I just tested this on the ground, and it works great… I never get into a that bad place where you are sprinting while stopped, and not sprinting when moving. And if I just posted partial binds, then I'd confuse you AND myself.



Keybinds.txt

g "powexec_name hover$$powexec_name fly$$powexec_name sprint$$powexec_name sprint$$powexec_abort$$bind_load_file c:\ground.txt$$forward 0"
t "powexec_name sprint$$powexec_name fly$$powexec_name hover$$powexec_name hover$$bind_load_file c:\air.txt$$forward 0"
e "+forward$$powexec_name sprint$$powexec_name sprint$$bind_load_file c:\EDown.txt"
s "+left$$powexec_name sprint$$powexec_name sprint$$bind_load_file c:\SDown.txt"
f "+right$$powexec_name sprint$$powexec_name sprint$$bind_load_file c:\FDown.txt"
d "+backward$$powexec_name sprint$$powexec_name sprint$$bind_load_file c:\DDown.txt"
space "+up"
lshift+space nop
r "forward 1$$powexec_name sprint$$powexec_name sprint$$bind_load_file c:\GTravel.txt"


Ground.txt

e "+forward$$powexec_name sprint$$powexec_name sprint$$bind_load_file c:\EDown.txt"
s "+left$$powexec_name sprint$$powexec_name sprint$$bind_load_file c:\SDown.txt"
f "+right$$powexec_name sprint$$powexec_name sprint$$bind_load_file c:\FDown.txt"
d "+backward$$powexec_name sprint$$powexec_name sprint$$bind_load_file c:\DDown.txt"
space "+up"
lshift+space nop
r "forward 1$$powexec_name sprint$$powexec_name sprint$$bind_load_file c:\GTravel.txt"


GTravel.txt

e "forward 0$$powexec_name sprint$$powexec_name sprint$$powexec_abort$$bind_load_file c:\Ground.txt"
s "forward 0$$powexec_name sprint$$powexec_name sprint$$powexec_abort$$bind_load_file c:\Ground.txt"
f "forward 0$$powexec_name sprint$$powexec_name sprint$$powexec_abort$$bind_load_file c:\Ground.txt"
d "forward 0$$powexec_name sprint$$powexec_name sprint$$powexec_abort$$bind_load_file c:\Ground.txt"
space "+up"
lshift+space nop
r "forward 0$$powexec_name sprint$$powexec_name sprint$$powexec_abort$$bind_load_file c:\Ground.txt"


Create 4 New Files like so:

EDown.txt, SDown.txt, FDown.txt, and DDown.txt, changing E to S, F and D respectively. Make sure to get the letter at the beginning of the line, and in the file name near the end. Also change “forward” to “left”, “right” and “backward”.

e "+forward$$powexec_name sprint$$powexec_name sprint$$powexec_abort$$bind_load_file c:\EUp.txt"


And 4 more like so:

EUp.txt, SUp.txt, FUp.txt, and DUp.txt, changing letter and forward as above:

e "+forward$$powexec_name sprint$$powexec_name sprint$$bind_load_file c:\EDown.txt"


Try it out!

Ok, I’m going on travel on Monday, and I won’t have time this weekend, so I can’t modify it so it works in the air right now. But, use the same principle if you can’t wait, and I should have the full bind for you late next week.

Cheers


 

Posted

First off, this is one of the best ideas ever.

However...

I tried putting those last sprint binds in on my scrapper. However, I found that sometimes the sprint would get a little messed up when I would start strafing while moving forward at the same time.
Even with identical binds on the two strafe keys, I had a lot more problems strafing right than left. Interesting.

Also, don't forget to add a sprint to follow, otherwise you'll have a very slow follow, and follow is very important for me as a scrapper. Also as a scrapper, the canceling of the power I queue up to hit when I get in range can be annoying, but not hard to deal with.

Over all, great stuff. I wish I could contribute more.


 

Posted

Gnarly- So with these proposed changes, does this mean I will have less issues when it comes to moving while attacking or using a skill at the same time? (I'll test it out when I'm home playing) One of the issues I've been having is that if I change directions too quickly or attack and move before the attack animation finishes, my toggles get switched around. Now, I have to hit either of the reset keys to fix this, and i guess it could be a matter of working it into my subconsciousness so it becomes a nonissue, though sometimes in those situations when I decide to cheese it and flee, those seconds can mean the difference between getting shot out of the air and me escaping the scene debt free. (there were only two situations where the incorrect toggles caused me to die...one was with a scrapper trying to run away and shouldn't be trying to take down 5 orange conns at only half health and the other was my flying defender who was foolish enough to try to attack an aberrant and a few riflemen with a crappy electric bolt)


 

Posted

Well Gnarly, it looks like you and I are really on the same page. I tested that theory a couple days ago, and am most of the way through setting up a fly-bind package that will 'solve' the two-key issue. I've also got it set up so that releasing a key mid-move will not confuse the bind. I'm not quite finished, but it looks pretty similar to yours. I haven't had a chance to test these files yet, but I hope I'll be able to post them this week-end, or early next week after I've had a chance to proove them out.

Also, another possible use for that trick is to effectively create another chord key. You set the key up so that it loads a set of binds to certain keys when pressed, and another set when released.

P.S. Darn you!! I wanted to reveal that sweet little idea!!!


 

Posted

I'll be happy to help with the testing if you want. I have nothing else better to do


 

Posted

I have my self-tp power bound to my numeric keypad's 5-key and it works fine; however, I can't seem to bind to the key for the tick charater (the left single-quote or ` character--on my keyboard it's the unshifted tilda), and when typing a message during game play, if I accidentally hit that key, it breaks me out of the message field--very annoying.


 

Posted

Trample: That key is called TILDE in keybinds. For instance,

TILDE "powexec_abort$$follow$$powexec_auto Boxing$$powexec_name Sprint"
LSHIFT+TILDE "powexec_abort$$l <color white><bgcolor maroon><scale 1.5>CHARGE!$$follow$$powexec_auto Boxing$$powexec_name Sprint"


 

Posted

Hey Blue Volt, sorry to jump your claim But, this is all useful and how it works in real science... SynAbyss comes up with a new concept and reveals it, and we all mash it around and around and around until everybody understands it completely. For instance, I did not think of the fact that you can use this as a way to make a new chord key. Of course, you'd have to have some + command to do it. I wonder if you could use +forward and +backward at the same time, so you wouldn't actually move? But, for this application we WANT ourselves to move, so maybe make each movement key a chord key, and have the 2nd key NOT change movement? That's smarter, and would overcome the problem Oaken Filipino had with canceled attacks, I think. I had the same problem with my scrapper... as soon as I moved during combat, the powexec_abort makes him put away his sword and cancel attacks.

I'll have to mess around on my portable (probably no internet connection), and then compare my results with yours when I return.

Cheers


 

Posted

Ahh, good catch on the follow... I don't use it on my controller, but I'm sure I will soon on my Scrapper. Will look into it, but nothing soon. But if you don't want to wait, just double call powexec_name sprint twice to force activation when you follow, and load another bind for your follow key that calls sprint twice, and then calls powexec_abort. A lot like the AutoRun is set up.