Project overview

Most of my professional and personal work has been focused on Multiplayer Level design, so I thought I would challenge myself and create a single-player map. I decided to make a level in the ‘Prodeus’ editor as I am a big fan of games similar to Doom. Prodeus is ‘a FPS of old’, similar to the older Doom games, but using modern rendering technology. To see more about Prodeus, please follow this link: https://store.steampowered.com/app/964800/Prodeus/

Below is a video of a full playthrough of the level I created. To see more about the process of creating the map, as well as an analysis of what I could have done better, please look below the video. You are able to play this level through the games, ‘Community Workshop’.



Prodeus Single Player Map

For this project, I wanted to set myself a few goals. Given that most of my experience has been in Multiplayer map design, I tried to keep my goals few and simple. The main goal of this project was simply to ‘create a singleplayer map’.

Project Goals:

  • Create a single player map with a length of between 10-15 minutes.

  • Learn the Prodeus editor

  • Experiment with and implement mechanics which are unique to this map.



Process

Mechanics and Prototyping

For mechanics, I came up with some simple ideas that I could implement, especially given I was new to the editor. I didn’t want to execute on an idea that I couldn’t do due to lack of editor knowledge (as well as the potential to spend a lot of time trying to achieve this). I tried to keep the mechanics related to the theming of the level, they include:

  • Explosive crystals (Essentially explosive barrels)

  • Movable mine carts

Crystals

Crystals that you find throughout the cave segments of the level

Crystals you see in the underground facilities. They are essentially meant to be ‘collected crystals’ but still explosive.

The idea of the crystals was fairly straightforward in terms of implementation and ideation, as they are essentially replicating what you often see in other games, ‘explosive barrels’.

The only issue was to give players the exposition that they could destroy these crystals, and that they would do damage to enemies. To begin with, I had a few ideas to introduce the explosive crystal mechanic to the player. For example, at the beginning, the crystal would block the way, and an enemy would be placed next to it. The only option the player would have is to destroy the crystal, which would also kill the enemy and open up the way. I changed this due to the worry that players wouldn’t immediately know that the crystal can be destroyed, which could cause frustration. The crystal mechanic isn’t necessary important in terms of gameplay - it’s not a mechanic you need to know to progress through the game. With that in mind, this is how the introduction looked:


Mine Carts

The mine carts were a little trickier to implement and required more thought and iteration. Essentially, from a lore perspective, the idea is that the mine carts are transporting the harvested crystals. In terms of the high-level goals for this mechanic regarding gameplay, they include:

  • The mine carts should be fast and lethal, they are a instant kill mechanic if hit by one.

  • They should be placed in obvious locations and not hidden - the player shouldn’t feel cheated if he gets hit by one

  • The player has to dodge these, but can also bait enemies into the path of these

  • If possible, combine it with gameplay for a more dynamic experience

As they are a lethal mechanic that can instant kill the player, it was important to introduce these to players carefully and clearly.

The first time a player will see the minecarts.

I introduce the minecarts by ensuring the player has to open a slow-moving glass door. The minecarts are visible before they open the doors, and considering the speed of them, I hoped that from this players would recognise that they are dangerous. However, to add to this, I place enemies on the other side of the track, which will approach the player once the doors are opened. Naturally, I hope the player will retreat once the doors are opened and see the enemies move towards them, and in turn, they will see them getting squashed by the carts.

The cart tracks have the same lighting and look throughout the map. They are always accompanied by red lights, so players can easily recognise them.

Overall, I think I achieved the goals for the minecart, except for the last one. Originally, I tried to combine the mine carts with the frantic gameplay of Prodeus. But the fast-paced nature and the constant ‘in motion’ gameplay meant that it didn’t combine well with the Minecarts. It was easy at times to accidentally fall into the path of the minecart, or in some cases, the enemies would push you onto the track, and you would have to pray you didn’t get hit.

I tried a few different iterations of this, such as placing the minecarts on the lower ground so you could always jump over them, which in turn would also make the enemies walk into the path of the minecart. I also tried to add a ‘bridge’ over the minecart path so that you never really needed to walk onto the track, but again, the gameplay is quite dynamic, and in some cases, you would have to drop onto the minecart track. Slowing the cart's speed gave better results, but in some cases, you could get hit by them, and a main goal is that the player shouldn’t feel cheated. In the end I decided to remove this from the gameplay sections with heavy enemy density.

