Help with game fundamentals - Input and Video Settings

Hey, everyone.

I’ve been working on-and-off on UE4 projects for a while now, but I keep running into a couple of snags when I’m setting stuff up. I always try to get menus (Or at least placeholders) out of the way before focusing on the rest of the project, but I’ve been finding it very difficult to add functionality to my Projects’ Options menu.

First of all, rebinding keys at runtime. I’ve spent a few hours scouring the internet for answers on this, but I haven’t found anything concrete (Outside of Blueprint libraries and Engine extensions, which I’ve been avoiding using).
From what I can gather, the only real way to edit the Project’s input settings outside of the Unreal Editor is to directly modify the Project’s config files (DefaultInput.ini), but I haven’t found much information on how to do so using C++.

Secondly, editing the Project’s video settings at runtime. I’ve found about as much useful information regarding this as I have regarding rebinding inputs, and potential solutions sound similar (Editing ‘.ini’ files somewhere).
I did find a method to do this using Blueprint, but I’ve been trying to stick with C++ for my recent Projects.

Is there any official documentation on this that I’ve missed somehow, or is it just way harder to implement than I thought?
These seem like incredibly fundamental and important things for games to include, and I’m having a hard time getting anywhere with my Projects without being able to set this stuff up.

Thanks in advance.

The official documentation for editing config values via C++ is in the source code. Plus, you already acknowledge that there are plugins that do this for you, which are also in C++. I know that Rama has a bunch of utility functions that are for Blueprints, but it is all grounded in C++. Both of those places are a good starting point. A good place to look is the editor code as it contains a lot of modules that can edit config values.

I’ve seen Rama’s stuff around before - not sure why I didn’t think to look through the source like that before. Thanks for pointing that out!
I’ve also seen the video settings blueprint library before, and it seems to be the solution there, too. Again, not sure why I didn’t think to call the functions in C++.
The last link 404’s, but I’ve found a bunch of information on GConfig, which all seems pretty useful.

Thanks again for pointing this stuff out! I haven’t worked on any big C++ projects for a while, so I’m pretty rusty. I should be able to get a heap of work done once I can get my menus up-and-running!