Text version | Website feedback | Campus Portal | Campus email: Hull / Scarborough

MSc in Games Programming

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