SCORE Project: NewMonopoly
Title: An Adapted Monopoly Game
Sponsor: Rodrigo Santos
Monopoly is a turn-based board game, in which 2 to 6 players move around the board buying, trading, or selling properties, building their own properties with houses and hotels, and collecting rent from their opponents. The goal is to drive opponents into bankruptcy, leaving one monopolist in control of the economy.
Monopoly has several limitations regarding the real life economy. One limitation is that the board configuration is static, i.e., the players’ tokens must move around the board in a pre-defined sequence of spots after rolling the dice (which is responsible for actions that strengthen or weaken players), and pricing cannot be changed (e.g., interest rate or public taxes fluctuation). Another limitation is that no loyalty program enables players to earn reward points from paying rents and use them/combine them with money to buy properties or pay rents.
In this project, you will develop a highly configurable, turn-based client-server version of the Monopoly Game that overcomes the above mentioned limitations.
NewMonopoly is a highly configurable computer based version of the Monopoly game. Monopoly is a board, turn-based game, played on a board depicting 40 spaces containing: 28 properties, i.e., 22 streets (classified into 8 color groups), 4 railway stations and 2 utilities; 3 Chance spaces; 3 Community Chest spaces; a Luxury Tax space; an Income Tax space; and 4 corner squares (GO, (In) Jail/Just Visiting, Free Parking, and Go to Jail). The aim of the game is to drive opponents into bankruptcy, leaving one monopolist in control of the economy. Each player begins the game with a token on the Go square, and 1,500 of a local currency in play money divided with 1, 5, 10, 20, 50, 100 and 500 bills. Token’s move around the board is determined by rolling dice.
The goal of this project is to a turn-based, client-server NewMonopoly game with high configurability, in which users play the game through a web site. The game must implement all core functionalities of the standard version of Monopoly (see en.wikipedia.org/wiki/Monopoly_(game) for a detailed description and www.wikihow.com/Play-Monopoly for a step-by-step description), including rules for buying, trading, or selling properties, building their own properties with houses and hotels, and collecting rent from their opponents, as well as paying rents, using Chance/Community Chest cards, going to/getting out of jail, and mortgaging. The game must also support greater levels of configuration. More precisely, the game must:
- allow players to enable a random sequence of spots as well as a periodic, random change of the properties pricing, rents, interests and taxes rates (in both spots and cards);
- allow a loyalty program to enable the use of virtual currency with random rules based on existing international alliances’ programs;
- allow new players to join the game as entrepreneurs (weaker restrictions on the number of players);
- allow complexity setting in three levels (e.g., easy, medium, hard) based on rules and different configurations from exploring variabilities on the previous three bullets.
The project must implement the features described above, i.e., all rules of standard Monopoly plus the configurability characteristics. Teams can choose the development platform, including tools and programming languages to use. Since the game is web-based, MVC frameworks may be useful. Teams must also provide documentation, including a requirements document, a design document, and a brief user manual (installation and game playing).
Teams can adopt any development process, although agile methodologies are suggested. All project artifacts must be stored in a public repository with issue tracking facilities, for example GitHub. In order to track the project’s activities and progress, the following items should be defined: project milestones; role assignment; tasks’ descriptions; task granularity; issue management policies; version control policies; human interface design evaluation strategy; and testing and deployment procedures.
The game must run on most modern browsers (e.g., Chrome, Firefox, Internet Explorer). Teams are free to make the system run only on selected platforms on the server side.
Level of Sponsor Involvement
The sponsor of this project will accept questions about the project topic at any time.
Sponsor contact: rps (at) uniriotec (dot) br
Answers to selected questions will appear here.