CornStalking

I love working with enemy behaviors, and this is my primary playground.
CornStalking is a 4-player co-op, unapologetically absurd, horror-adjacent sneak-em-up where you play as a real haunted doll in a fake haunted attraction. You run around scaring as many guests as possible, without letting the haunt workers realize that their haunted corn maze is actually haunted.
There are quite a few systems in CornStalking that I’m proud of. There’s a perception system that uses leaky accumulators to track awareness, a patrol authoring system that deserves its own blog post, and a corn field generator that ended up providing some really useful lessons in optimization.

Haunt worker AIs walk around pretending to be zombies until they see a player, and then they’ll break character and run away, using completely different animation sets. Originally I set this up with behavior trees, but recently I switched it all over to use state trees, and I have no regrets.
I Learned Some Basic Stuff About Dynamic Materials And I’m About To Make It Everyone’s Problem
That is actually what I named it, because I’m good at naming things.

When UE5 came out, I was still working on a UE4 game professionally, so I made this to try it out. I had also recently learned that dynamic materials, which I’d long considered the purview of artists and their unknowable sorceries, are mostly just math. I threw this together in all of three weeks, starting from the First Person Template.
This one is essentially an over-engineered coloring book. The First Person Template launches tennis balls that interact with physics objects, and I made it shoot paint balls. Your gun cycles through colors, and whatever color it is when you shoot it, that’s the color of your paint ball. Whatever surface you hit changes to that color.
While I think it shows that the design took a backseat to experimenting with new tech, it was nice to explore some new things, like the massive input overhaul between UE4 and UE5. It’s playable here.