In one case, I changed the configuration of enemy variety to ranged only, so that you wouldn’t be chased and much less likely to be pushed onto the track. See a screenshot below for an example.

The carts path is placed on the lower ground, so that the player can jump across this. In this section I had no ‘melee’ enemies and ranged only, so that the player wouldn’t be forced onto the track.

As the carts weren’t placed in sections with mobs, I decided to see if I could create some ‘set pieces’ with just the carts alone. See below for an example.

For the future, I think one of the key aspects of this mechanic to look at is to give the player more control over the carts, such as being able to ‘shoot’ a lever which sends a minecart flying out, rather than having the minecarts be constantly moving back and forth.


Analysis

Below is a look at the outcomes of the projects, as well as my analysis of how the process went and how it turned out.

Overall, I think that as it was my first attempt at a project like this, it went well. But there were a lot of things I learned during the creation of this map to help improve future projects, both process and gameplay-wise.

Process

It was my first time using this editor, so I was quite slow at the beginning. As the project progressed, I started to learn a lot more about the tools available to speed the process up. Although there were some things I realised a little later into the development of the map.

What went well:

  • Blocking out the map and adding enemies quickly to test the space and fail fast

  • Learning the scripting was quite straightforward (credit to the editor)

  • I was able to quickly rearrange the level in the blockout phase

Mistakes and Issues I found:

  • It sounds obvious now, but I should have started a smaller project as an ‘experiment’ before delving into a larger project. For example, I could have created a small project to learn the tools and think about how I can speed up my workflow before delving into a bigger project.

  • Underestimating how long it would take to add materials, sounds and polish the environment (This took up the majority of my time)

  • Blocking out quickly was great for prototyping spaces, but I found it led to a slower ‘Art’ process in this editor. The geometry needs to be quite clean for the materials.

For next time….

  • Use ‘Structures’ (which are essentially prefabs) more often, especially for repetitive pieces. Also consider using them for not only scripting pieces but architecture too.

  • Consider how I would be able to have a rapid iteration process and fail fast, but not have it impact the ‘Art’ process as much. Perhaps with ‘Structures’, this could become a modular workflow - so the art is already added into the structures, and I am simply replacing the blocked out geometry with this. I could still model unique rooms if needed, but try to keep them to a minimum.


The level itself

What went well….

  • I thought the minecarts made the map unique in terms of gameplay and theming, but I believe there is a lot more that could be done with them, and further iteration is required.

  • The ‘arena’ spaces I created, I thought, were quite fun in terms of enemy composition, flow and movement.

  • I think that it progressively got more challenging, with the finale being the most difficult and a good outro to the level.

  • The ‘set pieces’ in which it wasn’t just an arena vs mobs of enemies, I thought, were interesting, and I should try to do more of them for the next level.

Improvements..

  • It is missing a ‘memorable’ moment.

  • The level is too linear, I need to add more places to ‘explore’ and open the map up more.

  • Make spaces more natural and integrated into the theming of the map.

  • Map-specific mechanics were a good start, but needed further iteration to make them more interesting. (E.g., having more control over the small trains so that they can use them in combat)

  • There is no ‘one size fits all’. Big spaces/arenas are bad for larger enemies and bosses - the player can just keep their distance. Equally, smaller spaces can be bad for encounters with high enemy density (but not in all cases). This means it can be hard to reuse spaces for both ‘arena’ style large density mob fights and boss fights.

  • If possible, bosses should have their ‘unique’ arena rather than combining them. Alternatively, dynamically change the arena if we are to spawn a boss in an encounter that has high mob density. (E.g., the ceiling collapses or the floor gives way, causing the shrinking of the arena)

  • Pacing is awkward - create more spaces for the player to breathe and provide exposition.

  • Many of the arenas take place in areas where you can fall to your death - I think this is ok, but I could perhaps reduce the number of areas where this can happen.


Conclusion

To summarise the above, I think it was a good first attempt at a single-player level. It was well-received and rated by players in the community workshop. But there is room for improvement in terms of the design of the level and the process. Moving forward, for the next single-player level that I will create, I need to improve the pacing (by planning in more detail in the design phase), add a memorable moment and open up the level so it feels less linear. I also need to work on the combat spaces so that bosses don’t become an easy fight due to a large arena. The minecart mechanic is interesting, but requires further iteration. In terms of process, I need to use structures more and experiment with workflows that allow me to spend less time on the art phase.