[Free Community Project] [Blueprints] Cardinal Menu System | Steam and LAN Server Browser and Pings

[Free Community Project] [Blueprints] Cardinal Menu System | Steam and LAN Server Browser w/ Friends List, Pings, Avatars, Control Mapping, Graphics, Audio, Game Settings, and Credits Menu

Here is the menu system we are using for one of our projects. We used a combination of community content. (mordentral’s Advanced Session Plugin, Nick Darnell LoadingScreen, rama’s Key Rebinding, The Tune Peddler’s Music, ZioYuri78’s MainMenu, Graphics Settings Widget by Mathew Wadstein, and Gamepad-Friendly UMG by rama)

Our organization is building a nonprofit game development cooperative at http://metahusk.com/. We are a recognized 501(c)(3) tax exempt organization organized for educational purposes.

To download the project, find instructions, information on how to import it to your project, visit the forum post below.

For help, or bug reports, or suggested changes, please respond in the forum post in the link above. (You can use a guest account if you don’t feel like registering.)

To use The Tune Peddler’s music, you have to register an account with their website. http://thetunepeddler.com/.

This project is released for free under The MIT License (MIT) So please give credit where credit is due. (The readme has more information.)

Thanks everyone for supplying the community content we used. :slight_smile:

Wow it’s really, really… coool :smiley:
Thanks for share mate :smiley:

how can I change this so when you click on new game it just starts the game instead of a server browser.
I don’t want to implement that right now.

Thanks, Hope it helps :slight_smile:

You have to change some of the BP’s.
Under Cardinal -> MainMenu -> Blueprints ->UI -> Open MainMenu Widget BP
Then click the OpenSubmenu Function
Then you will see Play submenu - add an Open level node there that points to your map.

thank you very much

say I know you didn’t make the loading screen plugin but would you know how you can change where the animated loading icon is on the screen? like in your menu you have it on the left bottom corner, how can I change it to the middle?

The LoadingScreen plugin is found at https://github.com/ue4plugins/LoadingScreen

I haven’t messed with it enough to center the loading icon. I will work on that in a month or so from now. It was included because someone requested it. If you find out before I do, let me know!

Edit: It looks like you can modify it in this file. https://github.com/ue4plugins/LoadingScreen/blob/master/Source/LoadingScreen/Private/SSimpleLoadingScreen.cpp

It looks like it should be centered. Maybe it’s a bug?

yup. looking at the code it says the throbber should be centered. and mines at the left side.


				+ SHorizontalBox::Slot()
				.Padding(FMargin(25, 0.0f, 0, 0))
					// Convert font size to pixels, pixel_size = point_size * resolution / 72, then half it to get radius
					.Radius((InScreenDescription.LoadingFont.Size * 96.0f/72.0f) / 2.0f)

say, where would I find what controls the buttons for the menu? like you push M when in-game. is that in the source code or a blueprint somewhere?

That is is the Player Controller located at ThirdPersonExample -> Blueprints -> ThirdPersonPlayerController

We just tested 4.13 and the persistent graphics settings need to be reworked. We will probably migrate away from the MainMenuLib plugin. The update may take a while. So far no other bugs have been discovered outside of minor depreciated blueprint functions.

Thx a lot for sharing this, it’s really well done and easy to understand, im glad i found it, it’s going to help me a lot.

Hi @Parvan, Thaddeus

Thanks for sharing it and organizing in a very professional way the exelente works presented by mordentral, rama, The Tune Peddler, ZioYuri78 and Nick Darnell

I have compiled and tested with the engine candidate 4.13.1. It worked, as far as I could test. Only need a new updated Victory plugin. Rama already updated the source code on github. I have a great desire to press the donate button popup that acts like one web browser within the game. :slight_smile: It would be interesting browser being opened in an immersive 3D window.

But I have one doubt, I’d like to drastically change the main menu layout (text positions, style and animations) and add a singleplayer option. But I do not understand how the menu texts and animated rolling boxes are animated since it are not using the timeline in UMG editor. I’m just having trouble understanding it. The MainMenu uses any internal feature of the mainmenu dll’s code to animating texts and boxes?


No it uses UMGs Widget animator you can find each animation after each switch used for the radio buttons.

We went ahead and released the project for 4.13. The download is live. The graphics settings may have bugs on some systems, but for the most part it seems to work in my experience. I will rebuild the graphics component using blueprints in a future release. I’d get it done now but it it will take a while and I’m in a cyber defense competition next week. (Which is consuming a lot of my free time.)

I also added a starting video on the project. It took me a while to figure out which video format the engine likes. Now you can take a look at the video and use the same config. Hopefully it saves you all some time.

Anyone is welcome to help with the project if you’d like to expand it. It’s open source. Just give me a message with your ideas and we will talk about it and I’ll give you write permissions to the repository. I’d allow forks on the repo system but I had a few random forks people made and then abandoned. It seemed like they just wanted to see if it worked. (That’s why they are disabled.) I’d use github, but git doesn’t like huge repositories. That’s why it’s on Mercurial on a private VPS.

I’m glad you liked the project. :slight_smile:
You’re welcome to help if you’d like.

Here’s where the widget animations are controlled. It’s difficult to figure out what all the blueprints too. I forget when I haven’t worked with them for a while.

Sorry it took me a while to answer. Thanks for answering right away OverRated_AU.

The first image is where you find the widgets. The second is where the animation is. And the third is where the animation is called.

Thanks @Parvan, you are very attentive.

I will try to modify the layout a bit, so if you allow me I can post the results.
Really the UMG programming inside this menu is quite complex, especially the nodes connections for in-game Web-browser functionalities, But everything is beautifully organized.


Yeah they are complex. Let me know if you need any help.

We released a new version. This release includes a simple single player button (as requested), cleans up some of the debug printing to console, and includes a simple map loading video.