Ask Homework Help/Study Tips Expert

Scrabble Game Characteristics -

  • You need to create a 20x20 grid where users on different PCs, min of 2 people, but allowing more if there are more players, will place letters on tiles of this grid to make words in turns.
  • We ask you to implement a specific version of this game as follows but you are welcome to read about Scrabble game online which is a popular game with numerous versions.
  • Users will take turns to place a character in a tile of the fixed grid mentioned above.
  • When tiles that touch each-other make a word, then the person who placed the associated letter will get points equal to the total length (number of tiles) of the word.
  • A proper word is judged when all players accept the word through a visible voting GUI.
  • The game ends when all users have a turn and cannot find a word/extension to make, basically when all players say pass when their turn comes through a GUI.
  • Words are written in English and can only be read from left to right or top to bottom.
  • The game should have appropriate GUI for allowing appropriate controls and information to play as well as to follow it by all players.
  • All users should be able to see the same view of the game on their machines without differences or errors between them. Start and end game should be clear.
  • Users should be able to logout from the game any time which would lead to end game as well.
  • There should be a game membership pool where users come in when they login to the game application and see other potential players.
  • You are welcome to have simplifying assumptions for membership and game start management such as having at most one game at a time and not allowing people to join games at any time but only at the beginning of a game.
  • You need to let any player initiate a game and invite others who can then accept this.
  • You can get creative and implement a more complex game if you agree as a team.

Challenges -

Dealing with concurrency

  • Regardless of the technology you use, you will have to ensure that access to shared resources is properly handled and that simultaneous actions lead to a reasonable state. The game logistics leads to some application level order which you need to implement so that the game board is altered by one person at a time for example. There are other cases where you need to do more to solve conflicts.

Structuring your application and handling the system state

  • For example you can have one or more servers that communicate with each other, use a P2P or client server approach.

Dealing with networked communication

  • You have to decide when/what messages are sent across the network.
  • You may have to design an exchange protocol that establishes which messages are sent in which situation and the replies that they should generate.
  • If you use RMI, then you have to design your remote interface(s) and servants for example.

Implementing the GUI.

  • You can use any Java library for this implementation but no outside packages that implements the core features of the Distributed Application or the Game Interface.

Some Further Requirements

  • Users must provide a username when joining the game. There should be a way of uniquely identifying users, either by enforcing unique usernames or automatically generating a unique identifier and associating it with each username.
  • All the users should see the same image of the game and should have the same player capabilities and no difference between player capabilities.
  • When displaying a board, the user interface should show the usernames of other users who are currently in the system and their scores etc. You cannot assume implicit knowledge of other players or that they are sitting next to you.
  • Users may connect and disconnect at any time and the game should not crash but stop gracefully such as announce a winner of the game at that state.
  • Users should be able to play and view the game state in real time, without delays. A change on one player should be visible on others immediately from a user point of view.
  • There is no need to authenticate users that want to access the system accept a simple system login page to get names etc and then listing online members at that time.
  • Important: you are NOT allowed to use ANY code taken from an existing shared game implementation.

Homework Help/Study Tips, Others

  • Category:- Homework Help/Study Tips
  • Reference No.:- M93109504

Have any Question?


Related Questions in Homework Help/Study Tips

Review the website airmail service from the smithsonian

Review the website Airmail Service from the Smithsonian National Postal Museum that is dedicated to the history of the U.S. Air Mail Service. Go to the Airmail in America link and explore the additional tabs along the le ...

Read the article frank whittle and the race for the jet

Read the article Frank Whittle and the Race for the Jet from "Historynet" describing the historical influences of Sir Frank Whittle and his early work contributions to jet engine technologies. Prepare a presentation high ...

Overviewnow that we have had an introduction to the context

Overview Now that we have had an introduction to the context of Jesus' life and an overview of the Biblical gospels, we are now ready to take a look at the earliest gospel written about Jesus - the Gospel of Mark. In thi ...

Fitness projectstudents will design and implement a six

Fitness Project Students will design and implement a six week long fitness program for a family member, friend or co-worker. The fitness program will be based on concepts discussed in class. Students will provide justifi ...

Read grand canyon collision - the greatest commercial air

Read Grand Canyon Collision - The greatest commercial air tragedy of its day! from doney, which details the circumstances surrounding one of the most prolific aircraft accidents of all time-the June 1956 mid-air collisio ...

Qestion anti-trustprior to completing the assignment

Question: Anti-Trust Prior to completing the assignment, review Chapter 4 of your course text. You are a manager with 5 years of experience and need to write a report for senior management on how your firm can avoid the ...

Question how has the patient and affordable care act of

Question: How has the Patient and Affordable Care Act of 2010 (the "Health Care Reform Act") reshaped financial arrangements between hospitals, physicians, and other providers with Medicare making a single payment for al ...

Plate tectonicsthe learning objectives for chapter 2 and

Plate Tectonics The Learning Objectives for Chapter 2 and this web quest is to learn about and become familiar with: Plate Boundary Types Plate Boundary Interactions Plate Tectonic Map of the World Past Plate Movement an ...

Question critical case for billing amp codingcomplete the

Question: Critical Case for Billing & Coding Complete the Critical Case for Billing & Coding simulation within the LearnScape platform. You will need to create a single Microsoft Word file and save it to your computer. A ...

Review the cba provided in the resources section between

Review the CBA provided in the resources section between the Trustees of Columbia University and Local 2110 International Union of Technical, Office, and Professional Workers. Describe how this is similar to a "contract" ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As