Game Dev Project Management Theorycrafting: Ownership Threads

There are two dimensions to feature ownership in game development: how strongly are features owned by an individual member of each discipline, and how tight is the collaborative connection between those owners in different disciplines.

It is common to sort teams into pools of talent based on their discipline. This makes sense: two artists are much more likely to be able to share work than an artist and an engineer. From a project management perspective, knowing roughly how much “engineering” work and “art” work there is, measured against the number of “engineers” and “artists”, gives a good first approximation of how much time it will take to finish all the work for the game.

However, to a second approximation, interchanging tasks between members of a discipline carries a penalty, either in time or quality or both. One engineer may be more familiar with the game’s animation systems, while another is more familiar with the physics system. One artist may be faster at environmental modeling, while another is faster at prop modeling. This can be captured as “Ownership Strength”, the first dimension of feature ownership.

In a project with strong ownership, it is highly advantageous to silo your developers; that is, the engineer who works with the animation systems gets assigned all the animation-related tasks, and none of the physics-related tasks. In a project with weak ownership, each developer is able to take on any task within their discipline. Typically, strong ownership carries an efficiency bonus (devs get really good at working within their silo) at the risk of introducing bottlenecks (the game requires much more animation-related work than physics-related work, causing an uneven work distribution).

Each feature in a game requires some amount of work from each discipline. Artists, designers, sound designers, animators, and engineers all must collaborate to get a given part of the game to a shippable state. There are two broad strategies to managing this collaborative aspect. The first, as previously mentioned, is to sort devs into discipline-based pools, or “teams”. The second is to sort devs into feature-related “pods”, in which developers of all disciplines who work on a particular feature are treated as an organizational unit. This strategic spectrum can be described by the second dimension of feature ownership, “Collaborative Tightness”.

In a project with loose collaboration, an artist that asks for engineering support will create a ticket that is passed to the engineering team, which is subsequently assigned to an engineer, who will perform the indicated work and then send that ticket back to the art team. In a project with strong collaboration, an artist will work closely with an engineer, rapidly iterating and trading ideas, asking directly for support until the feature reaches the desired quality threshold.

Strong collaboration not only leads to higher quality features, but also stronger team morale due to a higher sense of teamwork and feature ownership. However, it comes at the cost of degrading the benefits of sorting developers into discipline-based teams. When small, agile, cross-discipline teams work iteratively and collaborate closely, it can be difficult to capture the work involved and effectively create a projection of how long it will take to finish all the work for the game.

That is, as long as we are using standard project management paradigms.

It is clear (to me, at least), that tending towards both Strong Ownership and Tight Collaboration is a recipe for a high-quality game. The only downsides are the risk of bottlenecking and the difficulty of predicting work schedules. These downsides are simply failures of the traditional game dev project management framework.

Starting with the first principles of supporting a Strong Ownership / Tight Collaboration development environment, let’s craft the ideal project management framework. This framework should ensure that the project meets internal and external milestones, is predictable in development time and cost, and meets the desired quality bar across all aspects of the game.

Strong Ownership is most effective when it grows naturally within a discipline. This accounts for natural collaboration between a group of artists, a group of engineers, etc. that leads to better problem solving and technical skill growth. Top-down assignment of feature ownership is a recipe for disaster. At the start of development, the Lead of each discipline should be considered the owner of all game aspects. As needed, the Lead can assign out ownership to specific team members, and similarly ownership can be passed between team members as needed.

As distinct aspects of the game become obvious and individuals begin gaining ownership over them, Tight Collaboration can be encouraged. In cases where it makes sense, an individual from each discipline can become the owner/liaison for that feature. For example, an artist has a single engineer, a single animator, and a single sound designer to talk to regarding a particular feature in the game. This group of inter-discipline collaborators can be called a “Thread”. Each person in the thread is responsible for getting the feature to the desired quality bar and estimating the required time to do so.

As development continues, more and more Threads will form, until there are very few aspects of the game that aren’t Strongly Owned by individuals. 

In many cases, there will be more work to do on a feature than can be done by a single person. Multiple members of a discipline can support the same Thread, either as primary owners or “secondaries” (in fact, having a secondary for each Thread would help reduce the “bus factor”). Tasks should be more-or-less assignable to any primary or secondary in a Thread; e.g., any art-related task can be assigned to any artist associated with the Thread. If too much specialization occurs within a Thread, it is time to split the Thread to form 2 or more new Threads. 

