Why do my character inputs only work when I hit play from the blueprint?

I set up some basic input controls in a blueprint using the same model as this tutorial series:
https://docs.unrealengine.com/latest/INT/Gameplay/HowTo/CharacterMovement/Blueprints/Setup_1/index.html

It’s a character blueprint with the blue man test mesh and a movement component, and then an animation blueprint with a simple run/idle transition for the mesh. I also set up some inputs in project settings.

I took this blueprint and stuck it in my test level that just has a single platform to act as the floor and a stationary camera.

When I click play from the character blueprint itself, it ignores the character I placed in the level and puts in a new one( so both are visible ), and I can move the new one around.

When I click play from the test map I made, it doesn’t place a new character, and the original test character goes idle and I can’t move him around.

Why is it not recognizing my inputs for the character I put in the map?

Doesn’t seem to help. I think it’s some sort of problem where I haven’t told it what the player character is or something.

Are you running the game in Simulate mode? What is likely happening is when you open a blueprint and press play it is defaulting to Play In New Window which goes through a very different execution path. By-in-large, if you’re testing your game you should be using New Window or Standalone Game. Simulate for more of a quick and dirty way to view in-game stuff.

55491-untitled.png

After fiddling, it seems adding a player start to the map instead of an instance of my character, and telling it to use the default player start instead of current camera location for spawning players allows me to control the character when I run it in a new editor window.

I have noticed this as well.
Spawning an instance of a character isn’t enough to give control to a player. Remember that multiplayer games will have many instances of characters.
You need to specify that the person launching the game will be in control of that character. This is part of the default “player spawn” object in the examples.

However the question becomes: why does it work in Blueprint editor? I think the editor has a debug feature that determines if no appropriate player controller is found it will generate a instance of a character (I would love to know how it determines which character to use) and it will always spawn the character at the current location of your viewport.