You have chosen to sponsor your bid up to a maximum amount of .
This project involves making about a dozen modifications to a networked multiuser puzzle game written in Java and Flash using the Unity multiuser development kit. The modifications required are nearly all minor display additions, taking data that already exists in the game and displaying it in the Flash interface at the proper time.
This game software will be used for a cognitive science experiment about how people in groups spread information through imitation, and create new innovations built on previous ones. The basic setup involves each player choosing from a set ("league") of creature icons to make a "team", which is evaluated according to a score function based on the icons chosen. Each player's team is shown in the display of one or more other players, so that they can copy them if desired. This new version allows players to "protect" (i.e. patent) their teams, so that others must pay to use them, according to certain configuration options.
Most of the work to implement these changes has been done by another programmer (who found a steady job in his home country of Hong Kong and unfortunately could not continue work on this project), but we require a few more display changes and one functional change, as described below. Some history, bugfixes and configuration details given by the previous programmer are included in a separate document, as well as a short video clip showing the client interface in action (from the previous non-patent version).
1. Main player interface:
a. When a player makes a change that results in a team that is protected, the display alongside the team (aligned vertically) should read "Protected by another player" in bold red letters. Right now this area is blank.
b. [Functional change] At the end of round, a player that has a team that is protected should see a dialog box that says "The team you have chosen is protected by another player. Would you like to keep this team or revert to your team from the previous round?" Two buttons should be displayed: "Keep my team" should simply leave the team as is, and "Revert to previous" should change the team to its state at the end of the previous round. If neither button is pressed, the default is to leave the team as is.
c. Changes in a player's cumulative score due to (i) cost of protecting a team, (ii) cost of using a protected team, (iii) bonus of someone else using your protected team should be shown numerically (w/ plus or minus sign as appropriate), separately from the main score display, just above the word "Score". The main score display should only show the value of the team according to the score function (and optionally the added score noise, as specified in the config file)
d. Explanation of score changes in 1.c should be shown where "Protected by another player" is now. They should read as follows: (i) "Cost of protecting team", (ii) "Cost of using protected team", (iii) "Paid from user(s) of your team"
e. At the end of a round, if a player is able to protect their team, a dialog box is shown asking whether this is desired. The button labels should be changed to "Protect my team" and "Don't protect my team"
2. End-of-game screen:
a. Make it so that the player's score row cannot be de-selected (i.e. it always remains green)
b. Instead of "in the last round of the game your score is ##", the display should say "Your total score for the whole game was ##." (where ## is the sum of all points earned by the player in all rounds)
3. End-of-session screen:
a. Add the line at the bottom "Your player ID number is [PlayerID]." This will allow us to distribute prizes/money according to performance.
4. Control interface:
a. At the end of each session, show a list of playerID's and their total scores for the session at the end, ordered by ascending rank.
5. Instruction screens:
a. add new parts about protecting teams and using protected teams. Wording and layout TBD, but should have similar look and feel to current version.
b. change screenshots e.g. end of game