Enable Input Doesn't work

I realize I am doing stupid… Now if I can just figure out what…

Yes I have Enabled Input. I have done so both at EventBeginPlay as well as EventTick (as well as several other Event drivers) in case priority is my issue. The problem is that no matter how many times I make the EnableInput Node light up while debugging the BluePrints I make never ever take any inputs from me. I have tried multiple Class and Level BluePrints with different combination of Player Controller Numbers, etc. I have checked and unchecked every box combination in defaults and then restored the defaults. Nothing can make any “Key Press _” node work in any of MY BluePrints.

What kills me is that the content example BluePrints do take inputs! They work great. They take input and execute “Key Press _” nodes perfectly. Just never on my Class or Level BluePrints. This means it isn’t my hardware or drivers (one of my first thoughts). I just sit and stare at those white lines and wonder why they never light up. I have spent all day on this one. (Probably a 5 minute fix).

The Key Press Nodes Never Execute… Never…

I am at my wits end because I cannot find any answers on the AnswerHub (Priority, EnableInput, BlockedInput, etc., have not helped) and I can duplicate a migrated working Content BluePrint in a blank Project into a new BluePrint and it works. But if I make my own BluePrint… nada.

Any help greatly appreciated.

Also, I see the typos. I had to retype this because I accidentally deleted my last post while trying to upload screenshots. Yes, it is hasty.

“Enable” and “Disable” Input do this only for the Blueprint they are called in as far as i understood. So if you have some KeyPressing Nodes inside your CharacterBP and you want to Disable or Enable them, you either need to call the nodes there, or you need to get a reference of the CharacterBP and plug it into the “Target” spot of the Enable Input Node.

For example this is done in some other BP than the Character. The first “Disable Input” node will disable the mouse movement etc that were set up in the CharacterBP. The second one won’t. The second one will only effect Inputs that are setup in this particular BP. So if i made a Key for TAB to print “Hello” it wouln’t work because i disable it with the second node. (Ok, you would need to first Enable it, but i guess you get the point).

So to sum this up, call the “Enable Input” Node inside the BP that has the Key Events or use a reference to this BP in plug it into “Target”.

http://puu.sh/cQcLU/365652d11c.png

Same problem here. The actor I’ve spawned is a Character. Did you ever solve this? Was the actor you were trying to enable input for also a pawn or character?

No… I never did solve it. After spending a week trying to find an answer for the issue I abandon the project for the time being. (I have been working on other things like implementing world-position shaders to foliage, or how to model things on Blender).

What it came down to is there is something about/internal to that particular Blue-Print pawn that prevents the input nodes from working. All the content example BP’s work on the same level in the same project when I migrate them in. And when I migrate the Pawn out to a content example level it still doesn’t work. Enabling input doesn’t help. Putting it in a blank project with nothing else on the input stack doesn’t help.

I have decided for the time being that creating pawn actors that accept input is too difficult for beginners and moved on. I will circle back around in a while. I am half hoping that there will be some lower level BP tutorials to creating pawns (in all types of projects) that accept input from the keyboard or mouse. I can create a door which opens when you press ‘f’ ( I even programmed a 3 tumbler combination lock with construction-script settable passcode and visible parameters), but moving a pawn with an arrow key beats me.

Sorry to comment so late. I was moving out of state and then forgot I had a response to this issue that I hadn’t addressed.

I have the enable node on in the BP in question and the project in question started as blank so there is no player character. I also migrated the pawn in question to a blank project, and it still does not accept input. This makes me think it is internal to the Pawn BP because there are no other BPs which could possibly be taking input from the stack.

I appreciate the try though.

For now, I’m using some clunky alternatives.

In my case, the player has a main body Character (the default pawn class I assigned in the GameMode) and can control a separate, mini avatar Character that it spawns on play remotely. What I’m currently doing is saving a variable reference to my remote controlled Character (the output from its spawn function) and calling a function or event on it when the corresponding input event fires on the player’s main body. It’s not ideal, but it works.

If you want to remotely control a pawn that may have an unknown class, you can create a Blueprint Interface, add a function to it that accepts your input (e.g., a float or Boolean value), and then implement that function by opening the pawn’s BP, clicking on “Blueprint Props” in the toolbar, scrolling down to the interface section in the details panel, and adding the interface you previously created. You should then be able to right click the newly-added function and click implement. Again, it’s not ideal, but it works.

I’m really late with this one, but since there’s no answer I’d like to point at something. I solved this issue defining an Action Mapping, binding the Space Bar and using that directly. The problem is with the raw input data, which is NOT passed to the actor.

I had the same issue as you:

How I solved it:
I was using a pawn/character class, the issue here is that Enable Input is for actors. for Pawns/character you need to use “Possess” instead of “EnableInput”.

I have found this solution here:

4 Likes

This error was driving me nuts. Thank you! :slight_smile: