[HOME] -> [GAME DESIGN] -> [ARMA III]


ARMA III

Background

My first experience with a level editor and designer was ARMA III’s Eden editor, which is used to create custom content and missions for ARMA III.

All of my levels were designed with multiplayer in mind. Luckily, Status Quo Function (SQF) provides easy methods for targeting dedicated servers, player hosted servers, clients, headless clients, or any combination of the former. These multiplayer levels were then playtested on a server that I co-hosted with a few friends.

About ARMA III

ARMA III is an open world tactical shooter simulation video game developed and published by Bohemia Interactive exclusively through the Steam distribution platform [WIKIPEDIA]. ARMA III allows anyone with a copy of the game to develop in-game missions and levels through the use of their Eden Editor and SQF scripting language. Below is a showcase of missions I have created with the use of these tools.


Snakes on a Plane

Objective: A pilot and his crew of rag-tag gunners must retrieve and deliver three vehicles located around the map Altis, while waves of fighter jets attempt to shoot them down.

Key mission elements: Snakes on a Plane used SQF to attach otherwise static turrets onto the wings of an AC-130. Turrets have infinite ammo and players can choose their turret at the start of the mission.

Editor’s notes: Snakes on a Plane features a fully functional HUD for the pilot that allows them to see percentile damage for each critical element of the plane, as seen in the picture below.



Lion King

Objective: A highly trained and well armed special forces unit must rescue a CEO, kill a high value target, secure transportation, and extract.

Key mission elements: Lion King gives players large amounts of firepower and ample targets as well. In addition, there are two possible end scenarios, one in which the CEO is alive, and one in which he is deceased. Both require the team to do an extraction, which requires a plane located in the level.

Editor’s notes: Lion King demonstrated that the amount of time you put into a mission does not always correlate to how much replayability it will have. This mission did not take a long time to make, yet its high difficulty and quick pace made it an instant classic. With support from my community, I ended up releasing two sequels to this mission, aptly named Lion King II and Lion King III.



DEF CON

Objective: An antiterrorist task force has located a nuclear bomb off of the coast of Chernarus. They must find the detonation code from one of three locations, rendezvous at the bomb, and finally, defuse the bomb.

Key mission elements: DEF CON features randomly generated time, weather, bomb codes, code locations, and enemy placements to allow for more replayability. Players have one hour to finish all objectives before the bomb explodes.

Editor’s notes: DEF CON has the most intense SQF scripting of any mission I have created. It required me to learn a lot about client/server relations in a multiplayer environment.

For example, each client needed a timer displayed on screen to show how much time was remaining in the mission. To accomplish this, the server would create a delta time variable. When a client connected, it would request a copy of that delta time variable. The client PC would then calculate (60min – delta time) and display it on the bottom of the screen, allowing all clients to have a synced timer regardless of when they connected to the server.

The bomb defusal codes and locations were also programmed in this manner, as they needed to be synced across all clients.



Hatfield(z) vs McCoys

Objective: A player vs player (PvP) mission in which one team must wipe out the other team OR kill the other team’s high value target.

Key mission elements: Hatfield(z) vs McCoys sees players spawning on opposite sides of a dead end road with almost no equipment. Armed with only shotguns and broken down trucks, both teams will fight to see who is superior out in farm country.

Editor’s notes: Hatfield(z) vs McCoys is actually two missions that are almost identical. One of which is exactly as described above, the other features zombies as an environmental enemy.

One unexpected complication I had with this mission was readability. Players at first had difficulty telling who was an enemy and who was friendly. In addition, they had a difficult time telling where to go in the chaos of PvP combat. I added blue and red colored hats onto the player models to indicate teams. I also added blue and red arrows onto the ground that pointed to the enemy base, similar to Valve games like TF2. Both of these improvements proved to be vital.



Office and Agency

Objective: Two player vs player (PvP) missions in which counter terrorists (CTs) must rescue hostages from terrorists (Ts) and successfully leave the mission area with the hostages.

Key mission elements: Players can communicate with each other on both teams and are encouraged to diplomatically conquer the mission. While this almost never plays out to its full conclusion, it allows for a backstabbing element. As well, players tend to take the roll of hostage negotiator very seriously, allowing for a fun and interesting role play element.

Editor’s notes: Office and Agency both utilize asymmetrical map design, yet strive to create an equal playing field for both T and CT teams. This made player feedback critical for adjusting weapon balancing, asset placement, and more.

For example, in the first iteration of Agency, the CT team initially spawned near a few trucks that they could use to navigate the map. However, one terrorist had an RPG, resulting in an instant win for the terrorists if he shot the correct truck with the RPG.


[MISSION FILES]

Note: All mission files are a .PBO format and require the proper mods and DLC to function. They are included here simply for reference.


Final thoughts


Being able to create, playtest, and reiterate missions for a 20 player ARMA server was a very fun and exciting challenge that solidified my love for video game making and level design. However, there are some lessons in level design I wish I had learned earlier in the process.

I learned the importance of testing a level as thoroughly as possible before releasing it. A common idiom amongst the content creators was, “it works on my machine,” a testament to the folly of only testing a level on one computer. Test cases need to involve a thorough plan, multiple players, and multiple play throughs.

I learned that players will break everything, even the most well polished content. You will never be able to find all the bugs players will, so learning to absorb and appreciate feedback is an invaluable skill. That being said, not all bugs are created equal. A bug in a cooperative mission may be fun and amusing for everyone, but a bug in a PvP mission may ruin the balance of the game. In addition, not all feedback is created equal. A level may be designed with pacing and immersion as its key focus points, and thus criticism from someone who typically enjoys extremely fast paced and in-your-face gameplay may not need to be taken seriously. There is a delicate balance between appeasing players and staying true to your initial vision.

Lastly, I learned the importance of having a tight development team. Within the content creation group, I specialized in SQF and ARMA III engine knowledge, one of my closest friends specialized in asset creation, and another friend of mine specialized in drafting scenarios. The best missions I was able to create were collaborative ones where each member of the team was able to work in their area of specialization.

If you’ve made it this far, please consider contacting me using my information below with any job opportunities involving game design. I would love to contribute to a team once again and create an experience that players will truly enjoy.



QUICK LINKS:


[HOME PAGE]


[PERSONAL GOALS]