When you want to Play a Game with Many people you need a special infrastructure that is highly scalable. When we build the Game we used Mosaic and Cordys. This a document I wrote about Cordys.
Cordys is highly related to Mosaic. An important part of Cordys was based on the Mosaic Infrastructure. Cordys bought Mosaic from Interpay. Interpay is owned by the Dutch Banks. Interpay uses Mosaic to process an enormous amount of payments. Mosaic is able to process these payments without any problem. It never fails (non-stop) and it scales linear. This means that the limits of the amount of transactions it can process are unlimited.
Mosaic uses a cluster of PC’s. When you want to increase the amount of transactions you just add a PC. When a PC fails another PC takes over without any problem. Cordys and Mosaic are based on a software design pattern, the Software Bus or the Publish/Subscribe-Architecture. Design Patterns are a spinn-off of the Book “A Pattern Language” by Christopher Alexander.
Software and hardware are connected by a Dialogue. When a software/hardware-component is available it tells the System it is available. When another software/hardware-component wants to connect to a component it just asks the system to connect and the Bus makes the connection Just-in-time.
Multi User Games fail because the performance of the game is going down when many many (Millions) users use the game at the same time. The System we build was able to support an unlimited amount of users without any degradation in performance.
To build a game you need more than the solid foundation of a Technical Infrastructure.
The first thing to do is to interview many people using a very special technique. When an Interview is finished you have to analyze the Life-Story. A Life-Story contains many Situations.
Every situation is coded (Place, Actors, Event, Action, Life Line, Person …) and stored in a Database. The Situation is connected to a text or (better) to a small Video that describes or shows the Situation. It is Fun when Users are able to upload a Funny Video about a Situation. The software we used supported this. It was even possible to connect many video’s to one situation. You could award a price for the best video. To do this you need a Voting System. This was also available.
A “normal” interview contains about 40-50 situations. When you have interviewed many people the amount of connections rises exponentially. The next step is to give users the opportunity to add their own Life-Story. This will speed up the amount of connections.
When you want to move from one Situation to another Situation You have to make a Choice. The Choice tells a lot about the way you Evaluate and the way you evaluate tells something about you. Every choice you make adds data to your Dynamic Profile and your Dynamic Profile tells a lot about your personality. It gives the System a possibility to find comparable users and their Life-lines.
When you are a Failure (A Social) it can easily find a person that was successful and connect you to this person (Chat, Email, ..) or show you a successful Life-Line.
It is also possible to generate completely new (non-existent) Life-Lines (Scenario’s). You can also move back in a Life-Line and find a situation that you recognize or you can jump from one life-line to another (What happened at School or in the Office).
When we had finished the technical infrastructure we used the interviews of all the prior projects, analyzed them, put them in the database and started to Play. We became very exited.
What we found out is that we could define a higher level A Game by giving the users an Assigment (Find out How to get in trouble when you are at School or At Work). We could also easily recreate many well-know games by moving through the scenario-framework with a special protocol. We could even generate scenario’s for a new movie.