Simulation & Distributed Programming
Module Number: 08964 Title: Simulation & Distributed Programming
Lecturer: Dr David Grey
Coursework Assessment Number: 2 of 2
Title: Distributed Push Football
Method of Working: Individual
Workload Guidance: Typically, you should expect to spend between 50 and 70 hours on this assessment.
Date of publication:
Date and time for submission: 17.30 on Friday 9 May 2003
This assignment should be handed in via the Schema electronic submission system no later than the time and date shown above, unless an extension has been authorised on a Request for an Extension for an Assessment form which is available from the Office or http://www.student-admin.hull.ac.uk/Mitcircs.doc. The extension form, once authorised by the lecturer concerned, should be attached to the assignment on submission (or given to the lecturer in the case of electronic submission).
BEFORE submission, each student must complete a departmental coursework cover sheet obtainable from the departmental student intranet (http://www-msc.dcs.hull.ac.uk). This assignment is being marked by David Grey, please ensure that you complete the correct cover sheet.
Notes:
Late penalties
For work submitted late the penalty is loss of 20% marks per day. Work that is 5 or more days late will automatically be graded as FAIL, and no re-submission will be allowed. For full details, see the Department’s student handbook.
Use of Unfair Means
You are reminded of the University’s Code of Practice on the Use of Unfair Means (http://www.student-admin.hull.ac.uk/unfair.html) and that the work you submit for assessment should contain no section copied in whole or in part from any other source unless where explicitly acknowledged by means of proper citation.
Format of the Coursework Assessment Submission:
A
report / demonstration /software containing the deliverables
outlined in the Coursework Assessment specification.
ASSESSMENT STRATEGY AND ASSESSED COURSEWORK
This assignment is worth 20% of the module marks.
The overall assessment strategy is designed to evaluate the student’s achievement of the module learning outcomes, and is subdivided as follows:
ASSESSMENT STRATEGY AND LEARNING OUTCOMES
This assignment contributes towards the following module learning outcomes.
|
LO |
Learning Outcome |
Method of Assessment |
|
1 |
Demonstrate research, selection and assessment of distributed system architectures and implementation techniques.
|
report, demo, software |
|
3 |
Implement distributed applications using Microsoft .Net |
report, demo, software |
ASSESSMENT CRITERIA
|
Assessment Criteria |
Contributes to Learning Outcome |
Mark
|
| Multiplayer support |
3 |
5 |
| Dynamic pitch shape |
1,3 |
10 |
| Environment synchronization |
1,3 |
25 |
| Interactivity and playability |
1,3 |
20 |
| Architecture and load balancing |
1 |
25 |
| Message handling and scoring |
1,3 |
10 |
| Documentation |
1 |
5 |
|
|
|
|
|
|
|
|
Simulation and Distributed Programming
Assessed coursework 2 of 2 (30%)
Distributed Push Football
Aim
The aim of this assessment is to further develop the Push Football Virtual Environment developed for the first coursework assignment of this module. Single player games are missing one important element in their enjoyment, that of competing against other players. In this coursework assignment you will extend your push football virtual environment to a distributed application which will allow two to five players to compete against each other.
Learning Outcomes
During this assessment you will apply many of the techniques required to develop distributed applications. Formally, this coursework will address the following Learning Outcomes as indicated in the Module description:
1. Demonstrate research, selection and assessment of distributed system architectures and implementation techniques.
3. Implement distributed applications using Microsoft .Net
A less formal description is that you will gain and understanding and appreciation of:
-
.NET networking and remoting
-
Distributed systems design and implementation
-
Threading and concurrency
-
Timing and synchronization requirements of distributed systems
Problem Outline
The problem is to produce a multiplayer distributed version of ‘Push football’. The problem is the same as outlined in the first coursework assignment for this module with the following modifications:-
-
Two to five players may participate in the game with each player having a single bat and a goal to defend
-
The shape of the playing area will change depending upon the number of players taking part. If there are two or four players the playing area will be rectangular. A triangular playing area is required for three players and a hexagonal area for five players.
-
Each player will use a separate computer which displays their user interface and view on the game. Ideally each player should be able to customize their view of the game and choose the camera position, etc which best suits their playing style.
-
Each player will initially be assigned a score of 5. This score will be decremented by one each time the puck enters their goal. A player will be excluded from the game when their score reaches zero. The winner is the last player remaining on the table.
-
Players are not allowed to retire during a playing session.
Extensions
You may add any further additions to the game that enhance or elaborate on the distributed nature of the simulation. Your report should justify the inclusion of any additional features.
Suggested Approach
This is a reasonably large and complex problem, which will require some careful planning. You should take care to plan your work before coding, producing a detailed design of your system. DO NOT LEAVE EVERYTHING TO THE LAST MOMENT. Use the forum for this module to ask question and discuss problems with the lecturer (David Grey) and other students.
Deliverables
You will be required to produce a short report (no more than five pages) containing the following:
-
A list of implemented features (1 page)
-
Theory used; pay special attention to how you have implemented the interaction/coordination between players and the preservation of a coherent simulation state (2 pages)
-
Outline Design (1 page)
-
Conclusions and user guide (1 page)
Section lengths are for guidance only.
You will be required to electronically submit documentation, source code and an executable using the Schema submission system. It is your responsibility to ensure that all files are included and that the program will compile using Microsoft Visual Studio C++ V7. You will also be required to give a short demonstration of the software (running on multiple computers) in a laboratory session.
Tools
You should use Microsoft Visual Studio C++ V7 to produce you code. The graphics should be in OpenGL and should run under Microsoft Windows.
Marking Scheme
|
Task |
% |
Learning Outcome |
|
Multiplayer support |
5 |
3 |
|
Dynamic pitch shape |
10 |
1,3 |
|
Environment synchronization |
25 |
1,3 |
|
Interactivity and playability |
20 |
1,3 |
|
Architecture and load balancing |
25 |
1 |
|
Message handling and scoring |
10 |
1,3 |
|
Documentation |
5 |
1 |
Deadlines
All work should be completed and submitted via the Schema electronic submission system by 17:30 on Friday 9 May 2003. If you have not used the Schema system before please consult the online Schema user guide at http:// . Note that is it not necessary to manually zip all files before submission; Schema automatically does this for you. You should note that it is possible to make as many submissions as you like before the deadline date. Your most recent submission at the deadline is the one that is marked but you should be aware that if you make a new submission it completely replaces any previous submission. If you submit your solution and find that you have accidentally omitted a file you will need to resubmit all files to rectify the problem.
Sub heading
Main text could go here blah blah balhMain text could go here blah blah balhMain text could go here blah blah balhMain text could go here blah blah balhMain text could go here blah blah balh
