Metruh Engine completed
Today, concluding with a long successful testing session and ironing out some of the last bugs, marks the day that the Metruh Engine has been completed. This is a huge step in making the game of my dreams become a reality. For the last few months, Ive already started working heavily on the actual content from my game, but the Metruh Engine now beeing finished means I can now commit fully to using it to create my dream RPG game project.
In February 2019, I will have worked for 5 years on this project. Its been a long road, the project has evolved alot since then and its turning out better than I could have ever hoped back when I first started. It was a magical moment when I finished my first player character model after almost 5 years of work and walked around with it on the map. The graphical fidelity that I now manage to achieve is better than anything I could have ever hoped for when the project first started. Back when I first started this project was around the time the marketing campaign for the Witcher 3 really started to pick up and I would daydream about my game at some point maybe reaching a comparable graphical fidelity. Now its looking like my RPG will actually look better than the Witcher 3 in some places.
Of course the Metruh Engine will continue to evolve as the project progresses, but now the progress of the engine is driven by the development of the game itself.
All in all, the engine now includes the following features:
- Intricate TPS movement and camera
- An in-depth and skillful combat system
- Intelligent and easily modifiable enemy AI
- Completely custom HUD and UI
- NPC and Dialog System
- Quest System for handmade quests
- Quest System for radiant/randomized quests
- Pickup system
- Interaction with the world through abilities
- A system for slight randomization in the world
- Intricate character progression (levels, stats, perks)
- System for unlockable additional abilities
- Item and Inventory system
- Map system
- Underwater gameplay
- A puzzle system
- A powerful level of detail system
- An adventure game like object "repair" system
- Readable notes
- Custom tooltips
- Multiplayer with up to 6 people
Probably even forgetting some of the smaller features I implemented. And all of it working in a huge open-world game environment.
Finally, here are some screenshots from a work in progress environment from my game. Though its not finished yet, all the assets here are created using photogrammetry/3d scanning real-life objects:
Hope you like it!
The more the project progresses, the more Im confident that I can deliver a SC2 mod that has a level of quality, intricacy and scale that has never been seen before and is rarely ever seen in fan projects overall. Of course I also have to thank all the people who supported me along this journey. In the coming months, a full reveal trailer will be released and I cant wait to show you guys what I have been working on all these years.
I will continue to post updates for this project here until the full reveal. And I hope that it will excite you just as much as it does me.
Just wanted to stop by and say: Amazing job! Keep it up! :-D
LOD (Level of Detail) System
For the last month or two, Ive been hard at work to develop a proper level of detail system (a performance saving measure) for the Metruh Engine and thanks to invaluable contributions from both Talv and Eclipse, the system is now finally finished.
And the performance results are absolutely astounding, it is a game changer.
What this allows me to do is have a huge amout of doodads in the map (talking 10000 - 20000), aswell as have a visual fidelity that is as good as the screenshot above, without either affecting performance all too much.
A quick video showing it off (watch it full screen, 1080p, notice the detail fading in/out in the distance) In the final scene, the screen is more zoomed in to make the detail scaling better visible:
The system makes it so that only doodads in the vicinity of the player actually exist in the game world at all (they are completely erased otherwise, not just hidden). It also scales the model quality of the doodads depending on how close the player is to them. There are three degrees of model quality: High Poly, Mid Poly and Low Poly. It required alot of clever coding, but it was totally worth it.
Heres an example of the detail scaling models:
To give you some numbers:
A scene with 10000 doodads that was using high-fidelity models previously ran at 88 FPS. With this LOD system activated, the same scene run at 215 FPS.
The results are equally impressive on low-spec PCs. Someone with a very weak CPU, when playing my game, would have his FPS crawl to halt with about 1 - 5 FPS (no kidding). With this system activated, he ran at a stable 50 FPS.
Its this system that will make my vision for this RPG possible. Without it, a game of the scale that I have planned simply would not be possibly in Starcraft 2.
Theres more you can do with this system aswell. It allows you to interact with with doodads using triggers in a much more direct way, you could for example easily trigger that grass moves when the player walks through it. Another great thing about this system is that theres really no downsides to using it: You dont have to change your approach to terraining and you can turn it on and off using a single variable!
I will probably release this system once my game is done, however, most Starcraft 2 maps really wont get much out of it. For one, its made for third person gameplay, or atleast a camera that follows one unit. Additionally, it only really shows its strength when you use a massive amouts of doodads and/or you are using very high poly models.
Did a graphics test to see how far I can push Starcraft 2s graphical capabilities for this project. This is all rendered ingame:
A huge amout of new stuff has been developed since my latest update on the forums, heres a look at the latest completed feature, which is underwater gameplay:
Im especially proud of this little feature, the water effects actually get applied when you pan the camera beneath the water surface:
You can also jump into the water from any point, though the animations are not finished for this yet: