If you have been following my thread of thoughts over the past few posts you know that I have been overhauling some of the core mechanics of the game. Finally I’m in a state that I can share the vision, though as you can see the art is still next to non-existent. Here is how it works:
On the left you have a list of “things” you can do, specifically create a new feature, or pick up one of several tasks. I’ll talk about more about creating features but the concept of tasks has remained much the same. They require effort and the simply “level up”. However this list is much shorter now and consists mainly of sales/marketing tasks. Most design and development tasks are now expressed using the Feature Builder.
I’m looking the improve this UI somehow besides adding proper icons and discipline colors. I might add some vertical tabs…
In the middle you see what I’m tentatively calling Market Map. Essentially it represents what the customers in your target market want. Or a “possibility space” if you will. I’m randomly generating the black squares (you can’t build features on these) and can control the density and therefore the difficulty this way.
Designing and Building Features
When you design a new feature you click adjacent squares on the Market Map, each representing a component in the feature. A blue square (clicking once) represents a technical component, and an orange square (clicking twice) represents a design component. Each additional component will add to the development effort required. Early on you’ll want to be building features with only a couple of components. Towards the end game I expect the player to be building features with tens of components. Also the ratio of design-to-tech components over the whole product has a significance. Certain markets place more importance on design and part of the challenge will be to figure out that optimal ratio (I’m looking for ways to bubble up this information without giving it away bluntly).
Once design of the feature is complete, you can add it to the sprint to get your team to start working on it.
You’ll also note three statistics near the top, which become quite important and my aim for the player is to be optimizing these:
Product Breadth: This is simply the number of features you have. This affects most of your customer acquisition channel, specifically visitors => trials, trials => signups, and churn.
Product Depth: This is the average number of components in your features. The higher the number, the more sophisticated your feature offering is. Product depth affects trials => signups, and churn.
Product Cohesion: Product cohesion is a measure of how many features interact (touch) one another. The more tightly packed and touching your features are, the higher the cohesion and the better your product fulfills the needs of the existing customers. This number affects churn only.
The visibility radius is the area you can build features in. The idea is that to understand what you need to build you have to do market research which increases your visibility of what customers want. This is done by leveling up the Market Research task.
Bugs are also now represented differently. When you develop a features, some hidden bugs are introduced into technical components. Over time these bugs will surface themselves (meaning a component may have multiple bugs surfacing over its lifetime). Clicking the bug on the map will add it to a task in the sprint to be fixed.
This is a lot more visually interesting than just a number in the UI. I can also experiment with surfacing a lot of bugs all of a sudden based on certain activities, to really mess with the player 🙂
Finally we have the list of items which your team will be working on in the next “sprint” or game turn. Nothing really new here. You still have the idea of a limited number of slots, which unlock as your overall staff capacity increases. Features have a bar indicating the tech and design progress. Also note that items can be dragged and dropped into these slots which is probably a nicer experience.
Is That It?
Well yes and no. This is the bare minimum and I wanted to have with this new system and a lot of time went into both the UI, and also integrating it with the rest of the systems. I admit, it hasn’t solved every issue I have with the game but it leaps and bounds ahead of what I had. There is actually somewhat of a second-to-second game play, because there is something to focus on, i.e. building bigger and better features, and focusing on various parts of the customer funnel and trying to optimize for the bottlenecks.
I think the notion of building a product with a bunch of squares kind of works. Bugs fit in very nicely. The 3 stats: breadth, depth, cohesion, have real-world implications but are also easy to understand on a block map. I can also see a bunch of potential extensions. For example you could start having more specialized component or feature types. Mobile features, for example, could have their own block type. A special “Security Feature” could protect neighboring components from security attacks. It would essentially be like a power up for neighboring blocks. A similar thing could be done with performance. I’m still debating whether that’s taking the concept too far though.
Another feature I’m really keen to implement is a concept of “users’ most wanted feature”, complex features which you need to find a spot for and invest time and money in, but will get you some sort of bonus.
A Note on Feedback Loop
One other thing worth noting is the addition of per-sprint feedback. As I have read more about sim games and watched more game-plays, it’s become obvious to me that I need to be lot more in-your-face with bubbling up information. It kind of goes against a lot of UX wisdom of a typical software application but I have opted out for putting up a dialog box after every sprint, drawing the player’s attention to either something that happened in during the sprint, or a decision they need to make. These are things like: “Yay, new feature completed”, “You have a new urgent email!”, and “One of your employees is losing his s###”, and a button to open up the relevant UI.
This is already feeling a lot better. It removes the awkward silence after hitting the Run Sprint button and gets me as the player engaged with what just happened during the turn.
I’m back in the mode of creating longer and longer game-plays and it’s going well. The next area that needs a lot of love is employee management which got a bit neglected as I concentrated on product. At this point I’m shelving the idea of a pre-alpha until I’m a lot more comfortable with the game play.