By polling each Thread, a project manager can quickly gain an understanding of how much work is required to bring each aspect of the game up to a given quality bar. For each person, the work from all of their Threads can be summed up and compared to find team members who are bottlenecks. The Lead of a discipline may re-assign ownership of Threads as needed in order to reduce bottlenecking to a minimum. High-level feature prioritization converts into Thread prioritization, which easily converts into task prioritization in whatever project management software is being used.

Within this framework, achieving a first approximation of the amount of “art” or “engineering” work is still completely possible. But a second approximation is much easier to get and much closer to the reality of feature development. We have unified team member management, schedule management, and feature quality management into a single theoretical framework.

Allowing feature designations to naturally precipitate out as Threads, rather than attempting to impose them top-down, also helps ensure the game reaches a quality bar across all features. For example, in a game where the player performs ranged and melee attacks on enemies, a project manager might think that “melee combat” and “ranged combat” are a good way to separate the different types of work. However, by allowing designations to precipitate naturally, the manager might discover the team finds it more useful to categorize work into “damage and dismemberment” and “weapon handling”. This sort of thing cannot be determined a priori, so allowing these feature designations to develop naturally via a formalized Thread framework is highly superior to imposing them top-down.

Overall, this sort of framework seems like a good compromise between a strict discipline-based team approach and a strict “feature cabal” approach, while maintaining more flexibility and accountability than either, and also boosting game quality and team morale.

New Coding Paradigms

So I’ve recently been thinking that the whole idea of editing text files filled with code is outmoded. When I’m thinking about code, I certainly don’t think of it as a set of classes and functions laid out in a particular order. I think of it as a cloud of entities with properties and interactions flowing between them. Shouldn’t our experience of writing code reflect this?

We need to start rethinking our code-editing tools. A lot. Here is a simple example:
XML heatmaps

What else could we do? How about the ability to arbitrarily break off chunks of code and view them in parallel, even nesting this behavior to break long blocks of code into a string of chunks:
Nesting chunks

What if we let the flow of the documentation decide how a reader is introduced to the code base, instead of letting the flow of compiler-friendly source files decide it? Chunks of code are embedded within wiki-style documentation, and while you can follow the code back to its source, reading the documentation will eventually introduce you to the whole codebase in a human-friendly fashion.

The same code could even appear in multiple places (obviously updated when the source changes), and you could see all the places in the documentation where a particular chunk of code appears. This could bridge the gap between documentation and code; documentation will never grow stale, as updating code necessitates interaction with it. Similarly, updating documentation is the same process as writing code. When a standard changes or an SLA (service level agreement) is modified, the code changes too.

But why restrict ourselves to semi-linear, text-based documentation a la wikis? We tend to find UML diagrams extremely helpful for visualizing complex systems in code. What if we could build powerful, adaptable tools to translate between raw code, text-based documentation, and visual diagrams? Strictly binding them together might restrict you in the lowest levels of coding (much like, for example, using a high-level language restricts your ability to control memory allocation), but it opens up the new ability to make changes to a diagram and have most of the code rearrange and resolve itself before you. Then you step in to give a guiding hand, and adjust the text documentation, and voila! Best of all, this is more than a diagram-to-code tool; the diagram is a living thing. In fact, the diagrams, the documentation, and the codebase are synonymous. A change in one is a change in the others.

We’re getting to the point where it is much more useful to be able to dance across a codebase quickly than to be able to tweak and tune the minutiae of your code. Some allowances must be made for processing-intensive applications. Perhaps this system wouldn’t even be useful in those cases. But when you find yourself favoring adaptability and iteration speed over efficiency during development, and when you find yourself being hampered by the need to go between files, scroll through large swathes of code, or referring back and forth between code and documentation, maybe it’s time to rethink your coding paradigms.

Mass Paradigm

One of the most interesting things to think about with respect to the near-future of space travel is the removal of limited mass as a paradigm. That is to say, right now the predominate design constraint for spacecraft is mass, because rockets are very expensive, so each kilogram of payload must be put to best use. Unfortunately, this means that the design and construction costs for spacecraft are very high, as much effort is put towards shaving off grams by using exotic materials and efficient designs.

But soon the current launch vehicle renaissance will result in launch costs low enough to demolish the limited-mass paradigm. There is a tipping point where it is economical to cut design costs and take the hit on launch costs. There will also see a growing emphasis on tough and reliable systems that last a long time, rather than fragile, light, efficient systems. Combined with lower fuel costs from asteroid mining and improved refueling technologies, the predominant modus operandi will be repairing spacecraft rather than replacing spacecraft. Designing for reusability and, more importantly, refurbishment will be critical.

