This week was very productive, and I'm super happy with all that I managed to get done. On Monday I realized that there was still one tab in the pause menu that was empty, and that was the audio log section, where the player can replay the audio files that they've heard before in the game. This was a simple task: I just had to create a widget and add one to a scroll box for each unlocked audio log, very similarly to the save files in the main menu. I did have to make some changes to the places in which things are saved. The game saves whenever you pass near a checkpoint, but we didn't want to unlock the audio file until the player interacts with it. So I had to create a function that saves just the audio logs that are unlocked, and call this upon interaction with a lore note. The time played now also saves when the player exits the game, since it was strange to play the game and have the time not change if a checkpoint is never passed.
The rest of the week I spent doing options and key bindings, which went better than I though it would. It was fairly simple once I found a tutorial, and using console commands I was able to get graphics settings done quickly. It took a little more time to get sensitivity and sound volumes, but those gave no trouble. The key bindings were more work, as I had to change how all of the inputs worked. Originally events were triggered on key press in the player blueprint, but I had to create custom functions that did all these tasks, and run checks for each key press in the newly created player controller blueprint, which was tedious to say the least. In the end all the inputs were finished and they keys can now be rebound, although there are still some issues that I need to work out. Next week I want to finish this system, and get all the new UI assets in before Armageddon.