Jump to content

Press-Release Binds


Shenanigunner

Recommended Posts

21 hours ago, Shenanigunner said:

looking for feedback on the limits and nuances

Not sure if this counts, but in searching for something else, I found (in one of your threads, oddly enough) a post where I noted keybind behavior similar to that described in the OP. At the time I wrote it off as a bug (and it looks like you did too!), but that post contains a link to another thread wherein some of my testing is described. It's more of a 'what not to do with this awesome power', and might not be helpful at all, but I thought I would mention it nonetheless. I'm glad someone was able to turn this seemly odd bind behavior into something quite useful!

 

13 minutes ago, Dungeoness said:

So, is there a way to fix that? Is my macro syntax wrong? How do I get the movement autofire combo macros to work the same way as if I bound the autofire command to a key with no other commands in the string?

 

EDIT: You posted while I was composing this post initially, but the behavior you describe is exactly what was noted in the post I linked above.

Edited by AboveTheChemist
Link to comment
Share on other sites

4 minutes ago, AboveTheChemist said:

I'm glad someone was able to turn this seemly odd bind behavior into something quite useful!

 

Credit entirely due to @Linea; I just did my usual job of putting the info through the wringer of testing and clarification.

 

And yep, it looks like hints and fragments of this have been around, but they escaped my full attention. Oh, well... 😛

UPDATED: v4.15 Technical Guide (post 27p7)... 154 pages of comprehensive and validated info on on the nuts and bolts!
ALSO:  GABS Bindfile  ·  WindowScaler  ·  Teleport Guide  ·  and City of Zeroes  all at  www.Shenanigunner.com

 
Link to comment
Share on other sites

17 minutes ago, Dungeoness said:

D "+backward$$powexecauto hasten" (I use FEDS for movement over WADS)

 

It should work; I think I have examples in the Guide just like this and use them myself. Possibly... swap the two commands. The parser is a little quirky about the order of multiple commands sometimes.

UPDATED: v4.15 Technical Guide (post 27p7)... 154 pages of comprehensive and validated info on on the nuts and bolts!
ALSO:  GABS Bindfile  ·  WindowScaler  ·  Teleport Guide  ·  and City of Zeroes  all at  www.Shenanigunner.com

 
Link to comment
Share on other sites

13 minutes ago, Shenanigunner said:

 

It should work; I think I have examples in the Guide just like this and use them myself. Possibly... swap the two commands. The parser is a little quirky about the order of multiple commands sometimes.

 

Swapping them as is does not work, and breaks the movement portion by making the game think you're still holding down the key, even after you release it.

Edited by Dungeoness

@dungeoness and @eloora on Excelsior

<Federation of United Cosmic Knights>

Link to comment
Share on other sites

16 minutes ago, Dungeoness said:

Swapping them as is does not work, and breaks the movement portion by making the game think you're still holding down the key, even after you release it.

I was about to type up a warning not to try this because, as I alluded to in my post above, another posted and I did some testing with binds that are identical to the form you posted and had no luck getting them to work (and they failed in the same manner when the commands were swapped). The subtle yet significant syntax difference as presented in the OP seem to be the key to getting binds like that to work.

 

EDIT: Looking at the commonalities in the thread I linked here, the one I linked in my previous post, and your binds, they all involve movement commands. It might be that movement commands are problematic in this type of bind.

Edited by AboveTheChemist
Link to comment
Share on other sites

I have two use cases for complicated (to me, at least D: ) binds.

 

  1.  Finding, Combat Teleporting to, casting Vengeance on, and then rezzing a defeated team- or league-mate
  2.  Casting Fold Space, but using one or two inspirations first, such as an accuracy or ultimate.

 

 

I currently don't have (1) set up satisfactorily. And I think it's a pretty important function to be time efficient with, since no matter how many times you ask people to count to five before self-rezzing, they will anyway. So getting to them quickly is key to getting Vengeance fired off.

 

I have a key set to select nearest defeated friends; and another key to combat teleport to the selected target. I suppose those are fine. I'd like to try setting them to use the +$$ system, and perhaps it would require a two-file rotating bind to work properly; the first to select the target on press-down and to load the second bind file, and then the second bind file to execute the combat teleport. Would that work?

 

The second part would be to do the same with vengeance and rezzing -- vengeance on key-press, and rezzing on key-up? Again, would that work?

 

Generally, if I read the above right, worst case is I would need a "return to base state" reset key for when they get out of sync.

 

 

 