We’re already seeing a shift towards this paradigm with SpaceX. Their launch vehicles use redundant systems to make up for their cheaper designs — their avionics electronics, for example, are not rad-hardened but instead redundant in triplicate. The mass penalty is minimal, however they also make up for it by using modern electronics concepts. For instance, instead of running numerous copper wires up and down the length of their rockets, they run a single ethernet cable and use a lot of multiplexing.

This kind of change is just the beginning, however. There will be a time when it makes sense to loft a big bundle of steel rods into orbit and have workers weld them into a frame for a spaceship. This has a number of benefits: the frame doesn’t have to be fit into a fairing, it can be reconfigured on the fly, and it doesn’t have to endure the acceleration and acoustic stresses of launch. Additionally, lifting big bundles of steel makes best use of the volume in a launch vehicle fairing.

I think the only two questions about the future of space travel are: How much will it be dominated by robots? and Where will the money come from? But those are questions for another time.

Burn

I’ve been aiming to make a post about this for a while. Here is one preliminary design document I made a while ago. It calls for something similar to the situation described in A Deepness in the Sky.

Game Beginning

You start out as a young man, fleeing a vicious civilization collapse. As the member of a wealthy Qeng Ho family and son of a fleet leader, you are in charge of the only ship that escaped. You are powered down in orbit of a gas giant, watching the aftermath of the Fall. A lot of your archives have been corrupted, so you need to find some other traders or find a world to raise up.

The very first thing you do is name your family branch. Then you figure out how to take inventory of your ship systems, and how to scan surrounding space. You learn about light-lag. You have just enough fuel to get up to operating velocity. You can choose a target system.

Your aim is to become the leader of the Qeng Ho. This is not an easy feat; the Qeng Ho is a diffuse trading race, with no clear organizational hierarchy. There are several trading “families”, each with large offshoot branches (e.g. Vinh 2.0.3). The objective is to gain enough influence, and then call a meeting of the Qeng Ho. At this meeting you either convince all the families to follow you, or perform a hostile takeover.

You have as many years as are in your life to do this. Note that if you meet a civilization with hyper-advanced medical technology, this means a time bonus. You do have cryo-freeze for the time in transit between stars.

Personal Mechanics

Throughout the game there are personalities on your ship and on other ships that you can talk with. What you say affects what they think of you. If they hear bad things about you from others, they will enter into relations with poor expectations. Reputation influences the trades you can get, as well as favors you can ask.

If you gain a high enough reputation and interact enough with a person, you may become friends. You are not notified whether or not they consider you a friend until you bring it up. Friends will vouch for you or join in on a plan. Friends are much more likely to answer a distress signal you put out.

Traders that are well known often have available profiles. When you trade for someone’s profile, you can see their reputation with others, their personality, and most of their history. By gaining enough reputation with a person, you can find out what they think of other people.

Interstellar Travel Mechanics

A Bussard ramjet is used to travel quickly between star systems. A ramjet can only go so far before the mechanism breaks down. A ramjet needs to move at a certain fraction of the speed of light in order to scoop up enough fuel to continue operating. While flying above that threshold, your fuel tanks fill up. When decelerating, accelerating, or maneuvering, you burn fuel without regaining any. It is only possible to accelerate up to 30% the speed of light; a lot of energy is spent accelerating floating interstellar hydrogen up to your speed.

Ramjet engines can not be repaired on the fly. In order to fully repair an engine, you need to trade with a civilization that has the requisite technological level. This means that you may have to raise a civilization to high-tech in order to continue flying.

If your engine breaks down mid-flight, you will very slowly lose speed (from colliding with interstellar particles), and continue to drift until you either exit the galaxy, crash into a star, or are picked up.

Note that different regions of space have different interstellar medium densities. For instance, our local cluster lies inside a relatively sparse region, making ramjets less feasible. One aspect of choosing a destination in the game is navigating around low-density “bubbles”.

Choosing your target is important. Since you can only hear transmissions from the past, you have to judge whether or not a civilization will be as advanced as you want it to be when you arrive. Flying to a system that is at a peak level of technological advancement will probably have collapsed by the time your fleet arrives. This just means you have to spend time (although you have cryogenics, you still usually come out of it every so many months to make sure the fleet is still on track) helping them get back up to a sufficient level to repair your fleet.

Trading Mechanics

