Obstacle Assault is the second game students build in GameDev.tv's UE5 C++ Developer course. This section introduces students to C++ in Unreal, how to use C++ and Blueprint together, and starts students down the path of level design and gameplay mechanics. My presentation of this project will be through the adventure of the main character. I hope you have as much fun reading it as I did making it.
This is Gideon. He is an adventurer of sorts, pretty much taking on any challenge thrown at him (mostly because he is a video game asset and has no choice). Now he faces his greatest challenge yet - an obstacle course designed by someone with no level design experience!
Why does it look like I am in a cartoon?
Gideon is not amused by his latest adventure, clearly, but at least he has the power to face it. He is a combat expert - just look at his magical abilities!
Oh, it seems the game developer "forgot" to add his abilities (and it certainly has nothing to do with the fact the developer does not actually know how to add in cool particle effects - nooooo not at all). Well, Gideon, I guess it is just you and your amazing physical abilities from here on out. Let's take a look at what this course is all about.
We see a wall and some moving platforms that seem to lead to a way over the wall. The wall spans the width of an island that looks suspended in the air, so it is safe to say the platforms are the way forward.
Of course, Gideon makes short work of these platforms, stopping on one to just take in the scene and enjoy the trip.
Gideon makes his way on top of the wall, where he is now faced with three giant purple boxes moving side-to-side. He makes his first attempt to get past them.
Fortunately for Gideon, the level designer thought of this. His old friend the moving platform is back to give him a second chance at victory.
Once past the pushers, Gideon now has a new challenge: the rotating floors. These floors sit in the ground and spin, making going in a straight line nearly impossible. There is also a trap towards the middle that Gideon finds himself wrestling with, as it seems these platforms were designed to lead him there.
Gideon collects himself and tries again. It is a dizzying adventure, but he eventually manages to get across.
With the rotating floors behind him, Gideon faces his last obstacle. A set of rotating walls stands between him and the building he is compelled to enter. He waits, calculating his moves before he sprints ahead.
But wait, what is that? I thought the rotating walls were the last obstacle! But before Gideon sits one last rotating floor. Behind it is the entrance to the building he has been trying to get to this whole time. It all comes down to this.
After a brush with death, he is able to cross the final floor and enter the building. Inside, he sees his prize. As he approaches it, he notices something is wrong...
And that is my take on the Obstacle Assault project. There were a few technical challenges along the way. Gideon did not come working on the version of Unreal Engine I am using, so I had to figure out how to get him working. I also made an Actor sub-class for rotating objects that I used for the coin and also used as a parent class for the moving platform C++ class, which was a cool way to show off inheritance that I was not sure if UE5 would allow.
Overall, I am excited to keep going in this course and will continue to document my results. Thanks for reading, and for my fellow GameDev.tv students I hope you have/had as much fun with your projects as I am having with mine. See you in the next one!