[Tutorial] Creating an External Game Launcher [Settings Adjuster]

This is hardly a tutorial but I know its harder for some people to reverse engineer other tutorials as well as other peoples work/problems to get a decent fix for a problem.

So this is just a small tutorial on some of the steps required for you to take to convert this UDK Game launcher tutorial into a UE4 one like I have.

watch?v=Y1DjtfE70cg

This tutorial shows you the lines of code required to access and communicate with .ini files, IT also provides you with the project files so you can just tweak the existing tutorial.
However you will need to prepare your UE4 project correctly before doing this to allow access to .ini files after you Cook & Package.

[If you are having trouble Cooking and Packaging a BLUEPRINT ONLY PROJECT then read my tutorial on how to POSSIBLY fix it: RunUAT.bat ERROR: [Blueprint Project] - Blueprint - Epic Developer Community Forums]


You will need to do as the answer says in this thread : Graphics settings for packaged game - Programming & Scripting - Epic Developer Community Forums
Which is to create an .ini file called DefaultGameUserSettings.ini and place it in the “Your Project > Config” directory and recook/package the project.

Once you successfully manage to COOK & PACKAGE your project and LAUNCH IT FOR THE FIRST TIME you should now notice a new folder called SAVED navigate to “Config > WindowsNoEditor” and you will find your .ini files to edit.

From here its a case of using the information taught to you in the above tutorial to change directory paths and SettingsGroups accordingly to change your settings before the Project boots up.

[http://puu.sh/bTlhi/9253d9d705.jpg

http://puu.sh/bTlie/a172700476.png](http://www.stowawaygame.co.uk)

Above is a shot of the Launcher I made using the same tutorial and currently works perfectly.

P.S. Be aware that i have not tested this on any other Packaging types, e.g: Windows or WindowsClient
These change directory pathing so you will need to look out for this especially with x32 and x64 packaging.
I can only guarantee this will work with a WindowsNoEditor packaging system.

Best of Luck

Please let me know if this was useful or useless
Or if you want a more in-depth tutorial creating a UE4 launcher

This is awesome and helpful! Thank you!

Without actually tinkering with it right now. (I am at work) I wonder how easy it would be to build in a FTP patcher into this.

EDIT: Actually I forgot about this. It was an updater for UDK that pulled files down from FTP. Perhaps a quick slap together to get them both to work hand in hand! :smiley:

Im glad this helped you out dude,

Thanks for the comment :stuck_out_tongue:

Thats great, thanks for this, i wouldn’t have the first clue otherwise :).

No problems ,
I had no clue either but its quite straight forward mostly and its quite nice to have when your games ready for it.

This is awesome! However, I can’t seem to find all the right layout / settings for the .ini. Is there any chance you can post your .ini? And you say put it in your “GameConfig” directory; I’m assuming this is in the Doc/ProjectName Config area and not the cooked content one?

Sorry for all these questions, been scratching my head for the past couple of days trying to get this to work.

Awesome work though!

Hey,

Sorry about the very delayed reply we have been very busy with the launch of our Alpha/Kickstarter,
Here is a shot of my Project and folder layout so you can see where to put the file.

Below is the content of the .ini File


[/Script/Engine.GameUserSettings]
bUseVSync=False
ResolutionSizeX=1920
ResolutionSizeY=1080
LastUserConfirmedResolutionSizeX=1920
LastUserConfirmedResolutionSizeY=1080
WindowPosX=-1
WindowPosY=-1
bUseDesktopResolutionForFullscreen=True
FullscreenMode=1
LastConfirmedFullscreenMode=1

[ScalabilityGroups]
sg.ResolutionQuality=100
sg.ViewDistanceQuality=3
sg.AntiAliasingquality=3
sg.ShadowQuality=3
sg.postprocessquality=3
sg.TextureQuality=3
sg.EffectsQuality=3



Here is a shot of how the folder layout will appear AFTER the game is packaged

What you will notice is once the game is FINISHED packaging, you won’t actually have this folder.
This folder structure only appears once you boot the project for the FIRST TIME.

You will also have a CLEANSOURCECONFIGS folder this will contain the default info that you originally put in “Your Project > Config” folder.
It will use this as defaults for the game if they aren’t set manually.

What i recommend doing is launching the game and closing it instantly just to generate these folders, then Zip/Rar your game for distribution.
I hope this helps clarify any confusion

Hi @Nemecys

My scalabity ini file is empty, is that correct? I really want to do an external launcher
my project is quite demanding and this configurator would be great for tweaking from computer to computer, i’m currently on 4.14.3 and the folder change a bit and the content of gameusersettings also changed from what you shown

my question is: i do really need to cook and package the project without create a single .pak file for having these files? or since it’s generated once, next time i make the build but this time using the option to make the project under a giant .pak file, i can just copy the inis to the packaged project and this going to works?

another question is: this is my currently gameusersettings

can i just add a [ScalabilityGroups] section bellow this and the lines of what i want to the external launcher have for configure and this going to work, or i will doing this wrong like this?

thanks for this useful tip!

EDIT: answearing my own question, i made some tests here and worked like i tough. I had to rename the GameUserSettings to DefaultGameUserSettings and the [ScalabilityGroups] section worked as well, now i will take a look on the scalability wiki to see what more i can bring on.