Planetary civilizations rarely want materials. They can mine almost everything they need from their system, and the price of lugging raw materials across interstellar space is too high for you. The exception is high-tech equipment. Civilizations will pay dearly for technology that they either cannot physically manufacture (as with Beyond relics) or are nowhere near the technological sophistication needed to synthesize the tech.

Civilizations value information more than anything. A faction will pay a grand sum for anything that will let them dominate their opponents. Advanced secrets help advanced civilizations keep their expanding infrastructure under control. Usually you can broadcast such information ahead of you, as long as its encrypted. This gives the civilization warning that you are coming, and when you get there you can trade away the keys needed to decrypt the information (on this note, the Qeng Ho constantly broadcast a certain amount of information for free to make sure that civilizations they meet have similar measurement standards, language, etc.).

Conversely, traders have a huge store of knowledge, but lack the infrastructure or resources to maintain themselves. Spacefleets will often bargain limited pieces of technology in order to buy volatiles, fuel, and new equipment. Sometimes civilizations will provide these for free to weasel better deals from you.

Occasionally a civilization will become exceedingly advanced in one area of technology. They will invent something truly revolutionary. If you get your hands on one of these pieces of technology, you will have leverage over all other Traders. You may have to bargain hard to wrest the technology from the civilization at hand.

Combat Mechanics

Be warned. Consistent use of weapons will cause other traders to shun you and make civilizations bar you from their systems. Someone might even try to hunt you down if you destroy their civilization but leave even part of a defense fleet.

Space combat is a fickle subject to approach. It is best summed up by these two pages on Atomic Rockets, although every page there provides good insight.

Interplanetary Flight

This will probably be some sort of simplified KSP-like interface. That is, you initiate maneuvers to change orbit. The problem here is balancing technical details against flexibility and realism. Optimally, players should be able to identify their desire to conserve fuel against time constraints, and let the computer select the best orbital maneuvers to transfer between planets, space stations, Lagrange point colonies, etc. However, because players may want to do wonky things in orbit during a battle sequence (establish oblique orbits, do hard burns, etc.)

I guess you could distinguish between normal navigation and battles. Battles would probably happen around one central body, unless there was a moon involved. However, battles would probably happen really fast (over in minutes) or really slow (taking months).


And that’s as far as I got in describing it.

Sim State

I’ve been meaning to write this post for a while. This idea really started when I watched Day[9] play the new Sim City, and then picked up Sim City 4 again. I wanted to create a game which brought the ideas of micromanaging infrastructure and government into a larger scale. The player would be able to control education, government type, military, trade, etc. Eventually it grew into a sort of “third-world country simulator”, since that seemed like the most interesting route to people I pitched the general concept to.

The basic premise is that you are the leader of a small country, recently put in power by a violent revolution. This country is located in a faux South or Central America, but there is also the possibility for having multiple templates: African, Southeast Asian, etc. The player can only really see the small land area he controls, plus some of the bordering sovereignties. There is no global map (and this isn’t a game about conquest), but there are references to current global institutions (or fictitious characterizations thereof) like the UN and US, or WHO, etc.

Winning the game means pulling your country out of poverty and onto the world stage. This requires many parts, including building infrastructure, establishing governmental rule, and appeasing the international community. However, the win condition is gaining control over every province in your nation. Control just means being the dominant power faction. Routes to control include stamping out resistance (militarily) and appeasing interest groups. Thus a large part of the game is balancing political control; keep the military leaders on your side, stop workers from striking, and stay elected. The last one may mean establishing a dictatorship, rigging elections, or spending a lot of resources maintaining public image.

At the start of the game, your country is poor and unequipped. There are two forms of currency: money, and international repute. International repute can be spent on relief or treaties; perhaps getting a foreign oil company to leave your country. On the other hand, if you drive out the oil company by force, some factions in your own country may approve, while the international community may impose sanctions. Similarly, if their are pirate along the coast, you could demand tribute or try to exterminate them at a potentially great cost. If the world catches wind that you are allowing pirates to operate, however, you will lose repute.

The other form of currency is money. A little macro-economics comes into play here, since you have to manage your currency (printing money), and real “world dollars”. Rapid inflation can be bad for your industries, but it attracts tourists (but only to good parts – nobody is going to visit the region controlled by drug cartels). Real dollars come from exports, mainly. One way to get a boost in the beginning of the game is to exploit your natural resources: cut down rain forests, strip mine mountains, etc. However, you have to establish a more mature manufacturing industry at some point, otherwise you will exhaust your resources and fall back down into poverty.

