On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Crypt Shuffle - newbie project

A topic by MGaudi created Mar 06, 2023 Views: 300 Replies: 6
Viewing posts 1 to 7

Here's some insight into the game I'm developing, Crypt Shuffle. You are a wizard exploring a crypt full of dangerous undead creatures. The crypt consists of tile-based, procedurally generated rooms. You fight in turn-based combat. Dying resets the game. I decided that I'd like to capture "classic" mechanics and a low-fi look but modernize things with an isometric 3D perspective. I hope it fits the theme of the challenge - I'll work on it regardless. This is what it looked like last night:

This is my first game jam. While I have professional experience as a developer, I haven't done any recent hands-on programming outside of hobby projects. Naturally, I decided to learn Unreal Engine while working on my game.

So, I installed and set up UE on Friday after work. I bought some 3D assets that looked interesting because I never did any 3D modelling beyond placing cubes in Blender. I worked out some basics with tutorials in a test project. Despite knowing C++, I decided to use Blueprints for understanding how things are done in the Unreal way. I felt mildly confused but confident and ready to tackle my first 7DRL. 

On Saturday, I started with what I felt would be the biggest challenge: Procedurally generating a tile-based level. While that turned out fairly straightforward, I took me the better part of the day to set up some kind of user interface with it and pawns that are able to move from tile to tile. I don't think I've ever had this many Youtube tutorial tabs open in one browser session. Most of the time I spent on problems of the "there must be a good way to achieve this in UE" variety. But whenever I doubted my decision to use UE for the game, it delighted me with a great way to solve my problem. I finished the day with a rudimentary turn-based combat system. 

When I got up on Sunday and switched on my computer, I proclaimed loudly: "Today is the day of animation". In my crudely sketched project plan, this was supposed to take the morning until lunch. Boy, was I in for a ride. I had never done any 3D animation before. It literally took me several hours before finding out about Mixamo. Another couple of hours to understand rigging, the retargetting system in UE and how to use animation blueprints. I shouted many an expletive at my screen but ultimately, I succeeded - and it felt like a true achievement. Late at night, I did some minor enhancements like adding potions found in loot chests and called it a day. 

Given I'm working my day job throughout the week, I probably won't be making a lot more progress but hoping to do some more polishing especially around movement, visuals/lighting and gameplay variety. 

Will it be what I had in mind? Absolutely not. I already took out about 80% of my planned features. 

Will this be a playable game by the end of the week? It kind of is already. I'm certain that I'll be able to finish "something". 

Appreciate any (constructive) feedback and questions. 

This looks lovely!  UE has always intimidated me; getting procedural generation and turn-based combat implemented, plus all the animation, is super impressive.  Look forward to seeing where it is at the end of the week.

(1 edit)

Update for Day 3:

I managed to get a surprising amount of work done and yet accomplish rather little impact on my backlog. Spent a lot of time to animate the door to the next room and broke a few things in the process. Overall, I was able to improve stability, eliminate some bugs and actually made the game look a lot better (at least I think so). Also made two attempts at motivating myself to write a proper A* pathfinding with those messy blueprints. Ended up working out little details like a proper entrance to the crypt instead. It will be future me's problem.

I can confirm that the learning curve for UE is rather steep but it is not exactly rocket science if you have some experience with how programming and 3D games work in general. Definitely a lot of fun once you get to the point where you can just execute certain things and not do extensive research.  

Anyway. Here's last night's build of Crypt Shuffle: 


Update for Day 4:

I'll be honest, it was yesterday that I briefly considered just giving up on the whole idea of grid based movement. Trying to implement A* pathfinding with Unreal Engine Blueprints was a nightmare. And it's definitely something that belongs into a proper C++ class, simply for performance reasons. But there I was, committed to the cause. I lost my mind several times over trying to figure out which line belongs where in what could have been 20 lines of simple, clean code. It was a unique experience for sure. And I did eventually get it to work. 

Now, there's not a lot of visible progress. I did finish a couple of visual improvements and also finally have procedurally generating walls. See below for last night's status of Crypt Shuffle. Today will be about actually using the new pathfinding for pawns instead of the current "fly to destination" movement. Depending on progress, I'll try to get some more gameplay variety into it.


(2 edits)

Update for Day 5:

This week seems to be rushing by. After the frustrations of day 4, I'm happy with having made some good progress yesterday. The movement system is finally working as intended and I was able to shift my attention to other things. Most of the game-breaking bugs are eliminated and I've made a little introduction animation for the wizard entering the crypt. One of the more evident changes happened with the ingame UI. It now features some hastily drawn pixelart icons I thought would go well the overall low-fi look. 

While I'm really looking to increase the number of things to discover as the wizard is exploring the crypts, I'm not satisfied with the lack of combat animations and just teleporting to the next room. Both of these I'll try and work on tomorrow and hopefully find time to finally add more gameplay content. I've made a short gameplay video this time that probably gives a bit of an impression on the current state of Crypt Shuffle.  

https://clipchamp.com/watch/kO9vnBafzlQ

(+1)

Update for Day 6:

Starting to feel the pressure by now. I've had a very productive session, finally adding a core gameplay element: The player can find different spells! They randomly spawn in little alcoves with a bookshelf in the walls. This obviously called for proper representation of currently available spells. Back to making pixel art it was. I'm now at a point where I'm considering the GUI finished.

I was not able to finish all the work I intended to do around combat animations before I was too tired to continue. It's very evident that there will be some features not making it into the game before the deadline but it's getting more and more enjoyable and polished nevertheless. I'm ready for the final push today and will conclude this entry with a screenshot before getting back into it.

Update for Day 7

Wow, what a day and what a week. I had already planned ahead for using as much time as possible before the deadline. I knew it would potentially involve staying up late. I didn't exactly think it would get THIS late but there I was, fixing bugs and trying to squeeze in some last minute improvements to the game in the early morning hours. 

A major concern on this final stretch was a strange bug that happened somewhere inside my navigation code for enemies. I ended up completely reworking large parts of the core turn and animation handling. Eventually, I applied some quick hacks to hopefully ensure the game doesn't softlock. This cost me precious time I had intended for adding enemy and spell variety. Regardless, I consider the game playable and a success.

Personally, my first 7DRL has been a very rewarding experience. I've certainly learned a lot. If I find the time to, I'd be happy to participate again. 

If you would like to see the result, you can download it here - https://mgaudi.itch.io/crypt-shuffle

For those who don't have windows or don't like downloads, I've uploaded a brief gameplay video.