Connect 4 gamne
€30-250 EUR
S-au achitat serviciile după ce au fost prestate
Connect Four game, is a two-player connection game
in which the players first choose a color and then take turns dropping colored discs from the
top into a nine-column, six-row vertically suspended grid. The pieces fall straight down,
occupying the next available space within the column. The objective of the game is to be the
first to form a horizontal, vertical, or diagonal line of five of one's own discs.
Using a client-server architecture, implement a plain text version of the game using any
language (e.g. Java, Node.js, etc) where:
• The server application holds the state and business logic of the game, receiving the
movements from the players and deciding whether a player has won, or the game is
over. The state of the game, and who’s turn it is, will be returned to the client upon
request. The communication between the clients and the server should be over
HTTP.
• The server, upon start, waits for the two players to connect. If one of the players
disconnects, the game is over.
• The client prompts the player to enter her name upon start, and displays whether it’s
waiting for a 2nd player, or the game can start.
• On each turn, the client displays the state of the board and prompts the
corresponding player for input or displays that it’s waiting for the other player’s input
(see example below).
• The client receives the input from the player from the standard input (stdin).
• The client displays when the game is over, and the name of the winner.
The following is an example of what the client may display to the player, in this case
John’s client is waiting for input to place his disc during his turn:
[ ][ ][ ][ ][ ][ ][ ][ ][ ]
[ ][ ][ ][ ][ ][ ][ ][ ][ ]
[ ][ ][ ][ ][ ][ ][ ][ ][ ]
[ ][ ][ ][o][ ][o][ ][ ][ ]
[ ][ ][x][x][ ][x][ ][o][ ]
[ ][x][o][o][o][x][x][o][x]
It’s your turn John, please enter column (1-9):
• Aside from what is outlined above, you have free reign in any design decisions and
implementation details, but don’t forget test coverage is important to us.
Send the code in a gist, dropbox or encrypted zip file to us and state any
assumptions or simplifications that you made.
ID Proiect: #30173846
Detalii despre proiect
13 freelanceri plasează o ofertă medie de 437€ pentru proiect
Hello, How are you today? I have read your job description. I am familiar in Javascript, Node.js and Web Socket. So I think this job is an ideal match with my skill and experience and I am sure you will be satisfied wi Mai multe
Hello I can do that for you. I can show you simillar project done , In client server architecture using TCP networking. Where player can play over TCP network. If you meed assistance pls leave a reply
If you hire me, maybe your project will be my third project in freelancer.com. As you can see, my account is like a baby who has just taken the first step. So this project is very important to me. Because of this, I am Mai multe
This job is an ideal match for my skills and experience. I’m a self-motivated, creative developer with ten years of designing and coding experience, specialising in web development. And I have much experience in HTML Mai multe
Professional software developer with over 15 years of overall experience in software development and maintenance looking for challenge projects fit my skills. Main specialization: * developing Windows Desktop and Web Mai multe
✌ Hello Client! I have read your post carefully and I think it is good fit for me. ➤Really looking forward to discussing details in a friendly chat, when are you available to talk❓✌
Hello, I’d like to thank you for posting project. Your project is very interesting for me and your project development is same to my dream You want skills are similar to my skills and you can see my skill in my profile Mai multe
Hello. I have been working as full stack javascript developer for 7 years. Especially I am very good at the all kind of javascript frameworks such as Node, Express, Nest, Angular, React, Vue, Meteor, Stencil. If you wa Mai multe
Hello. Write for a detailed discussion of your task. Здравствуйте. Напишите для подробного обсуждения вашей задачи.