In terms of infrastructure the player has to build, the main forms are education and industry. Industry includes transportation networks and resource collection, as well as processing. Industry also means municipal improvements, since nice cities attract high-tech corporations and commercial companies. Another route to improving the quality of your workforce, reducing crime, and eliminating overpopulation is education. Building schools takes a lot of resources for little immediate payoff, but it will start to improve your country greatly. It is also a great way for dictators to indoctrinate the population.

Late-game opportunities may include hosting Olympic Games or researching nuclear technology.

As you can see, there is a lot of room for expansions; this is more of a framework for a game, rather than a fleshed out game idea. I know there are games like this, such as Tropico. I think this would be more political and deep than Tropico, but obviously I would aim to offer a different experience overall were I to build this.

Using Games to Educate

In the last few years we’ve seen the Internet playing a larger and larger role in education. Everyone seems to expect a revolution in education within 20 years. It’s possible, although I don’t think it will come from the direction that everyone thinks it will (see my post on online education). I want to give my two cents about an ancillary approach: videogames. Games don’t have to teach the students anything. In fact, I think they are much more useful as vehicles for the education. Games provide a background, a context, for new knowledge. For example, playing Deus Ex: Human Revolution (play chapters of a game as homework instead of reading chapters of a book?) could help spark discussion about the current situation of computers, implants, artificial intelligence, politics, etc. The experiences within the game outside of the lesson help students stay interested and apply the knowledge, even if subconsciously, beyond the classroom.

I’m going to focus on two games: Kerbal Space Program and Minecraft. Prmrytchr has a whole blog on using Minecraft (as well as other games) in the classroom, so I’m going to focus on the technical aspects.

the KSP splash

Kerbal Space Program (KSP) is an indie game currently under development with an open alpha available for purchase. In the game, you run the space agency of a particularly derpy alien race in their Sol-like system. In sandbox mode, you can throw together rockets, probes, rovers, space stations, planes, and planetary bases from a wide assortment of parts. Then you launch your constructions and control them to the best of your abilities.

KSP Screenshot KSP Screenshot 2

While hard to grasp at first, the game is incredibly fun. You do need a rudimentary understanding of kinematics to play well. This is the first step in its ability to act as an educational tool. While you can strap an engine onto a fuel tank and try to fly it, you quickly realize that doing anything impressive — such as putting an object in orbit — requires a bit of education. While you could watch tutorials, you could also get a lesson about basic kinematics and orbital mechanics from a present teacher. There’s an opportunity for lessons on engineering, as well.

As students become more proficient, more complex opportunities open up to them. Orbital rendezvous and gravitational slingshots get more involved physically. Spacecraft design, between mass conservation, fuel-mass ratio, reaction thruster placement, and properties of engines, is a great opportunity for springboarding into other physics. Other elements of spacecraft design that aren’t simulated in KSP, such as heat management, enter the realm of thermodynamics. Ancillary topics that arise when discussing space exploration can involve relativity and electromagnetic waves.

Minecraft, on the other hand, is about as physically unrealistic as you can get. However, it provides an awesome way to teach logic and economics. Even vanilla Minecraft has a growing arsenal of parts which allow rudimentary (or not so rudimentary) automation. Redstone is a powerful tool for doing any sort of logical manipulation — or teaching it. Watching your toolbox of gates and mechanisms grow out of a few basic ground rules is amazing. Creative minds are pushed to imagining new ways of using redstone, pistons, minecarts, and all the other machines being added in. While I’m not a fan, mods like Technic or Tekkit expand the array of basic parts at your disposal.

Multiplayer in Minecraft is an interesting case study of economic theory. Because the system varies so much from the real world, it provides an outside perspective on traditional economic theory. As you teach the basics of microeconomics, you can analyze why Minecraft’s multiplayer economy and identify how to restrict it. The ultimate goal of the class could be to establish a working economic system on a Minecraft server (perhaps through plugins/mods?).

Redstone Schematic Redstone Screenshot

Whether or not any of these are good ideas, it illuminates how games don’t have to be the primary vehicle of learning to be a useful educational tool. Games can merely be a springboard, a point of reference from which lessons emerge. The game keeps the students interested and grounded in the topic, while providing a useful outlet and vector of fortification for the knowledge they are getting in class.

A Solution for Difficulty Curves and Power Creep

