Mission Missive (Tech)
You get your download code, you log in, you create your costume, and hit “Enter Game” and... then what? A massively multiplayer world filled with thousands of people is fine in and of itself, but the vast majority of us seek for something to do within it. And that is where Missions come in.
Mission is a category, covering a lot of potential content. Talk to someone, that is a mission. Deliver something, a mission. Investigate a warehouse, mission. Defeat a gigantic mutant alien crab threatening to perform his kareoke version of “It's Unusual”, mission.
We had to set down some requirements for our mission system, however.
1. Has to be flexible – no separate systems for different kinds of missions
2. Needs to be able to import data for missions from an external tool - a mission builder to be developed later.
3. Same core system for both developer created, and player created, missions
4. Can be used for both open world and instanced content
But to build the system, to make missions actually work in game, that is where the rubber meets the road. Turning these intricate plot twists, sinister plans, and ambitious schemes into something people can enjoy has been a challenge for us.
As we said in the Kickstarter, this is about delivering a finished game, not about proving ourselves or doing all of the work solo. If buying an off the shelf piece makes us able to deliver sooner, then we will buy it. By having work done by someone else, we save time. As quest systems are popular, and common, in a multitude of games, this seemed an area where we could gain the most benefit to using an off the shelf solution.
Initially, our work began with modifying common MUD or Interactive Fiction systems such as Iforms. Many people know these systems from classic adventure games such as Zork. While these worked, their focus was on text-based setups, and were complex to work with for the writers. They did not come readily with a manner for translating from text to visual. In addition, they were not as intuitive for development, and painted us into a corner for what we could, and could not, do.
We began tinkering then with a more visually driven approach, using flowcharts. Unreal comes with a flowcharting system for its scripting language, Blueprints, already, so seemed the ideal framework to base our work off of. What we did not do however was to focus any effort on making a basic quest system, a “you get handed a mission with text, which you can complete.” We focused on the framework, the layout, the structure, but not this core element.
The reason why is that the core element was so obvious, and trivial, that we knew third parties were going to develop them. So, our own effort there would be time taken away from other systems. When time came to actually integrate this core, base ability, we looked around and sure enough, multiple developers had developed basic dialog and quest systems, so we did some comparison shopping. We selected the one produced by Svyatoslav Kokurin to integrate into our own design. He had taken care of the more mundane elements we needed, such as setting a quest giver, dialog, etc, with the result being a considerable amount of time saved. And, he added a feature we had not considered, but which will be of use for all of you out there when the time for user-created missions comes.
He put the mission data into a generic spreadsheet.
It now seems obvious, but in our own work, it had never crossed our mind. One of our promises was for a player mission creator, and that was one of the areas we were struggling to get right. We had been working on ideas ranging from an external tool to store on the mission database to an in-game editor like other games with mission builders have used over the years. Those however take a lot of work, a lot of time – time which would be taken away from other systems. But making a tool to create a spreadsheet, that is trivial to produce. Sunday morning, I managed to make a basic webpage for creating missions while waiting for my wife to get off work. Nothing finalized, nothing formal or pretty, but just a quick and dirty setup to demonstrate.
Note, this is not the Leads system we discussed in a prior update. Leads remain an in-game system for developing your characters story, be it through detective work, or creating mad schemes to conquer the world. This other system being discussed here is for custom crafting missions for you to share with your friends or in general. These are not replacement for the story arc system or leads, but an aside to them, an option for people to use and enjoy, likely for a future release. But having the fundamentals here and ready means when we do have the time to properly develop it, the time to deliver will be very smooth.
Our biggest challenge has been to not limit our thinking. While the tried and true models of games which came before are there, we are experimenting with new ideas, drafting concepts to test out. Something we've found in other games which works well is the idea of a mission unlock, even a variable unlock. Imagine the same task force between a hero and a villain angle. At the end of one, the heroes step up to defeat the giant robot launched to destroy the city. At the end of another, the villains take control over the giant robot to terrorize the city into meeting their demands. All based on the decisions the players make within the mission itself. One mission arc, two direct results.
Missions can be given by a quest giver, discovered through leads, broadcast through the airwaves, the options before us all are vast. Do you accept? Yes or no?
Written By: Nathaniel 'Doctor Tyche' Downes
Discuss the Update here: http://cityoftitans.com/forum/discuss-tech-update-mission-missive