top of page

Frits de Laat

Level designer

About Cabinet of Curiosities

Cabinet of Curiosities is an action roguelike dungeon crawler set in a mysterious library. Upgrade your staff with mysterious artifacts to defeat the many strange monsters and uncover the mysteries that lie deep within the library.

Project roles

Level designer

  • Created level design pipelines and documentation, from modular asset kit to level layout restrictions.

  • Created level generation plans and enemy spawn locations.

  • Created all rooms needed for the level generation, each having their own small unique challenge.

  • Created all level design ingredients with visual scripting (Unreal blueprints) and their placeholder assets with BSP.

Lead designer

  • Ensured creative vision for the project was maintained, keeping all decisions aligned with the design pillars and gameplay intentions.

  • Ensured stand-ups, sprint planning and sprint retrospectives were held at their respective times and dates.

  • Ensured smooth communication between the design team, keeping everyone updated and aligned on the project goals.

  • Ensured smooth communication between disciplines and with the product owner, by holding regular lead meetings to go over project goals and future plans.

Check it out here!

Research & Prototyping

Research

  • Researching level generation from reference games.

  • Analyzing room layouts and how other games create their challenges within the separate rooms.

  • Looking into level design ingredients, finding out which ones could work for our concept, and creating new interesting ones from those ideas.

  • Drawing conclusions based on research done, to create a plan of action for what we would like to take away from this research for the next phase in development.

Room metrics

  • The custom engine we were working with was grid based, which meant our assets could only be placed on a 1 by 1 meter grid.

  • Together with the lead programmer, we decided on the different room sizes and how they would connect the doors, to ensure enough options within the level design, while adhering to the custom engine constraints.

  • Corridor sizes were 3 by 3 meters, based on the 3C's, to ensure both the player and enemies had enough room to move around.

wqdqw.PNG

Modular asset kit

  • The modular asset kit for level design also needed to adhere to custom engine constraints, which meant that all assets are based on the 1 by 1 meter grid.

  • The assets consisted of basic geometry such as walls and pillars, as well as level design ingredients and basic set dressing to indicate where environment art would have space to set dress.

  • The assets were made with the BSP tool in Unreal Engine.

dwqawrfaw.PNG

Prototyping

RoomDesigns.PNG
  • Prototyping of the rooms was done in Unreal Engine, since the custom engine had no visual editor.

  • Initial room layouts were based on our initial enemy designs and other ways I could differentiate rooms from each other.

  • Creating rooms within engine with the modular asset kit was way faster than sketching out all different room ideas, which meant I could easily and rapidly try out all sorts of different room layouts.

qweweaaa.PNG
  • With a lot of room ideas blocked out, I picked a couple that were the most interesting and fit our gameplay intentions best. From there, I started iterating on them and making them fit within the generation process.

  • With a lot of these rooms blocked out, I also started combining room ideas to create more interesting gameplay scenarios within those rooms.

Testing & Iteration

Playtesting

feedback1.PNG
dwqawfadwq.PNG
  • Playtesting was done remotely during the COVID-19 quarantine.

  • The data was gathered by asking testers questions prepared beforehand, as well as noting down any feedback feedback that was given during play sessions.

  • Conclusions were written down and assigned to the designated people to iterate on, keeping the document up to date when iterations were made.

Iteration

PNG2.png

First blockout of one of the rooms

QvLWyq.png

Final version of the same room

  • Every room had its own iteration cycle, with player feedback being implemented based on set action points.

  • Rooms were also changed based on macro decisions, ensuring that the room kept their unique identity, as well as fit in with the rest of the rooms to create a floor.

  • By indicating space for set dressing with blockout assets, gameplay intentions were not obstructed, ensuring a smooth set dressing process for both level design and environment art.

Quality assurance

QA.PNG
  • I set up a test plan for testing major builds. Before every push, we would go through the new build and test if everything was working as intended.

  • Testing plans for both the Unreal engine build and the custom engine build were in place, with mainly the Unreal engine one being tested regularly.

  • Bugs were separately listed in a Trello board, were people were assigned to designated bugs to be fixed, ranked on severity and impact.

Level design ingredients

Concepting

  • Research was first done on existing level design ingredients in competitor games.

  • The level design ingredients were concepted and prototyped within Unreal Engine, and after playtesting with them, we kept the ones that worked for our concept.

  • Initially, a couple puzzle level design ingredients were made, to create more interesting room challenges, which would give access to secret rooms. In the end the concept shifted more to a bullet hell game, which had no room for a more slow paced puzzle challenge in between.

  • All level design ingredients were implemented through visual scripting within Unreal Engine.

Iteration

  • The final level design ingredients were focused around fast paced gameplay and hazards that would hurt both friend and foe.

  • Multiple iterations were done regarding damage values, range etc. to keep them in balance with both the damage and health values of the player and enemies.

Marketing

dwqawfqwdq.PNG
  • Setting up and maintaining the Itch page regarding future updates.

  • Providing screenshots and videos of levels and gameplay to be used for marketing material.

Reflection

This was definitely the project I had the most fun working on. I did a range of tasks throughout development, with my main focus still being level design. Creating levels within a dungeon crawler takes on a whole different jacket compared to the usual third person adventure game or first person shooter. There was a lot of research needed for me to start understanding how to approach the level design pipelines and how my previous learnings would apply to a game like this. In the end though I feel like I struck a nice balance between individual room challenges, as well as making sure it worked coherently as a whole.

My main enemy during this project was time. There was so much that we set out to do, but so little time to actually accomplish it. One of the project's constraints was that the game should be made within a custom engine made by our programming team. This made it so that our entire resources on programming were spent on the engine, while Visual art and Design were making sure that there was a game to be build on the engine. As the design lead, I decided that while the custom engine was still in the making, we would prototype all of our ideas within Unreal, to ensure that we would have the least amount of dependency on Programming for the time being.

Almost halfway through the production phase though, we sat down with Programming and came to the conclusion that the engine would not be in shape for us to create a coherent game experience within it. This led us to the decision to move forward with the prototype project in Unreal, and make the full game experience in there, which definitely did not come without its own problems. We made sure to keep track of all of the most important tasks, but even then, we had to settle with about only 30% of the features and content of what we initially set out to make.

In the end though, I am very proud of what the team has been able to accomplish within this short amount of time and would not trade this experience for anything else. I learned a lot about the process of creating a dungeon crawler, as well as working with custom engine constraints as a level designer. Letting features and content go for the better of the project and trying to salvage a coherent experience out of it also was a real challenge, but thought me a lot about task prioritization and dividing work. If there was one thing I would like to have finished within the project though, I would say the floor generation and making sure it was properly balanced were on my main to-do list. Our lead programmer and I created a lot of plans, which in the end sadly did not come to fruition.

Frits de Laat

Mail.png
Linkedin.png
Twitter.png
bottom of page