Games in the Game
What if world designers and players could construct their own games inside the game?
This would enable more and varying things for the players to play, and by making it possible for players to define rules for Sub Games, we have a situation where it is very easy to create mod-like additions to the game. While player made games may suffer from the usual problem with player created content (a small percentage of the playerbase creates it, and most of it is not very good), Sub Games require less work to create than say new artwork or new areas.
Sub Game definition can be made simplier by identifying a set of common kinds of rules in games, and allowing Sub Game designers to pick some rule types and parametrize them.
Types of games
Let's have a look at a wide variety of different game types, and try to find some common simple rule types that could be extracted:
- Snowball - throw snowballs at each other for some time, the winner(s) are the ones with highest number of hits.
- Board Games - played on a game board, with some defined tokens, defined movements, various defined transitions of the game board, saveable to sgf files, possibly parametrizable with timing / handicap, and defined winning conditions. (kind of complicated, a generic board game engine..)
- Speed competition - participants have to get within a certain specified distance of a defined set of waypoints, after a start signal has been sent. Some invariants restrict their behaviour, e.g. have to walk, have to use and stay inside a vehicle, play combat turned on or off? (like in duels?) - with some restrictions to weapons?, have to do something at some waypoints, or during the trip, or between some waypoints, etc. Possibly specified number of laps, and winning conditions. Breaking some of the invariants may give warnings or disqualification or added time.
- Team competition - players are divided into one or more teams in some agreed or random, or balanced way. There may be some invariants, e.g. on what is allowed or not, some aspects of play combat (or real combat) may be turned on, some game token(s) may be manipulated in some ways (e.g. kicking, hitting with stick, etc), and scores are counted in some specified ways (e.g. putting a certain game token into a goal, catching a game token, etc (Quiddich, anyone? ;-P )). The game may be time limited, possibly divided into several periods, maybe with different rules, and there might be timeouts for some certain reasons. Winning condition could be certain score lead, score at end of time, certain absolute score, etc.
- Fighting sport. Quite similar to team competition, some rules on what weapons and such can be used, and the level of combat (wether participants can recieve damage at all, lowered hitpoints/health & bruises, or death? - similar play combat system as in WoW duels perhaps). Winning could be defined as certain number of damage ('if it was for real, would he be dead?'), first blood (hit that causes a certain kind of wound), knockout, or death.
- Card game - somewhat similar to board game. Might also include play of some kind of tokens, e.g. money.
- Betting - bet on some outcome, against some odds.. Hmm.
- Quizz - participants are asked questions, in forms or live, and they have to answer them in some time, or press a button and answer (that is quite unfair to low lag players / human players, so perhaps press a button to indicate you try to answer, then the game randomly picks from the ones that pressed). Questions may be defined beforehand, perhaps divided into some categories and difficulties, perhaps with some hints that may decrease the amount of points recieved, perhaps pulled from some question database.
- Collecting - Players have to collect some types of items during some time limit, perhaps with invariants applied (e.g. have to find them in nature). Ranking according to number of items. E.g. mushrooms, troll ears, enemy insignas, money, ancient artifacts. Or perhaps just find a specific thing - the King Diamond.
- Exploration - discover some new areas first / discover most new areas.
- Crafting - craft some thing fastest, or with best quality, or in largest quantity, or that best measures in some test (e.g. damage resistance for armor, firepower, etc)
- Testing a skill - e.g. shooting accuracy, climbing, etc. Not too interactive, but at least NPC:s are at an equal footing.
- Artistic - create some works of art, or do some performance, and have them (possibly anonymously) scored / ranked by a jury or passersby or such. Raters can give it a score (possibly in different categories, but with an average), and may leave comments also on a discussion thread.
- Building - participants construct themselves some machines for doing some task, or that can be measured in some way. There may be e.g. time constraints, material constraints (have to use stuff from within a specific place, or owned / tagged by someone). E.g. build the tallest building, or build something that is then tested in some way (e.g. cannon firepower, car speed, airplane flight distance / height, etc.
- Tournament - a kind of meta game - players (or possibly teams) compete against each other, using the rules of some specified game, with specified parametrization, using either a score system or a binary tree system to rank the teams, possibly switching to a different system for the N best participants (e.g. semifinals & finals). The tournament can have some defined prizes (e.g. part of the entry fees, etc). Might take place over some time, perhaps participants get notifications of who their next opponent is, they may not need to play the round at a specified playing field, unless the rules demand it. If some player fails to arrive, they may be disqualified.
Sub Game Rule Blocks
(Any better name for the rule parts than Rule Blocks, as block is kind of overused? Or perhaps it's ok?)
TODO: Extract commonly found Rule Blocks from the above list of games.
TODO: Then prioritize the Rule Blocks, so that we have an implementation order, most valuable rule block to least valuable.
Games are Contracts
The constructed game is a information item.
Playing a game is agreed to in similar way to a Contract (it is a form of contract, especially if entrance fees and prizes are defined). The game may have some parameters that need to be set before the contract is agreed on (e.g. participant fee & prizes, whether the fight is to the death, amount of handicap granted, which racing track is used, etc).
While a player is playing a game, there is some indicator for the game shown (like a buff or such), which may open a score UI, or some other game UI.
Participants, especially in team sports, may get a colorful tabard with their team color, insigna, and their name on it. Whee!
Some games may have some score outcome, in addition to a simple ordering of participants. Sometimes a game can be played solo too, where winning may be defined as overcoming some rank (or there is no winner, just a result rank). Achieving some specific score in a game, or winning it against some other participants (that also want to win it) may be used as part of a quest / contract. E.g. a guild / school / military / job may have a requirement to achieve a certain score in a game, or only the N best ones in a qualifier game (which is held at some intervals, or when there is an opening) are admitted. Could allow kind of interesting filtering of organization members / holders of certain roles/positions in organizations.
Characters' scores in different games are remembered, and some rank in a given game is calculated for a player / team based on what the ranks of their opponents were, and/or based on the scores they recieve. Some handicaps may be enforced or voluntarily agreed on when playing between differently ranked participants. Possibly other statistics can be remembered for a player too, such as number of goals, etc. The data is available to the player, and it can be publically available too (perhaps selectable by the player?). The ranks can be used by the in-game game engine to e.g. set up fair teams in a teamsport from a set of participants.
Teams for some specific kind of game could be formed independent of any play of that game, and then participate in different plays. Cities, organiations, etc. could have representative teams, possibly with some qualification procedures, and of course reserves. Teams could organize training amongst themselves, and participate in different games and tournaments.
Game Vending Machines and Scoreboards
A specific game could be synced with some machine too, e.g. showing the score, light effetcs on goals, and shooting pyrotechnics when the game is over. The game observer machine input node might need to be in some distance from the game, or perhaps at least present when the game is started. Perhaps it can even be used as a game 'vending' machine, participants gather up at it and sign in, and when enough participants are present, or a given time has come, the game arranging machine tells each player that the game will start soon, and then starts the game, and recieves input from it (as information messages), allowing it to show them, as well as send them to newsfeeds, etc. The score database might be public in some way, so that any score database accessor machine may access it, or it might be at a particular location in the world... - but, players ranks should really be always remembered, independent of the game world.