I set up a Main Menu but when i klick on start the characters movement doesn't work anymore

I made a Main Menu like the YouTube Tutorials, but no matter what I try, I can’t move my Player after starting the game. I tried to resolve this issue, but everything I try fails. Furthermore, I have a Video to show the issue, but since I can’t upload photos or videos because I just joined, I’ll just leave a link to the video I made. Video Link Any help would be appreciated

Hey @IUS_Chriszockt! Welcome to the forums!

I noticed that on the right, you have the gameMode overridden to be “MenuGameMode” or something to that effect, and noticed that is only happening when you start from the main menu.

That’s probably the issue, given that most would not even have a controller to be used in the main menu.

Hope that helps! :slight_smile:

Hey, thanks for the answer. Can you give me some advice how to change it? I’m new to Unreal Engine and don’t know how to change or do certain things. I just tried, with your advice, to change it and looked over some videos and posts, but I just can’t figure it out

Hey @IUS_Chriszockt!

Make sure to assign the input mapping context to the player character after Event Possessed instead of Begin Play like this:

Hope this helps :blush:

I need more help with that. I did the blueprint inside the character blueprint, but it still doesn’t work. Not only that, but I also discovered, that when I simulate the game and click on the new game button, that on the upper left it still says “MainMenuMap” and not “ThirdPersonMap” like I actually want. Is it Normal? Also, I switched the “Game Default Map” to the “MainMenuMap” but every time when I start the game from the “ThirdPersonMap” the Main Menu doesn’t show up at all, only when I’m in the “MainMenuMap” it does.

Where on the upper left? Are you simulating in a new window, and this is in the title bar? If so, that will not change.

Something else I thought of- You need to use the node “Set Input Node Game and UI” or “Set Input Node Game Only” when you start your playable level, as before you’re likely set to UI only and if you don’t switch that you can’t do anything.
You could put it on begin play of the level, or somewhere similar!

Hi and welcome!

I’m not sure if this will solve your problem, but you can try the following:

The issue might be caused by the fact that in your Game Mode, Player Controller, or Player Character, you have the Set Input UI Only node. This removes the input focus, which is why your controls may not be working.

If that’s the case, you can add a small script at the beginning.
Game Mode

Here, we take the current level name (Get Current Level). If the condition returns True, the Set Input UI Only node will be active. If it returns False, we need to set the focus back to gameplay input using the Set Input Game Only node.

Additionally, you can get the Player Controller, then use the Set Show Mouse Cursor variable and set it to True to ensure the cursor doesn’t disappear.

Another thing I noticed is that you have two different Game Modes for two different maps. This won’t work because you need to set one Game Mode as the Default Game Mode in your project settings. This will make it work across all maps.

Also, don’t forget to change Third Person Game Mode to MainMenuGameMode (the one assigned to your menu level).

I hope this helps you!

Thanks for all your help @Mind-Brain @VisAgilis @youngdeveleopersclub, but I just can’t figure it out, how to do all of this with my Newbie Mind. If it’s not too much to ask for, I will post a Screenshot of every Blueprint I made and upload it here to get the best help from all of you.

Third Person Map

Main Menu Widget

Main Menu Game Mode

Main Menu Map

Main Menu Map Blueprint

Project Settings: Maps and Modes

I would again really appreciate any help.

Hey @IUS_Chriszockt, I couldn’t see the part where you possess your player character with the player controller. Maybe you didn’t find that part related and didn’t share it, but wanned to make sure of that.

Hi!

I made a video tutorial where I followed the same approach as you, but wrote the code a bit differently to fix the bug you encountered. Here’s what I did:

  1. I completely removed all nodes from the Level Blueprint.
  2. I kept Third Person Game Mode and made some adjustments to the code.
  3. To make it easier for you to understand, I copied all node and map names exactly as you have them.

Also, keep your maps settings in Project Settings as they are now – they are set up correctly.

I hope this helps! If you have any questions, feel free to reach out. :smiley:

Video

@youngdeveleopersclub, thanks for your help, but it also didn’t work. As for @VisAgilis, I don’t know how to do this. Could you, please, show or explain to me how I can do it?

I noticed you load your level on input, because of this you won’t need to also possess the character, again that is.

Can you check if the possession occurs in the first place though? Remember when I asked you to switch Begin Play with Event Possessed to assign the input mapping context? There, you can click on the Event Possessed node and hit F9 to toggle a breakpoint. With that being done, the game should pause when you load the level from your main menu. You can also check this using a Print String node btw.

If it doesn’t get triggered, check if the Auto Possess Player property (which you can access by clicking on Self from the Components window inside your player character BP, and navigating to the Details window while having it selected) is set to Player 0.

So I checked it and the Game pauses whether I have Auto Possess enabled or not. The Auto Possess was disabled, and I changed it to Player 0 but still with Player 0 or disabled it doesn’t work.

I found the solution. For some reason, no one except one person on YouTube made this specific Input with the player controller and the input mode in the event graph of the buttons.


It now works completely fine. Thanks for the help you guys gave, it still helped me a lot

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.