Online Playable 3D ten pin bowling game C++ -- 2

Job ID: 32769139

Budget: £10 – £60 GBP

1) Develop a playable online 3D ten pin bowling game with rules similar to a physical ten pin
bowling game that can be played by a good number of online players, with potential to scale up
for massive online players
(2) Write a formal report covering the development details of the game, and your insights on the
challenges, solutions, programming languages and skills regarding large-scale programming
issues
The Playable Online Game
Similarly to the C++ classes Ball, Table, Cushion and Players
1. Lanes
A lane shows the area for two players to play the game with certain layouts. The online game
will have multiple tracks or courses allowing multiple players to pair with and play at the
same time. This means that a lane class should be designed and implemented, and your game
should support large number of lanes, at least 5 lanes for demonstration.
2. Balls and pins
Add programmatic ball and pin classes to the lanes. This will require the design and
implementation of new classes to support the attributes and functionality of a ball/pin. You
will then be able to add ball/pin objects to the lanes, implement a method for detecting a
ball/pin’s collisions and positions, and construct a system for managing balls/pins/scores.
Typically, there are one object ball plus ten pins for a lane. Your game should allow 2
players playing in each lane.
3. Players and Scores
You should design and implement a ten pin bowling game to accommodate a few players at
the same time. This does not need to follow exactly standard ten pin bowling game rules, and
may be quite simple. However, it should be turn-based, and players should score points.
Again, you should think carefully about a suitable class structure to represent the players and
game rules. You should also consider how your game logic code could be extended, and
reflect this in your code design. For example, could your game be easily scaled up to support
10,000 players to play at the same time rather than just 10 players?
You should also design and implement functionality for displaying the current player(s),
players’ score(s) and ranking. You can either display the text information in the game
window (ideal case), or print text to the console window as a basic/minimal solution.
4. Multiple Computers
You should also design and implement functionality allowing game play in multiple
computers via a computer network. The scores and ranking of players, even in different
locations/computers, should be displayed and updated as well.
You should think about how to allow massive players to join the online game and implement
this to your game.
The Report
You should submit a report (1) describing your online ten pin bowling game development in
detail, (2) describing the key challenges and your solutions, if your game is re-designed for
massive online players e.g. more than one million users at the same time. The report should be
maximum 8 pages with the font size of 11pt, excluding front cover, references and appendices.
The report should clearly structured and include the following sections:
About your developed artefact
▪ The game. Please describe your game including the rules of your game, how to play the
game, and at least one snapshot of your game (approx. 0.5 page)
▪ Design and implementation. Please describe briefly your game design and the
implementation of the classes and the key functions you have used in the game, using
diagram if necessary (approx 1 page)
▪ Implementation. Please include detailed descriptions of the new classes, functions and
concepts you have implemented for each of the above 4 requirements including lane/ballpin/players-scores and multiple computers, with diagram/plots/snapshots of source code if
necessary (approx. 4 pages)