Related U.S. Application Data
- PRIORITY CLAIM
Provisional Application 60/723,963 filed on Oct. 6, 2005.
This application claims priority to U.S. Provisional Application 60/723,963 filed on Oct. 6, 2005, entitled “Self-Organizing Turn Based Games and Social Activities on a Computer Network.”
- FIELD OF THE INVENTION
- Ashby W. R. (1962): “Principles of the Self-Organizing System,” in: Principles of Self-Organization. von Foerster H. & Zopf G. W. (eds.) (Pergamon, Oxford), p. 255-278.
- Eigen M. and Schuster P. (1979): The Hypercycle: A principle of natural self-organization (Springer, Berlin).
- Lendaris G. (1964): “On the Definition of Self-Organizing Systems,” IEEE Proceedings 52, p. 324-325.
- Nicolis G. and Prigogine I. (1985): Self-Organization in Non-Equilibrium Systems (Wiley, New York).
- Turing, A. M., (1950): “Computing Machinery and Intelligence,” Mind, 59:433-460, reprinted in E. A. Feigenbaum and J. Feldman eds. (1960): Computers and Thought (McGraw Hill: N.Y.). See also http://www.loebner.net/Prizef/TuringArticle.html (Dec. 8, 1998).
- Winston Patrick Henry (1984): Artificial Intelligence, 2nd ed. (Addison Wesley: Reading Mass.).
- Bigus Joseph P., Bigus Jennifer, and Bigus Joe (2001): Constructing Intelligent Agents Using Java, 2nd ed. (Wiley: New York).
- BACKGROUND OF THE INVENTION
This invention relates to the improvement of online turn-based, browser games and the social networking activities such as online chat rooms. A more evolved player community results by applying the principles of self-organizing systems to a social networking framework.
Turn-based gaming (sometimes known as turn-based strategy) is a term of art used within the online Internet community. Players agree to a game, set up the initial state of the game, and agree upon a timeout period. Each participant plays in turn according to the game rules. Once each player has taken his or her turn that round of play is over, and any shared processing is performed. This procedure repeats to the next round of play. The cycle continues until a winner is declared.
Internet games are games that are played online via the Internet. They are distinct from video and computer games in that they are normally platform independent, except those games that rely on client-side technologies (often called ‘plug-ins’). Normally, all that is required to play Internet games are a web browser and the appropriate plug-in (frequently available for free via the plug-in maker's website). A game played within a browser is often called a browser-based game.
There are many different plug-ins used to play online games. The Java virtual machine (JVM), Shockwave, and Flash are examples of plug-in technology. There are specialized tools used to create games employing these technologies. Games that require plug-ins are usually based on the client-side; that is, much of the processing is done by the player's computer instead of the server hosting the game.
Server-side games occupy the opposite side of the software spectrum. They process game play on a server instead of the player's computer. Server-side games are typically not as visually appealing as client-side based games, but easily compensate with more advanced functionality. The server can apply complex rules, compute scores, and record all manner of player interactions. Furthermore, it is easier to implement multiplayer games with server software.
The elusive goal of online gaming is to create a dynamic, responsive interface that allows players to interact as if they were playing cards at the kitchen table. It is hard to attain the real-time responsiveness one needs to support a social function like chatting with all the advantages that client-server computing brings. The problem essentially boils down to limitations of the Internet as viewed by Web browsers.
Though rich in content and media, the Web tends to be a traditional one-way broadcast medium, like radio and TV, with the largest number of people being passive information consumers. Sharing or publishing information from the client side is another matter. People currently use Web browsers to find and read information. Publishing information is relatively rare but the requirements are growing. The rapid acceptance of web logs indicates need. Web logs (frequently called blogs) follows a bulletin board technique where the users post a message to a server that eventually gets added to a common Web page for others to view. Most online gaming sites that try to incorporate social networking features like chatting adopt a blog approach. Unfortunately, the delays inherent to blogging fall well short of the dynamics of human conversation.
The problem with browsers supporting chat rooms and responsive server-side games is the fact that the Web was not designed to support real-time, peer-to-peer communication. Web technology essentially follows a pull model. Web browsers send HTTP requests (GET, POST) to the Web servers and receive contents in response. The model of push feeds contents directly from Web servers to Web clients. RSS, for example, is a push protocol for headline news. Generic push, however, has never come to be a protocol for the Web. For many people, push went quiet during the last few years when systems like Marimba and Castanet disappeared.
Instant messaging (IM) comes closest to approximating human conversation responsive enough for online games. Web browsers were not designed to synchronize real-time events and manipulate communication sockets in the way that instant messaging applications do.
Many domain experts have come to the conclusion that Web browsers and IM are incompatible because IM essentially follows a push model. Some Instant Messaging systems do have browser interfaces. For example, there is ICQ in Internet Explorer. However, such IM implementations within a browser are essentially coupling the IM program together with the browser via remote-procedural calls from within a specific operating system (Windows, Linux, etc.). They do not operate on, and exchange the contents and media of, Web browsers.
The study of order creation within open thermodynamic systems gave rise to the notion of self-organizing systems (SOS) and dissipative structures [Nicolis and Prigogine, 1989]. Ecology provides illustrations of how a SOS perspective differs from standard approaches. Scientists are interested in how spatial and temporal patterns such as patches, boundaries, cycles, and succession arise in complex, heterogeneous communities. Early models of pattern formation use a ‘top-down’ approach, meaning the parameters describe the higher hierarchical levels of the system. For instance, individual trees are not described explicitly, but patches of trees are. Or predators are modeled as a homogeneous population that uniformly impacts a homogeneous prey population. In this way, the population dynamics are defined at the higher level of the population, rather than being the results of activity at the lower level of the individual [Ashby, 1962; Eigen and Schuster, 1979; Lendaris, 1964].
The problem with this top-down approach is that it violates two basic features of biological (and many physiochemical) phenomena: individuality and locality. Modeling a rodent population as a group of rodents with some growth and behavior parameters (so-called lumped parameter models), differences that might exist between individual rodents become ignored. Some are big, some are small, some reproduce more, and some get eaten more. These small differences in the micro-scale can lead to larger differences in the macro-scale. For example, changes in the population gene frequencies, individual body size, or population densities might have cascading effects at still higher levels of organization.
- SUMMARY OF THE INVENTION
Humans also self-organize information while surfing the Web. Harvesting hyperlinks within HTML pages of interest create valuable information than can be further utilized. Google capitalizes on this SOS behavior to create high quality Web searches. Hyperlinks to information that have the high frequency among a world-wide population reveal a measure of relevance. Google gages importance of underlying information by finding the most frequently cited hyperlinks related to a given phrase.
In accordance with the present invention, a method for creating a system of self-organizing colonies of players engaged in turn based games and other socialization activities performed within a web browser is provided. Most web sites catering to online gaming are monolithic in nature servicing many thousands up to several million players simultaneously. The approach described here partitions the game site population into distinct colonies with the appropriate activities and design such that the players create a community environment. In the aggregate, the total gaming population using the same machinery described here may be in the millions, the size of the individual colonies will be restricted to a few hundred.
BRIEF DESCRIPTION OF THE DRAWINGS
Playing online games and chatting are examples of social networking activities; therefore, an invention that combines self-organizing capabilities to these activities will enhance the social experience. Essentially, the notion becomes a game within a game where the players change aspects of the rules governing the site and the games themselves. In particular, tests have demonstrated that game players create their own distinct communities just as thermodynamic theory predicts. Self-organization in the colonies can become manifested in several ways. Selecting a colony might be based on player characteristics. Possibilities for segregation are:
- Available games
- games of chance versus strategy
- card games or board games
- Competition versus sociability
- Demographic factors such as age
- Common interests like sports, hobbies, or politics
- Referral based membership
- Paid versus free membership
Players can adjust the rules of the colonies. Possible examples:
- Maximum time between turns
- Specific game rules or variations in games
- Tournament rules
- Available shops/portals/blogs
- Maximum number of players allowed within a game room
- Limits on player behavior
The ability to fashion online communities represents a powerful attraction to Internet users. The game play becomes more intimate where users get to know each other as in any other social club.
FIG. 1 is a schematic of the invention comprising of a web server, an image server, and a database server transferring chat room content to a plurality of client web browsers.
FIG. 2 is an illustration of a world map that provides a gateway to a plurality of settlements and colonies that self-organize.
FIG. 3 is a schematic of the components supporting a self-organizing colony comprising of desktop, colony map, avatar controls, messaging system, and rules engine.
FIG. 4 is a screen shot of the user's desktop.
FIG. 5 is a schematic illustrating how the desktop provides access to a plurality of game rooms.
FIG. 6 is a screen shot of a typical game room environment.
FIG. 7 is a screen shot of a colony map.
FIG. 8 is a schematic illustrating how the colony map provides access to a plurality of chat room environments.
FIG. 9 is a screen shot of a chat room environment that includes avatars, a virtual conference room, the message input field, and a scrolled chat session transcript.
FIGS. 10 a, 10 b, and 10 c are three screen shots demonstrating the sequence of events for avatar movement: a) entering a chat room, b) examining available locations for movement within said chat room, and c) executing a move to the selected location.
FIGS. 11 a and 11 b are two screen shots illustrating how the virtual environment can be populated with new objects such as adding furniture to a house scenario.
FIGS. 12 a and 12 b are two screen shots illustrating an avatar shopping: a) within a chat-enabled furniture store, b) reviewing transactions of said purchases to include spit-screen views of a bank account and a store's pricing catalog.
FIG. 13 is a screen shot of a chat room environment with game play that includes a mixture avatars and chatbots.
FIGS. 14 a and 14 b are two screen shots of the interface for customizing avatars.
FIG. 15 is a screen shot of a visual rolodex that maps the avatar specifications to individual users.
FIGS. 16 a and 16 b are screen shots demonstrating the two step process of posting a private note to another player.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
FIGS. 17 a and 17 b are screen shots demonstrating the two step process of reading a public note.
FIG. 1 is a diagram that describes the software architecture of this system. The system includes components on the server side 100 and the client side 101. The server side components comprise of a database server 102, a web server 103, and an image server 104. The diagram represents software functionality as opposed to physical computer hardware. The server-side components could reside on a single computer running all three software services or split across two or three computers linked by an intranet. The database 102 stores information regarding the state of game and chat environments. Typically, this data is stored in SQL relational tables. The database server also stores settings of self-organizing rules, player information, and player messages. The web server 103 provides the communication linkage to a plurality of client browsers 101 by way of the Internet 106 via a network protocol such as HTTP or HTTPS. The image server 104 transforms and composites image combinations. These combinations include the game room graphics, avatars, conversation balloons, non-avatar objects, and chat room backgrounds and foregrounds.
FIG. 2 is an illustration of a world map 200 that provides a gateway to a plurality of settlements 201 and colonies 202 that self-organize. Users within their web browsers 105 view the world map 200 which is an HTML image map. The server 103 directs users to the appropriate online communities when they activate icons or hot spots on the map. In FIG. 2, a settlement icon 203 and a colony icon 204 serves up the settlement and colony environments, respectively. The distinction between a settlement and a colony is that the former is early in the process of self-organizing. Settlements are pre-colonies that eventually transform into distinct colonies.
Individual users can become members of more than one colony. Each member has a home colony, but they can move between colonies through passports (permissions granted within the database server).
FIG. 3 is a schematic of the components supporting a self-organizing colony comprising of desktop 301, colony map 302, avatar controls 305, messaging system 306, and rules engine 307. The desktop 301 provides a gateway to a plurality of game rooms 303. Similarly, the colony map 302 provides a gateway to a plurality of chat rooms 304. Users can customize the visual characteristics of their avatars using the avatar control 305 component. The self-organizing colonies support integrated messaging capabilities throughout the environments such as the desktop 301, the game rooms 303, and the chat rooms 304. The messaging system 306 supports both electronic mail [Simple Mail Transfer Protocol (SMTP) to user's external e-mail addresses] 308 and instant messaging 309. The rules engine 307 is the module that allows users to impose their collective preferences into the online self-organizing colony environment 202. The preference information is stored in the database 102. The effect of the parameter settings and modified rules governing user behavior are what provides each colony 202 its unique character. To continue the metaphor of local government, the rules engine and its settings are like local laws or ordinances enacted to govern behavior of its citizens.
A screen shot of the user's desktop 301 is shown in FIG. 4. This screen forms the center of the gaming environment within a self-organizing colony 202. The games currently available are shown as icons on the desktop. For example, one enters the backgammon game room by activating the icon image of a backgammon board and dice 400. Each game icon on the desktop is associated with a specific game room 303. FIG. 5 is a schematic illustrating how the desktop 301 provides access to a plurality of game rooms 303. The icons are arranged in a manner resembling a car dashboard. Underneath each game icon is the number of turns awaiting the player in open boards of that particular game type. As an illustration, in this sample screen shot, the icon label 412 shows that the user has one turn among five active boards within the Gold Card game room.
The Waiting Room 401 is like a game room except here users post their preferences for games they desire to play. Other users can enter that room and claim game challenges. Button controls include Refresh 402, FAQ (Frequently Asked Questions) 403, Help 404, and Logout 405. Refresh activates the HTTP request to the web server 103 to reload the HTML page. FAQ loads HTML instructions with overview questions and answers to assist new users. Help activates game rules in effect with this particular colony. Logout eliminates a user from the active list and returns a validation screen to re-login at a future time.
To the right of the game icons is a Who's Online region 406 and Point Leaders region 407. These scrollable windows list of game players presently active and the game point leaders of this colony, respectively. The lower part of the desktop 301 addresses the messaging system 306. Private Notes 408 on the lower right involve instant messaging between two users within the colony. Public Notes 410 on the lower left allow users to both post and view general interest comments or announcements to a bulletin board. These Public Notes are visible to everyone in a colony. The user's desktop 301 also includes his associated avatar image 411 and other cumulative statistics related to that user such as points earned during the month, total points, balance, and the like.
The colony map 302 is activated when users activate the colony map icon 409 (shown here for colony “Atlantis”) on the desktop 301. This screen forms the center of the role-playing activities within a self-organizing colony 202. The function of the colony map is to provide access to the various chat rooms 304. FIG. 7 is a screen shot of a typical colony map. For example, activating the “Shop 1” icon 700 allows a user to enter a storefront chat room 304 like the one shown in FIG. 8.
FIG. 6 is a screen shot of a typical game room environment. Although this particular illustration involves backgammon, the look and feel remains the same for all of the game rooms. On the right is the game board 600. This is where players make their moves for a specific game with an opponent. Each game has its own unique characteristics for making moves which depend on context and state of the game. Captured in this instance are a Roll Dice button 601 and a current scoreboard marquee 602. On the left is the Open Games region 605 that indicates the active games within the backgammon game room 303. Three games are shown here with three different opponents. A line highlighted in bold 604 signals that it is the user's turn for the game indicated. In this instance, the user's turn awaits in a backgammon game with ‘mutt’ that has a timeout set for October 4th. Game Notes 603 is the portion of the interface were two players can view and send notes posted to each other regarding this particular game board 600. After a player has taken his turns and posted/read the various Game Notes 603 within the game room 303, activating the Close button 606 returns focus back to the desktop 301.
FIG. 8 is an illustration of the web server 101 supporting different types of chat rooms providing environmental context. Most any virtual space in which participants can interactively communicate and meet with each other can become a chat room. Potential meeting places could be an office, a house, a lounge, a hospital, or a museum. A storefront chat room 304 is one example shown in FIG. 8.
An enlarged view of a chat room is shown in FIG. 9. The environment shown here is a typical conference room 900 with multiple participants. The avatar labeled ‘mitch’ 908 corresponds to a user who entered the conference chat room 900 through interactions with his client browser 105. An avatar is a graphical image representation of a user interacting within a chat room environment. The Names button 905 toggles the avatar name plates 909 with its associated user for easy identification. The server software 100 records the coming and going of avatars into a chat room, movement within a chat room, conversations between avatars, and scenario changes as described later. The composite of all the information described above is used to generate a chat room scene such as the one shown in FIG. 9. Here, three users are interacting together while viewing the same common chat room view 900 rendered in their respective client browsers 105.
When avatars engage in conversation, text appears within a balloon 907 in a fashion resembling comic books. The user inputs his remarks through a scrollable text widget 903. After inputting those text remarks, the chat snippet is sent by activating the “Post” button 902 to forward the information to the web server 101. The web server processes this information and displays the results into the common chat room image. It positions a balloon containing those remarks over the avatar representing the user who sent them. Each avatar can send comments in conversational form and the balloons adjust accordingly. The image server 104 adjusts the optimal placement of the balloons to make viewing the entire conversation between avatars possible. It avoids overlapping balloons and will truncate as needed. In addition to balloon text, a conversation transcript is recorded in the message log region 901.
Text balloons are ephemeral to mimic spoken conversation between humans. The server side software 100 removes the balloons after a set period of time by way of a software timer. Text balloons with a shelf-life gives the invention special appeal beyond typical comic book presentations. For humans in real life to participate in conversation, they must be there to witness it. Similarly, the software in accordance with the present invention imposes the same dynamic on users represented as avatars. Users can see and experience the specific conversations within a chat room only if they were viewing it in real time. In other words, the avatars/users have to be in the chat room at the time the events transpire in order to share the experience.
The message log 901 records the time, avatar identifier, and chat text at the same time the balloons appear within the chat room scene. These lines do not disappear in the same manner as the balloons. After a set number of lines are recorded, but oldest lines are scrolled out of view. The message log 901 helps users who read slowly or like to catch up on conversations while they were momentarily distracted. There are alternate embodiments of this invention where a full and complete transcript is recorded to be read by others who were not witnessing the events in real time. Chat Rooms used for depositions, court proceedings, business conferences, town hall meetings are examples where the addition of a permanent record proves useful. In such instances, the message log 901 becomes a scrollable text widget (not shown) and the database 102 tables are modified to store all the chat text traffic for a given chat session.
FIGS. 10 a, 10 b, and 10 c are three screen shots demonstrating the sequence of events for avatar movement. FIG. 10 a displays an avatar entering a chat room. Typically, a user navigates to a specific chat room through the colony map 302. FIG. 7 is a typical example which illustrates a “Shop 1” icon 700. Activating this icon or others within the HTML image map, fires a popup window containing the associated chat room 304. The act of entering a chat room is recorded in the message log region 903. When a user triggers the “Move” button 904, the chat room will display available movement locations (or “hot spots”) within a chat room as shown in FIG. 10 b. An avatar can move to “Chair 4” 1001 since the spot is available (not currently occupied with another avatar). A user activating this hot spot 1001 executes the avatar movement as shown in FIG. 10 c. The avatar moved to the chair and assumed a sitting posture 1002.
Avatars do not necessarily represent actual human players in all cases. An alternate embodiment of the instant invention is to have avatar activity supported by server side software components 100 directly. Automated avatars that can conduct software-driven chatting are frequently called chatbots. FIG. 13 is a screen shot of a chat room environment with game play that includes a mixture avatars and chatbots. Chatbots can be used for answering routine questions, targeted advertising, and adding ambiance to a given chat room. For example, the cashier 1003 in FIG. 10 a is a chatbot who welcomes customers as they enter, takes their orders, announces specials of the day, and the like. Chatbots can readily interact with human-driven avatars using standard AI techniques such as variations of the Eliza program.1
1Eliza is the best known Artificial Intelligence program in the world. It is also one of the oldest. Created in the early 1960's by MIT scientist Joseph Weizenbaum and named after Eliza Doolittle, its mission was to attempt to replicate the conversation between a psychoanalyst and a patient. The origins of the “imitation game” actually date back to the very beginnings of computer theory with Alan Turing (1950).
FIG. 13 illustrates another embodiment of the invention that offers additional ways for players to interact with a game while self-organizing within a chat room. In this instance, players are dividing themselves into teams to compete in a trivia game. The trivia question 1301 (which can include in-game advertising related to the question) appears within the confines of the chat room 304. In other words, this embodiment combines gaming with chat (or other similar social activities) using positioning around tables to organize the team structure.
FIGS. 14 a and 14 b are two screen shots of the interface for customizing avatars. The user can select from a palettes of features and accessories using tabs. Examples include head shape, eyes, nose, mouth, hair, and clothing. The combinatorics of the options allow for a huge number of possibilities. FIG. 15 is a screen shot of a visual rolodex 413 that maps the avatar specifications to individual users within a colony. It serves to illustrate how avatars become just as visually unique as the players themselves.
FIGS. 16 a and 16 b are screen shots demonstrating the two step process of posting a Private Note to another player. Activating a user's ID anywhere within the site brings up the associated Player Card 1601. Selecting the name ‘mick’ 1600 within the Who's Online region 406 demonstrate one example of this technique. An alternate method would be to use the rolodex 413. The Player Card 1601 opens a popup window with the Compose Note tab 1602 on top. The user adds text to the Subject textbox 1603 and the Message scrolling textbox 1604. Activating the Post Note button 1605 sends a private note to the player associated with that particular card. In the alternative, a private e-mail (using the player's e-mail address provided during registration) is sent by activating the Send E-mail button 1606.
FIGS. 17 a and 17 b are screen shots demonstrating the two step process of reading a Public Note. The process is analogous to sending a message described above. In the Public Notes region 410, one can read messages of general interest in the Group Notes tab 1700. Selecting a specific message 1701 activates the Player Card 1703 open to the View Note tab 1703.
The rules engine 307 in FIG. 3 forms the heart of the self-organizing colony. The parameters and operational characteristics that govern how a given colony 202 runs day to day are recorded and acted upon by the rules engine. From a software point of view, the rules engine is a controller object within the server-side software 100. Each colony starts off with default settings as settlements 201. Preferences, attachments, and other behavior develop as players interact. The preferred embodiment of this invention combines the games, role-playing, and socialization aspects of the online community. Players of each colony record their preferences through periodic elections or polls or town hall meetings (chat room activity). Town officials from the membership are elected who have limited permissions such as the ability to moderate the Public Notes 410, suspend specific user activities, and the like. Capturing user preferences through colony participation is the preferred method of self-organizing.
The rules engine 307 applies the aggregate preferences to the dynamics of a given colony's operation. As an illustration, Colony 1 may become a competitive gaming site where most of the games might be strategy oriented and the timeouts are relatively short. The number of chat rooms may be few. Instead, Colony 1 focuses its resources on points, tourneys, and tournaments. In the alternative, Colony 2 may be more relaxed with more games of chance and generous timeouts. The bulk of peoples' time might be devoted to chatting resulting in more chat room environments. The ability for the structure of colonies to change based on user input should generate a diverse universe of colony types.
Alternate embodiments of this invention is to employ rules engines based on sophisticated software technology such as expert systems, data mining of user participation, and machine learning. In other words, the rules engine can adapt to user participation patterns. The rules engine may tune its rules by analyzing player interactions with the site. For example, if a specific game seems to have fallen out of favor, the colony's rules engine may substitute another game of a different type. These changes can be in addition to direct user input or completely based on anecdotal evidence or any weighting of the two.
This invention does not lay claim to inventing the technology for rules engines per se. There are many references to rules engine construction for all manner of experiments in artificial intelligence research [Henry, 1984; Bigus, 2001]. This invention improves social networking and game play through the application of rules engines in creating self-organizing colonies.
- CONCLUSIONS, RAMIFICATIONS, AND SCOPE
This invention relates to the improvement of online turn-based, browser games and the social networking activities such as online chat rooms. A more evolved player community results by applying the principles of self-organizing systems to the gaming framework.
This invention encompasses building social networks of people using self-organizing system software. Examples of social networks include playing turn-based games and communicating (chat, e-mail, messaging, etc.). The encapsulated idea is to build communities from the bottom up instead of the top down. By way of comparison, most popular Internet companies like Yahoo, MySpace, and Pogo (Electronic Arts) build their membership from the top down. Their user communities ultimately grow too large to sustain cohesiveness. Observations of actual biological communities form the basis of self-organization theory; consequently, employing a more natural approach to human behavior should prove superior.
A compact disc has been included with the specification. It contains working software that demonstrates the functionality described above. The software application already generates commercial revenue. As expected, new users have noted the uniqueness of the approach described here compared to other alternatives currently available on the Internet. Members pay to play games and chat using this invention on multiple colonies of up to 500 members each.
Although the description above contains many specificities, these should not be construed as limiting the scope of the invention but as merely providing illustrations of some of the presently preferred embodiments of this invention. Thus the scope of the invention should be determined by the appended claims and their legal equivalents, rather than by the examples given.