Game, Systems & Level Designer
M.I.A. Is a multiplayer First Person Shooter with a Single player hub world with RPG and management mechanics. Players would be building up their forces with training, new weaponry and choosing who to fight as their avatars in battle for them.
The prototype was for the single player hub with Fast travel, matchmaking integration to the hub (which was implemented but didn't actually matchmake), inventories (Both Player, locale and individual solder) as well as requisition form systems.
The initial prototype was completed within 6 weeks whilst learning a completely new engine with all design and coding done by myself. This was an ambitious project but I had already cemented myself as a competent designer and wanted to push myself, as well as get experience in UE as the industry looked to be moving more and more to the engine for the games I want to create.
w/ Single Player Hubworld
Continued as Personal Project
On this page I will discuss the Game Design choices that I made for this project, limitations during the time as a university project and the project's current status.
Here are the key features of the game design that I worked on for this prototype.
The idea behind this game spawned after playing early access Enlisted and enjoying the overall idea of the game and management system but being frustrated how long I was in a menu after each game.
So I set myself a challenge, could I get everything i'd need for a story driven single player hub for a multiplayer shooter with a unit/resource management system done in a new engine in 6 weeks.
The answer was no, but I'd already set myself high expectations and wanted to push myself all year during my 2nd year at AIE whilst I was in the safety of a learning space. The lecturer loved the idea itself and was happy to have me go for broke but said we should set some non-nonnegotiables that I could realistically do in that time.
The Inventory system was one of them.
The idea would be that player controlled Kampfgruppe (Fighting Force), the smaller units within and each individual soldier had their own inventory. Basically allowing players to move equipment from one solider to the next, between units, stockpile it for defensive measures or sell/redistribute to other players in the same faction.
So I created a blueprint that could be instanced for each unit/soldier and player so that I only had to create one inventory system and had variables such as having access to sub inventories to control what kind of instance it would run as.
The other main concept behind this was to have the menus and UI be tangible in world items, which due to the time I had to scale back but is still the plan if i were to continue with this concept.
As it was my first Inventory system in UE4 I decided if I wasn't going to hit the only diegetic menus I might as well try to implement stacking, thumbnails and tooltips. I also got inventory's to interact so that if i took something from a solider in went into the Kampfgruppe inventory and vice versa, but ran out of time to implement the unit system so it never got an inventory instance to try out access to sub inventories.
The idea with sub inventories was you could access a unit's inventory and assign stuff to individual soldiers without physically taking it to them etc as that would get tedious real fast.
The Interaction system was interesting for me as it was the first time I had used a combination of colliders as triggers and raycasts with a range to create interactable items.
The result was one of my favourite interaction systems to date, you can pick the exact grenade you want from a pile on a table but also walk up to a crate on a bench and open it without having to look exactly at it. It felt intuitive and I thought it would be harder than it actually ended up being.
The concept was basically if you were withing a simple sphere collider (with the lest amount of side for performance) of an item that was marked as interact-able you activated the ability to interact. If it was the only item you could interact with then by hitting the interact key you would p[perform the interaction type listed in the variable. This meant that you could simply interact on a soldier to open an inventory the same way you would pick up a rifle lying against as wall.
If there were multiple items detected as intractable it then used the closest item to the centre of the screen which had a crosshair on it, this meant i could stack rigid body grenades in a pile pick one out watch them fall and grab one before it fell of a table but also at the same timer allowed for a near enough is good enough approach if you didn't need to be so precise.
Fast Travel System
One of the aspects of a single player hub I wanted to make sure I got right was that it added value to the game not became an annoyance to the players, so the if a player did come back to the hub they'd want to explore do quest and build up their homebase.
But players might need to come back to fix something before heading back out to the front lines and I wanted this aspect to be as fast as doing something in the menus which meant a fast travel system was necessary but I wanted to keep it diegetic.
So there are drivers around the map that will take you to key locations on the map. you interact with them to bring up the map and choose a location on an actual map and they would drive you there with a short fade in fade out and some engine noises.
The version I got in the game is still a little early and lacks the finesse of what i'd like the final version to have but the core function was in and so was the map that was designed using the structure of real German WW2 map and made to fit into the world and story of MIA.
The Requisition system was designed so that players would come back from their multiplayer session and have been rewarded requisition orders credits that they could then use to request supplies from the capital/HQ.
This woudl allow you to buy certain box or crates that would supply weapons that could be used as they are, used to create blueprint weapons (like strapping a bunch of M24 Stick Grenades together to make the Geballte Ladung (the bundled grenade). Other could be broken down for parts or even broken down to learn new blueprints.
The system worked by going to the logistics officer to spend the requisitions which would then ship to you over a period of time that would then be available to open.
I got 2 out of 3 of those systems working in time just thing shipping one didn't finish in working order but it was enough for a prototype to show how it would work.
The Matchmacking was another way I could take multiplayer games out of the menus and into a playable game space.
Walk up tio the deplopyment truck and jump inside after a prompt to deploy, you'd jump in the truck and rive towards the front until you found a match where you'd fade out before fading into arriving at the battlefield and starting.
For the prototype i used this as a way of reset the level so that more people could try what I had made out or to reset it myself for testing purposes.
Training & Resource Management
I knew i wasn;t going to have time to get these in whilst also learning a brand new engine in just 6 weeks but the plan would be that you could choose soldiers and send them off to train at your shooting range or even choose other soldiers to use as an avatar to do the training yourself which would level up the solider, your own skills and increase the training facility level which could unlike higher training or even new blueprints.
The resource management system was to be used for vehicle gameplay, base building and factories so it was out of scope for this build but the idea was that you could claim resources in your wins and by quests in your own single player hub that would allow you to build up your base and it;s facilities until you were able to manufacture your own ammunition and not have to rely on getting the right supplies from HQ.
As this wasn't intended to go in at the time I didn't go in depth about these systems but had to think how they might interact with the other systems I was building.
I came back to this project in early 2022 to continue to learn UE4 trying out level design tools such as the terrain tool, worked on lighting in UE4 and even reflections.
However as UE5 came out I decided that I wanted to move over to the new engine as my preferred game engine and that due to the scope of this project being unachievable for a solo project I decided that it was best that it went on ice for now.
Role & Unit Assignments
If I was to return to this the next steps (after redoing everything to bring it up to speed with the new engine and techniques I've learned since) would be to add the Unit and Role systems.
The idea was the the player could assign soldiers to different units and roles so you get an engineer, might be better to assign them to your factory or research divisions than have them on the front line.
As these soldiers are the Missing in Action they would have different skills and may not have all been career solider, a carpenter would allow you to build structures etc. An artillery observer would make artillery strikes more accurate etc.
This would also lead into a defending system with the plan in my head that in the games live service we would have periods where matches happened at the home bases of players from a certain faction. Say if the Germans were loosing in season 1 overall as a faction in season 2 they would now have a chance tob have battles at their own bases and therefor be the home team with all of those advantages but it would depend on the planning of the person who's region was invaded.
Randomisation of Crate Rewards
Next would be going back to the Requisition system, adding the delay for shipping and some way to track it in a diegetic manner and randomising the crate rewards, currently the system was set up as an example and doesn't actually function as intended.
I do worry that the crate randomisation system works during the early levels but might not work once a player has higher level gear which is why I had the ability to use the items in various ways but it might be worth seeing in requisition forms can be stacked so they can purchase specific items but at a higher cost.
This would make it still more efficient to get randomized crates early but in the late game making it worth grinding/saving up for the exact item you need to fill the gap you might have in your resources.
Solider RPG Elements
The other area I'd really like to explore is the solider and other RPG elements of the single player hub.
The leveling up of soldiers via training and combat, dialogue systems and questing that would reward players who actually took part in single player part of the experience with in game rewards such as blueprints, tactics, skills and narrative including eventually learning where they MIA are in space and time.
I imagine you get back from the front and get a quest to find out who stole rations or to get down the the bottom of a bar fight in the local tavern, items that you would usually expect in an RPG but something you can do whilst waiting for a mate to jump on for a few games instead of staring at a lobby screen or menu.
Match Rewards (Sythnasised)
Next to get the core of the Single player hub completed would be adding in synthasised Match results and rewards so that players can deploy and have a fictionalised result show up and be granted the rewards from that match and continue the single player aspect.
At that point I would have completed everything I set out to do (knowing I would never get all of it done in the time I had)
This would eventually be followed by the actual multiplayer and combat but I think if i came back to this game they would have to be developed side by side to make them feels cohesive and not like two games attached together when you start matchmaking.