For my fold space use case; I'd use an accuracy insp on key-press and execute fold space on key-up? Or would the key-up interrupt the key-press part? This doesn't work well in a normal (e.g., "powexecname Fold Space$$inspexecname Uncanny Insight") bind which you just press twice, because it just uses up all my insps before it casts fold space. (It works with ultimates though, they have a cooldown, but that's kind of spendy to do automatically). So I'm wondering if the +$$ method would have any potential to make a single key system.

 

As an aside, Fold space itself seems a little weird to me, I think it only gets one dice roll to hit all the enemies, and then each one comes if it's defense was low enough to be hit by that roll. Fold Space seems to get everyone or just about no one on account, and I like to up my to-hit if I can before doing so.

Edited by Andreah
Link to comment
Share on other sites

1 hour ago, Andreah said:

For my fold space use case; I'd use an accuracy insp on key-press and execute fold space on key-up? Or would the key-up interrupt the key-press part? This doesn't work well in a normal (e.g., "powexecname Fold Space$$inspexecname Uncanny Insight") bind which you just press twice, because it just uses up all my insps before it casts fold space. (It works with ultimates though, they have a cooldown, but that's kind of spendy to do automatically). So I'm wondering if the +$$ method would have any potential to make a single key system.

 

As an aside, Fold space itself seems a little weird to me, I think it only gets one dice roll to hit all the enemies, and then each one comes if it's defense was low enough to be hit by that roll. Fold Space seems to get everyone or just about no one on account, and I like to up my to-hit if I can before doing so.

 

For this quandry, you could try this in lieu of a 2 file bind solution:

 

"powexecauto fold space$$inspexecname uncanny insight"

 

I tested it with an aoe nuke and it does eat one insp and then fire the power. Of course, this would replace whatever you usually keep on autofire, Hasten for instance, with Fold Space, so you'd have to decide how to get that back to normal before FS fires again.

 

Despite already mentioned difficulties, binding autofires to coincide with any of the movement keys DOES work most of the time, it's just occasionally unreliable. For characters with lots of cooldowns to keep up in combat, like my Peacebringer, I have skills set to autofire attached to 3 out of 4 of my movement keys (with getting Sprint back on attached to +forward), and they all cycle and fire fairly well.

@dungeoness and @eloora on Excelsior

<Federation of United Cosmic Knights>

Link to comment
Share on other sites

3 hours ago, Shenanigunner said:

D "+backward$$powexecauto hasten" (I use FEDS for movement over WADS)

+ at the beginning tells the bind to work on press and release.  + ALSO increments binaries.

+backwards is a single command, and backwards is binary 0 or 1.  Like $i++ but a binary.  I've never tried "+$$...$$+Backward$$..."  or Backward+  but that might work.

This will auto hasten twice, which will put it on, then off.  (ASSUMING nothing is currently auto) Press move backwards and set hasten auto, Release stop moving backwards and turn auto off.  HOWEVER, this will from time to time get out of sync.  Also, if hasten is ALREADY auto, it will turn it off while moving, and back on after.  So if press/release is the desired behavior you should probably set a 'reset' key.

 

D "+backward$$powexecabort$$powexecauto hasten"

This should always leave hasten auto.  But the abort will kill current commands and might be undesired.

 

You might could force sync by using two bind files.

File1:

1 "powexecslot 1$$bindloadfilesilent ./kb/file1.txt"   ... this is  reset key

D "+backward$$powexecabort$$powexecauto hasten$$bindloadfilesilent ./kb/file2.txt"  ... this should force hasten as auto

File2:

D "+backward$$powexecabort$bindloadfilesilent ./kb/file1.txt"  ... this should force hasten off

 

I'm really not sure I'd recommend this for movement keys, but I do know others do similar things with movement, and attacks.  Just keep a movement reset file handy in a macro or something so if everything goes sideways you can one-click back to normal movement keys.

 

  • Thanks 1

AE 801 (link) is a variety of missions for fun and challenge, and is designed for a team of 5+ Incarnates.  Just search '801' in AE.

     801 Difficulty Varies: 801.0 Easy, ..., 801.2 Standard*, ..., 801.5 Moderate**, ..., 801.6 Hard***, ..., 801.7 Four Star****, ... 801.F Death.

I may be AFK IRL, But CoH is my Forever Home.

Link to comment
Share on other sites

3 hours ago, Dungeoness said:

Swapping them as is does not work, and breaks the movement portion by making the game think you're still holding down the key, even after you release it.

 

Yes, I was afraid of that. For forward motion, using ++autorun works perfectly; see the fly and jump binds. But there's no equivalent for backwards motion and thus no way to avoid that latching action. Maybe we need an 'autoretreat' keyword...

 

There's a similar long-standing, but not original problem with +up. I like to begin fly binds with a jump so that the alt clears walls, fences etc., and for a long time it worked great. Then sometime in I27, that +up latched and if I use it, I have to do a quick "up" key hit to cancel the rise.

 

Edited by Shenanigunner

UPDATED: v4.15 Technical Guide (post 27p7)... 154 pages of comprehensive and validated info on on the nuts and bolts!
ALSO:  GABS Bindfile  ·  WindowScaler  ·  Teleport Guide  ·  and City of Zeroes  all at  www.Shenanigunner.com

 
Link to comment
Share on other sites

The solution for the movement-activation method is to put them all on one key, usually W for forward, and use rolling binds (and possibly, need to investigate, the new press-release stuff). The big trick there is to use the spacer, do-nothing files in between the commands. All detailed in the Guide; I can copy here for the lazy busy.

 

All of my alts activate 2-5 buffs, defs, etc. with rolling binds on the W key. Works seamlessly. No need to map them around the key pattern.

 

Edited by Shenanigunner

UPDATED: v4.15 Technical Guide (post 27p7)... 154 pages of comprehensive and validated info on on the nuts and bolts!
ALSO:  GABS Bindfile  ·  WindowScaler  ·  Teleport Guide  ·  and City of Zeroes  all at  www.Shenanigunner.com

 
Link to comment
Share on other sites

1 hour ago, Linea said:

This should always leave hasten auto.

 

If you have only one power you want auto, just assign it auto and move on. No need to include it in auto-fire binds. I find it fairly rare for anything to un-set an auto power, and it only takes a moment to re-assign it.

UPDATED: v4.15 Technical Guide (post 27p7)... 154 pages of comprehensive and validated info on on the nuts and bolts!
ALSO:  GABS Bindfile  ·  WindowScaler  ·  Teleport Guide  ·  and City of Zeroes  all at  www.Shenanigunner.com

 
Link to comment
Share on other sites

Thanks 1.0x10^6!

 

I'm playing with these, but I keep wondering: I've seen in several guides that the game parses binds from right to left, yet most examples run left to right. Do we know for certain which is true? Or if it's even consistent?

 

 

  • Thumbs Up 1

Disclaimer: Not a medical doctor. Do not take medical advice from Doctor Ditko.

Also, not a physicist. Do not take advice on consensus reality from Doctor Ditko.

But games? He used to pay his bills with games. (He's recovering well, thanks for asking!)

Link to comment
Share on other sites

12 hours ago, DoctorDitko said:

I've seen in several guides that the game parses binds from right to left, yet most examples run left to right. Do we know for certain which is true? Or if it's even consistent?

 

I can't speak to how consistent it is, but I have multi-press keybinds (meaning each bind requires multiple presses to turn on all powers contained in the bind) on each of my characters to turn on all of their defensive abilities. For example, the bind on one character is:

 

MULTIPLY "powexec_toggleon Maneuvers$$powexec_toggleon Weave$$powexec_toggleon Combat Jumping"

 

Here's the output from my logs when I first press the bind:

 

2020-07-22 21:19:33 Now readying Weave instead of Maneuvers.
2020-07-22 21:19:33 Now readying Combat Jumping instead of Weave.
2020-07-22 21:19:33 Your Combat Jumping has made you harder to hit.

 

So it skips Maneuvers in lieu of Weave, then it skips Weave in lieu of Combat Jumping. Technically it seems to read the bind left to right, but executes the binds in order from right to left. With the second press of the bind I get:

 

2020-07-22 21:19:34 Now readying Weave instead of Maneuvers.
2020-07-22 21:19:35 You start to Weave and are now harder to hit and Immobilize.

 

Again it skips Maneuvers in lieu of Weave. Finally with the third press I get:

 

2020-07-22 21:19:38 Rustin Peace increases your team's Defense with good Maneuvers.
2020-07-22 21:19:38 Your Maneuvers increases your team's Defense.

 

I could probably make a bind to activate these powers with fewer keypresses, but for my generally casual playstyle it works fine. Another bind example, which I use for consuming +END inspirations, is:

 

END "tell $name, Endurance$$inspexec_name Second Wind$$inspexec_name Take a Breather$$inspexec_name Catch a Breath"

 

Pressing it consumes one +END inspiration in order of preference from Tier 1 to Tier 2 to Tier 3 depending on what is available in my inventory. I don't have representative log output for it but I've used it (and similar binds for other inspiration types) enough to know that it consumes small inspirations first, then mediums, and so on, with each keypress. So it also executes from right to left.

  • Thanks 1
Link to comment
Share on other sites

Almost always right to left, but with some exceptions.  

- powexecabort has always been leftmost, but I've never experimented with moving it.

- bindloadfile has always been rightmost, but again, I've never experimented with moving it.  I do know if you want to double overwrite or double load you have to respect right to left order within your bindloads subsection, but I've always put that subsection on the right.  (double load:  a single bind can load multiple other bind files and rewrite itself all at the same time, and even execute multiple macros from trays as an afterthought.  However, doing so is definitely the very advanced class, and not recommended.)

 

  • Thanks 2

AE 801 (link) is a variety of missions for fun and challenge, and is designed for a team of 5+ Incarnates.  Just search '801' in AE.

     801 Difficulty Varies: 801.0 Easy, ..., 801.2 Standard*, ..., 801.5 Moderate**, ..., 801.6 Hard***, ..., 801.7 Four Star****, ... 801.F Death.

I may be AFK IRL, But CoH is my Forever Home.

Link to comment
Share on other sites

Great info above. Thanks ATC and Linea!

 

One thing to keep in mind is that not all commands process in the same time frame. (There's a more formal way to describe that but I haven't done systems design for a while...)

 

In particular, keep in mind that loadbindfile has nothing to do with the current command string. The string will execute Command 1 and Command 2... and load that bindfile fragment for execution next time. That the command does so instantly enough for the two-part press-release binds to work is both wonderful and a bit confusing if you don't keep that in mind. A P-R bind is actually two complete activations of the command string, even if it changes in the middle.

 

But in my experience, and everything that seems to have been said about the command parser, it's always right-to-left. At least, formally/procedurally; why sometimes moving commands to a different order works and the "correct" order does not is left as an exercise for those with access to the code and way too much time on their hands. 🙂

  • Thanks 1

UPDATED: v4.15 Technical Guide (post 27p7)... 154 pages of comprehensive and validated info on on the nuts and bolts!
ALSO:  GABS Bindfile  ·  WindowScaler  ·  Teleport Guide  ·  and City of Zeroes  all at  www.Shenanigunner.com

 
Link to comment
Share on other sites

Thanks, all, for whittling down my ignorance a bit!

 

41 minutes ago, Shenanigunner said:

sometimes moving commands to a different order works and the "correct" order does not

Yeah, that's the part that was getting me!

 

/macro BOSS quit$$dialogyes

 

only works this way.

Disclaimer: Not a medical doctor. Do not take medical advice from Doctor Ditko.

Also, not a physicist. Do not take advice on consensus reality from Doctor Ditko.

But games? He used to pay his bills with games. (He's recovering well, thanks for asking!)

Link to comment
Share on other sites

On 12/7/2021 at 1:32 PM, Shenanigunner said:

Here's something completely new and different that may well have been around since the rollout of Live. Did YOU know you can write binds that will fire on both the press and release of a key? 'Cuz I sure didn't until @Linea shared the idea and some examples this week. Linea's assumptions are that lots of players know/once knew this and it's just part of the game that's been lost over time and the hiatus, but honest... if I never heard of it, it must not have been that well known. It's a hard string to search for, but I've also found no trace of it in the wikis and other resources. 

 

The simple version is this: put +$$ at the beginning of a bind string

That's pretty ca$h money 

Resident certified baby

Link to comment
Share on other sites

Has anyone gotten the +$$ prefix to work in a macro? My testing just now seems to indicate it only wants to work when you use the /bind command.

 

For instance, this works as expected, shifting my PB into dwarf, firing off a dwarf attack and shifting back to human, imperceptibly, with one press and release:

 

/bind 4 "+$$powexec_toggleon white dwarf$$powexec_name White Dwarf Smite$$powexec_toggleoff white dwarf"

 

But when I enter that whole command string into a macro text entry box (incidentally in the hotkey 4 slot) and hit the 4 key with my finger, I have to tap it twice to make it execute all the commands.

@dungeoness and @eloora on Excelsior

<Federation of United Cosmic Knights>

Link to comment
Share on other sites

4 hours ago, Dungeoness said:

Has anyone gotten the +$$ prefix to work in a macro? My testing just now seems to indicate it only wants to work when you use the /bind command.

 

Won't/can't. It depends on the parser being able to detect key press and release as separate events. (Which is true of all keypresses; just most disappear into one action.) No way to emulate that with a macro.

UPDATED: v4.15 Technical Guide (post 27p7)... 154 pages of comprehensive and validated info on on the nuts and bolts!
ALSO:  GABS Bindfile  ·  WindowScaler  ·  Teleport Guide  ·  and City of Zeroes  all at  www.Shenanigunner.com

 
Link to comment
Share on other sites

But, of course, you can fire macros in these binds using the powexecslot command. You just can't do it with a click.

UPDATED: v4.15 Technical Guide (post 27p7)... 154 pages of comprehensive and validated info on on the nuts and bolts!
ALSO:  GABS Bindfile  ·  WindowScaler  ·  Teleport Guide  ·  and City of Zeroes  all at  www.Shenanigunner.com

 
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...