Most games portray you as a hero of some sort. A common trope is for the hero to be either inexperienced at the beginning of the game, or lack his equipment. This gives a reason for why the hero does not just plow right up to the main baddie and kill him at the beginning. In any case, a lot of games suffer from a strangely shaped difficulty curve. The game starts out fairly easy as the player learns the ropes, then the enemies get harder. Finally, you max out your stats and the game begins to get easier again.

Granted, the best games suffer from this less, but a lot of games have trouble with this type of power creep. Spore is a prime example of a ridiculously easy endgame (the space stage was essentially a sandbox). Some developers solve this by making enemies more powerful as the player progresses. This can work in games where, for instance, the enemy starts to realize just how much of a threat you are. In open-world games like Skyrim, though, this makes little sense.

Yahtzee, of Zero Punctuation, mentioned in one of his Extra Punctuation an inkling of an idea for a game that is designed with this problem in mind. I have taken the liberty of gripping the nebulous concept by the horns and fleshing it out.

The game is based around the power suit you wear. It is a magnificent piece of High Technology. Unfortunately, this means that nobody is quite sure how it works. The machining of the piece is much too fine to replicate, in any case, which means any replacement parts have to come from other pieces of High Technology, which are few and far between.

At the start of the game you escape from the main fortress of the Bad Guys with some sort of Valuable Item (perhaps information). You raid the armory and steal the suit before plunging yourself deep into the wilderness around the citadel. You spend the game running from a cadre of pursuers, trying to make your way to the border. At every encounter with an enemy, it is up to you to protect your suit as much. Each blow is physically simulated and, depending on where you place armor, where the hit was, how hard it was, etc. a component on your suit has the potential of breaking. Parts also wear down over time.

The most critical part of the game is deciding how to keep your suit in working order. Some systems are critical, like the pneumatics that let you move (damage to arm parts may impair aiming speed, damage to legs may reduce speed or jump height, etc), and some are dispensable, like weapons. If a critical system receives a hit and becomes in critical danger of breaking down, you have to stop and either fix it with any spare parts you find, or scrap a non-critical system on your suit to get the essential parts.

This meta-game with the suit solves the problem of power creep. You are at maximum power at the beginning, but enemies are also at the greatest density. Slogging through the wilderness and fighting enemies wears your suit down, so by the end you are barely limping along. As time goes on, you have to choose which weapon or system to scrap for parts. This means that you get a sample of all abilities at the beginning, and can keep the ones that best suit your play style. One of Bioshock’s biggest problems was that there was no incentive to try new plasmids. I’m sure the majority of players just improved the starting set, because buying new powers was too much of a liability.

I like the idea of having the game being mostly free-world. You can choose the best path through the different types of terrain to avoid encounters. Cold environments, wet environments, and sandy environments all have different types of wear and tear on the suit. Roads are easy to traverse (meaning less food consumption and lower likelihood of suit failure) but are more likely to find troops on them. Towns and other population centers are more likely to hold supplies (food and maintenance items are critical for survival) and spare parts, but the citizens will raise the alarm if they see you, and there are likely to be troops in towns.

The catch is that any alarms you raise will alert the search parties to your general presence and means a higher chance of encountering troops. Same goes for any military engagements in which an enemy scout or survivor escapes. The game is part stealth (avoiding conflict), part tactics(managing the suit, choosing your world route), part combat (winning conflicts you get into). At the end, instead of a boss fight, you have a final battle at the border of the kingdom as the search parties converge on your position and a friendly militia comes down from the other side of the border to help you across.

Kami

My brother and I have had this long standing idea between us. It is sort of a nebulous concept we talk about sometime. Its an amalgamation of games and ideas, a number of concepts which might be cool is put together in the correct fashion and executed well. We call it Kami, which is the Japanese word for “life force”.

At the most basic level, Kami is a MMORPG. The best way to describe it is to compare it to Pokemon. The key difference is that (other than being a MMORPG) you don’t order around animals; you are the animals. Your character is a spirit which can inhabit various animals. Instead of leveling up certain animals (although you can store the wild animals while you aren’t using them, which can improve usage by taming), you level up your control of an animal type. While on a hunt you could possess any of the surrounding unpossessed animals (the one you currently control becomes feral). You can also learn to reside within multiple animals, allowing you to trade off between animal types in battle and have a set of other animals support you. It also introduced the possibility of hybrids, such as a spine-thrower atop a flying animal. If your animal dies, you choose another animal to jump to, or if none are available you can resurrect at the nearest nature shrine.

