A good method to buffer inputs?

I don’t think you’ll be able to get away from having to either get a plugin or create some custom nodes. It also depends on what kind of buffer system you want (do you need to buffer several inputs or just one or two?). I’m not really a programmer, but a bit of thought with my own custom nodes led me to create this example:

I tend to work in character states. My example character has Idle state, Attacking state, and Charge Atk state. In the Idle state, my character has two button inputs; pressing Tri will put my character in the Charge Atk state and pressing X will put my character in the Attacking state. For brevity of the example, the Attacking state only has simple logic in it to return the character to the Idle state 1 second after entering the attacking state. I should mention that the way the InputAxis’s are set up in the Idle state grant a lot of versatility; if you hold X as the character enters the Idle state, it will immediately re-enter the Attacking state. The Axis Neutralizer connected to InputAxis Tri can nullify this behavior (holding Tri as the character enters the Idle state will not do anything until you let go of Tri).

The Charge Atk state has a bit more complicated logic. Upon entering the state, it sets a Buffer State variable to Idle. 3 seconds after entering the state, it sets the character state to the buffer state (i.e. if nothing happens, the character just goes back to idle). But in the 2.5 to 3.0 second window after entering the state, the player can press the X button to set the Buffer State variable to Attacking, which will send the character state to that new state upon leaving the Charge Atk state.

This is a really really awkward way of implementing an input buffer system, but it does offer a lot of versatility. It also requires the implementation of a few custom nodes. I’ve talked about these custom nodes before over here if you’re interested:

https://forums.unrealengine.com/development-discussion/blueprint-visual-scripting/118142-custom-flow-control-macro-library-request-for-feedback

It’s an option, but depending on your application, it may not be what you’re looking for.