Blood For Blood


Italian Trulli

For this project, we needed Procedural Generation made in C++. With the time we were given, I made our entire level generation system including noise based terrain generation as well as smart obstacle placement. One of the cooler features I added to the terrain generation was realistic water spawning. Since our level is made out of hexes that have height displacement based on noise, I performed water generation after noise application, finding natural low points and leveling land to add water there.

One of the other important parts is making sure all of the level are accessible. This means when spawning trees we have to make sure we don't cut off other parts of the level. I used some graph theory and evaluated whether or not a hex was 'vital' when deciding to put a tree in an area. If the creation of a tree caused an inaccessible island to be formed the rest of the hexes on that island would also be made trees.

This project, we also embarked on learning the Gameplay Ability System, a huge C++ framework that Unreal has for managing player abilities. I worked on the targeting system as well as some of the architecture for the abilities. I did work on making sure animations corresponded to attacks and implemented our sound system using Gameplay Cues. Our hope with using the Gameplay Ability System is we will spend a lot of time working on the base features making it easy to expand on abilities as we work more on the project. It didn't end up being a good decision for a game jam game since GAS is so large and too big for a game jam game, but it was a good decision in the long run.

Italian Trulli