Kami also has a second half though. A large aspect of the game is based in clans and guilds. Like in EVE Online, clans can own property and build up power. On the fringes of the world map you can battle a clan for control of land plots (a plot might be 15-30 acres). When in control of a plot, clans can exploit any resources and build a varietly of buildings. Some sort of fortifiation is generally wanted, however, because if a vicious clan challenges you, you better be ready to defend. Attackers enter your land from the main road. Your plot becomes instanced, meaning nobody can leave or enter during the battle and the entire plot reverts back to normal if you defend successfully (minus one time traps, etc.) to deter greifing. Each plot has finite resources, however, meaning that the most money lies on the edge of explored space. To make sure more area was always available, new regions made with guided procedural generation would be added regularly through updates. Previously impassable terrain would be removed through natural or NPC activity such as building a bridge over a river, clearing a rockslide, or revealing a new cave.

Constructing buildings on your plot would not be a trivial matter. Materials would first need to be accrued, either by harvesting resources on site or by importing. In the case of materials like stone, large quantities can be expensive and hard to transport. After you have the necessary materials, you need to select both a building site (there are numerous of these “sockets” in every plot, each allowing a different selection of building types) and a building type. From the initial barebones hub, you can add on modules; a barracks probably needs a kitchen and feral pen, while a lodge needs a bar, kitchen, and fireplaces. Once, you know what basic building type you want, you still need it built. You can either hire or assemble a custom construction crew (usually a specialized hybrid of animals). These are controlled by NPCs and build the building over a number of days. They work continuously, and depending on the hired team they may deduct continuously, up front, or after its done. Castles would take a long time and be very expensive. However, it would resist most normal attacks; only climbers, fliers, or siege animals could get past stone walls.

They regular map and game would be like any MMORPG, with quests and towns, etc. You can still make money through business ventures as well as through item sales. Shops could be bought up for instance, and would run continuously and then deliver your profits on login. You wouldn’t be able to found towns, but you could take up residence. General player consensus could drive world-wide events, such as if the majority of residents in a town wanted to declare war against a neighboring town. New quests would be available and the game world would reflect the ongoing war. The world would be essentially player-driven. Not everything would be available, though. Players who want to get into intense politics are encouraged to journey out and join a clan.

Animals would be both specialized and general. While there would be different types of attack classes (e.g. versatile melee, spine-thrower, agile, tank, flying, pack), there would also be pack animals, explorers, messengers, and shopkeepers (tentacled, perhaps?). Construction workers would have very specialized forms, like a quarry beast with a giant saw-blade tail and arms capable of lifting solid stone blocks. Beaver-style animals could be lumberjacks, and a tunneling worm/thing could be a miner. Some animals might work as a pack, sort of like the Tines in aFuTD. Such animals could fulfill roles requiring dexterity, like certain roles in construction or the making of tools.

The game is always changing; it just a fun thing to think about. Right now it appears to be a greatly player-driven MMORPG that’s a cross between EVE Online and Pokemon, with intense politics and economics but also crazy interesting animals/creatures.

Interstellar Travel

The most important part of writing science fiction is laying down a set of rules which stays constant throughout the book. In A Fire Upon the Deep (aFUtD), there was hyperwave, anti-gravity, hyperspace, and the Zones. In The Mote in God’s Eye (tMiGE), there were only two pieces of technology which violated physics: the Alderson Drive and Langston Field. Each was defined very clearly. Nothing is more infuriating than when an author saves the day with a previously undisplayed loophole.

Cover of A Fire Upon the Deep

The interesting thing about tMiGE is the interstellar travel. Scifi authors usually couple FTL travel with FTL communications; in tMiGE, the only way to send a message to another star system in a timely manner is to send a messenger ship. In addition, jumps between systems can only be made from specific points within each system, determined by the mass of the star and the arrangement of surrounding systems. aFUtD uses a similarly interesting, but completely different, device. Starships in the Beyond make micro-jumps, instantaneously jumping between two points in space and then calculating the next jump. This means that to go faster you just need more computing power. Systems built for different regions of the Beyond work differently; a bottom-lugger isn’t as fast as a state-of-the-art battleship except close to the Slow Zone.

