Monomyth - January Update

Monomyth

MONOMYTH is an immersive, first-person dungeon-crawling RPG inspired by the genre's late classics. Embark on a journey through a vast and highly interactive game world as you unravel the mysteries hidden beneath the ancient fortress of Lysandria.

Hi, dungeon-crawling fans! We are already a month into the new year, so it is time for a new update! This time we will discuss the latest improvements and Monomyth's participation in the upcoming Steam Next Fest, starting on February the 5th, 2024. [previewyoutube=6mHmzBqvYSg;full][/previewyoutube] As always you can find the video script below. Best wishes, Michael ------------------------------------------------------------------------ Hi, dungeon-crawling fans! It’s time for the first update in 2024! Today’s update took a little longer than usual because I am currently preparing a demo to take part in the February edition of the Steam Next Fest. So let’s take a look at the latest changes and the new demo! Over the last month, I have, again, largely focused on polishing. In fact, I only implemented one very small but interesting new feature. Players can now look through the keyholes of closed doors. To do so, they have to approach the door while crouching and then interact with the door handle, respectively, the keyhole. This way you can see what’s going on in the room behind the door and whether or not it is safe to enter. I also improved loading times significantly during the last month. Initially, the persistent objects of a large area had a massive loading time of around 45 seconds. I finally found the time to improve this and now the loading time for these objects is not even a tenth of what it was before. Now you probably wonder, how on earth can this be? How could this take so long to load, and the answer is actually quite interesting: The main reason for these massive loading times was how a certain data structure, to be more specific maps, work in UE4. I used this data structure to create a nested registry for each persistent object, mapped against the ID of each persisted level. The problem with the nesting is, that in UE4’s framework the access methods for maps copy the mapped content. Apparently, you cannot access nested contents via reference - unlike in an array, where this is possible. So if you access a nested map a hundred times with the find method, the nested content is copied a hundred times. And in this case, the nested content was the entire persistent object registry of a certain level - and copying that a hundred times, let alone for every object in the level, is a bad idea. So, I decided to pre-cache the mapped registry of the last loaded level, which made the repeated access on the nested map unnecessary. This was a very simple solution once the problem was clear. Another thing I did to improve the loading times was avoiding unnecessary calls between the persistent objects and the registry. So, during loading, I simply passed the persistent object registry via reference, and each object just looks up its own data. Also, a fairly simple problem, once you tracked it down. Now to get back to less technical things, I also polished the Heartlands. Plenty of sections in this area were reworked and received new lighting. Sometimes I just changed the geometry a bit, sometimes I added new ways to traverse the level. This was specifically beneficial to stealth gameplay. There are now more ways to infiltrate certain locations and finish quests in a more sneaky manner. I also added some more level mechanics that take advantage of enemy factions and their potential infighting. This provides some possibilities for creative problem solutions. Further, I worked on gamepad support. The game itself can now be fully played with the gamepad. For the menus, so far, I only added gamepad-controlled mouse inputs. So your analog stick will control the mouse. The gamepad’s front buttons act as mouse buttons. This was a relatively quick solution for full gamepad support, but so far it works surprisingly well. It still has to be improved somewhat, for example by adding navigation hooks, so you can jump from UI element to UI element by pressing the shoulder buttons. But now let's come to the demo: Right away, the demo area is still the Serpent’s Bastion, however, the area has been expanded and you will approach it in a different way. Some of you may remember, I mentioned in an earlier update that I had moved the Serpent’s Bastion from the beginning of the game to the middle. Correspondingly, you will start in a slightly different spot. There is a new quest, there are new sections, and also new enemies. Of course, the old demo was built on the old code base. So this demo will contain all the new features that I have spoken about in past updates, for example, the new spell system, free saving, combat improvements, and so on. The demo will replace the old demo on Steam. It will be available at Steam Next Fest, which will start on February the 5th, 2024. The replacement is actually quite important, because I keep getting feedback for the old demo, and while I try responding to it all, it doesn’t really make any difference, because the current build of the game is already a different codebase. Patching the old demo would mean I would have to work on an old, abandoned codebase, which wouldn’t make much sense. Now, with the new demo and codebase in place, I can easily patch things that demo players suggested. I can even update the demo with the latest beta patches. Which also means, that I will try, yet again, to be more active on the Steam forums. During Steam Next Fest anyway, but also afterward. So, as I said, Steam Next Fest, will start on the 5th. Be there, try the demo, and please wishlist the game. I will probably upload the build a little earlier. I’ll keep you updated about it all and I will see you soon!