Post-Mortem Of The Dungeon Crawler Challenge

Published January 17, 2019
Advertisement

First I would like to say that I had a lot of fun attempting this challenge. I never participated in anything like this before.

I voted for the Doom and the Dungeon Crawler choices in the challenge poll and was satisfied to see that they both came out on top.

What went wrong

I will start with what went wrong when I started this project, which uses the Unreal Engine. Probably the toughest thing I had to code, was the AI. It simply did not do what I wanted it to do at first and it took me several tries just to get it right. I had to turn on and look at the AI debug screen to see what was wrong. Turns out that my AI's cone of vision was completely disoriented due to a badly aligned capsule component. I simply rotated the capsule 90 degrees and the cone of vision was correct afterwards. But later on I got rid of the 45 degrees vision cone and replaced it with one with full circle so that the enemy could sense the player as if it had eyes all around its head. It was more adequate for the kind of AI that this game would require. 

Another problem that I encountered was that sometimes the AI would stop moving after I had made some changes on the map. It took me several hours to realize that I had to rebuild the map navigation data because the AI simply did not move otherwise.

What went right

This project uses Blueprints for the most part, with some C++ for the basic player movement, setup and camera orientation. I found that Blueprints are extremely easy to use and let you iterate and prototype your game much much faster than pulling up Visual Studio, write some C++ code and wait a while for the code to compile after you make some changes. This is one of the problems with UE4 in my opinion since it takes much longer to compile your C++ code, than to compile your Blueprints. Unity has the upper hand in this as the C# compiles very quickly. This is probably why Epic Games are considering creating an intermediate scripting language between Blueprints and C++. https://www.reddit.com/r/unrealengine/comments/aezhdv/it_seems_people_at_epic_are_considering_adding/

 

So, it was a breeze to simply code game logic using these Blueprints and it did not take me long to adopt them. I am considering nativizing them so I can basically learn how they map to C++, and also to optimize the code. If I do, I will publish the source code on GitHub.

What I have learned

I learned how to use UE4, in my view the most versatile and powerful engine there is to make games right now. You can do so much with it, not just games but all kinds of things from movie content to architectural design.

I learned how to use Blueprints, which at first I thought they were kind of bad since the nodes take so much space and to perform common programming things like loops, branching, etc. it is not ideal. 

I learned how to design an AI using UE4's behavior trees and AI perceptions. It was not easy at first, but it was satisfying to finally make it work.

Level design is another thing I had to improve, and this time it was a bit better than the usual basic things I have done in the past, mostly with Quake 3's level editor.

Conclusion

This challenge helped me learn a lot of things, and I am looking forward to see which challenges will be proposed in the future.

I will go back to focus on my own engine, which uses D3D11/12, and will use what I have learned with UE4 to improve my own code.

 

3 likes 3 comments

Comments

Krohm

Wow so we'll be getting back some form of new UnrealScript? I didn't expect this to happen so soon!

January 17, 2019 07:06 PM
Awoken

I played it.
Have you played it to the finish?
Seems each enemy you encounter will deal damage, I noticed there is an ability to use health-potions.  But alas I didn't find one before I died.  I did stack up gold bars though.  

January 18, 2019 05:58 PM
Hermetix
1 hour ago, Awoken said:

I played it.
Have you played it to the finish?
Seems each enemy you encounter will deal damage, I noticed there is an ability to use health-potions.  But alas I didn't find one before I died.  I did stack up gold bars though.  

Yes I completed it a number of times. You can ignore enemies by walking past them. They will follow you around if they sensed you but you can complete the map without killing anything. Goblins sometimes drop health potions, and very rarely resurrection potions, and there are a couple of health potions in chests around also.

January 18, 2019 07:02 PM
Hermetix

Not sure if my last post registered at all as I don't see it on my profile or the GameDev timeline...

But if you try the game, let me know how smoothly or not smoothly it runs on your system along with your system specs. Because I built the game on a rather low to medium range computer, just 8GB of RAM and a Ryzen 3 2200G APU. I chose the "scalable" option but I am curious about how it runs on other people's computers so maybe I will make a maximum quality build later and adjust gameplay aspects if I have time.

January 18, 2019 10:45 PM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement
Advertisement