In the fictional world I’ve been developing through a short story, interstellar travel is also interesting. Like tMiGE, the only way to go faster than light is with a spaceship. In my universe, ships have a minimum size requirement; messenger probes are out of the question. An interstellar drive has two parts: the ring, and the spikes. The ring manipulates space, flattening the local regions of the universe around the ship. While in theory a ring could be any size (bigger rings make bigger fields in a not quite linear fashion), it would lack control and have a tendency to fall into gravity fields. That’s why a ship needs spikes. Spikes are long, thin sensors that monitor the properties of the universe in small regions of space. They help the ring avoid massive bodies, correct for small spatial inconsistencies, and deactivate in the correct place. The more spikes a ship has, the safer and more precise it is. The higher quality a ring a ship has, the faster it can go. A ship that was too small wouldn’t be able to avoid planetary bodies or have a large enough detection field to navigate in flattened space. Ok, so maybe there is a little bit of Handwavium. But not THAT much.

You may be wondering: if the spikes hold sensors, why not just make a bigger spacecraft and imbed the sensors within the hull? Good question, reader. The answer is: you could. That is, if you are filthy rich. Rich people sometimes drive crazy cars and build crazy buildings, so certainly some people would make stylish spacecraft. At the end of the day, though, your spaceship is still occupying the same volume of space. It uses more sensors (unless you want minute pockets within your spaceship to expand and explode), and it only gives so much more interior space. It masses more, which means more energy or fuel to boost it through regular space. Spaceships aren’t like cars, either. Stylish lines are going to count for very little; even space stations don’t have windows, and nobody uses video to navigate. The result is that most spaceships are spheres inside a forest of spikes. Not very romantic, is it?

Mass is going to be the limiting factor on spaceship size. Unless you have very expensive spikes, you are still going to redimensionalize hundreds of thousands of miles from your target. You need some sort of in-system propulsion system. Since it is impractical to put a high-powered propulsion system aboard an already too-small ship, most spaceships would use local services: tugboats. Even obscure areas could afford one or two spacecraft with excellent traditional drives that can ferry interstellar craft around in cubic space. This also solves the problem of giving interstellar craft big dangerous drives that create exhaust. Except for military ships, redimensionalizing craft wouldn’t run the risk of toasting someone behind them. Military ships would be the exception; your enemies aren’t going to help you invade their system, so you need your own engines. On the other hand, military ships would be significantly different already. Most attack ships would be gigantic; they need to carry ship-board weapons, planetary craft, and a propulsion system. Military ships also carry prized interstellar equipment; governments are going to outfit their fleet with the finest rings and spikes.

Augmented Reality

Augmented reality games are great. They are a good way to encourage certain real life behaviors using game mechanics. For instance, there are a range of research projects focused on creating games that reward players for keeping track of and increasing environmentally sound behaviors, such as recycling and saving energy. Most of these games pit players against other real players, encouraging users to climb to the top of the leaderboards both locally, globally, and within groups of friends. Some games use virtual rewards within the game to encourage behavior. Zombies, Run! is a game that uses recreational running as the main game mechanic. As people run in real life they pick up items in the virtual world and progress the story. Players must also avoid virtual enemies by changing their routes in real life.

Ever since I played Skyrim I have had the idea of real life stats. As you did things during your day you could level up your skills and then compare them with friends. Skills could be anything from button-pressing to sneaking to agility to bush-trimming. Only recently though did I make the connection between ARGs and that idea. The game combines self-competition, leaderboard competition, and player vs. player competition. A person might focus on strength, so they might work out every day and then enter the activities they did from a wide selection. An algorithm would weight different activities differently, etc. But the skills aren’t only physical. People could increase their analog electronics skills, for example, or palm-reading.

Increased stats would unlock various ingame pieces of equipment, quests, and story arcs. Quests would require players to complete daring real life tasks, collect virtual items, or figure out puzzles. Quests would often involve prominent features of the surrounding area. An agility quest might involve cutting through a park while avoiding virtual defenses, or delivering an item to a virtual character in limited time. Puzzles could use public inscriptions, decoded in a special way, to point to ingame treasure. Generic quests such as gathering items or reaching various locations would also be available.

A large part of competition between friends would be PVP contests. The object is to either directly tag your opponent and tell them a code word, at which point they have to give you their number, or to lead them into a trap you have set. Other rules of engagement could also be available. Increased stats would help you in your struggle. Abilities, such as being able to locate your opponent, obscure your location, detect traps, or convince virtual characters to mislead your opponent, would come with increased levels of the respective skill. Equipment like traps and invisibility cloaks are available from ingame merchants for a price, but certain skills let players operate such equipment more effectively. Races are another option. Instead of trying to defeat your opponent, you are merely trying to complete a quest in a faster time than your challenger.