NETWORK GAME PROGRAMMING

SHE Level 4
SCQF Credit Points 20.00
ECTS Credit Points 10.00
Module Code MHI625661
Module Leader Hamid Homatash
School School of Computing, Engineering and Built Environment
Subject Applied Computer Games
Trimester
  • A (September start)

Pre-Requisite Knowledge

Games Programming 2 or equivalent.

Summary of Content

This module focuses on developing the core principles of computer networks when applied to the development of a real-time networked computer game. The student will investigate, develop and evaluate various techniques used to implement real-time networked computer games. The student will also gain an understanding of security techniques employed in networked computer games and common integrated services used in networked computer games.

Syllabus

- Networking: Client and Server Architecture; Peer to Peer Architecture, Hybrid Network Architectures; Multi-Server; Network Protocols; Network Sessions. - Review of networked computer games: in depth look of performance issues, work distribution between clients and hosts, and functionality. - Real-time networking: Data structures for efficient packets of data; Abstraction of necessary data versus visual data; Distribution of work for efficiency; Prediction techniques such as dead reckoning algorithms and smoothing; Latency mitigation techniques. - Security: Overview of security techniques; How to apply basic security measures to networked games. - Other networking services: Matchmaking; Leaderboards; Messaging; External services such as friends lists and social media APIs.

Learning Outcomes

On successful completion of this module the student should be able to:1. Describe and evaluate network architectures and protocols for use in games development.2. Assess and apply development methodologies for networked computer games.3. Assess and critically evaluate methods for dealing with the unpredictability of network conditions.4. Describe common security problems in networked computer games, and apply basic security measures and best practices mitigate security issues.5. Design, develop and critically evaluate a real-time networked computer game.

Teaching / Learning Strategy

The University 'Strategy for Learning' documentation has informed the learning and teaching strategy for this module. The module material will be introduced through lectures, while practical exercises, based on the lecture material, will be given to students for their laboratory sessions. Tutorials will be used to help explain and elaborate on both the lecture material and the laboratory exercises. Full use will be made of GCU Learn to provide Lecture-based and related study materials, along with sample solutions of Tutorial and Laboratory exercises, thus encouraging the development of independent learning and allowing self-reflective feedback on student performance. Staff-based feedback on student performance for submitted work will be provided in line with the University feedback policy, with summative feedback and grades on the coursework assessment utilising GCU Learn. The additional interactive discussion features of GCU Learn will be utilised, as appropriate to the module, to stimulate independent and flexible student learning out with scheduled class time.

Indicative Reading

- Davis, S. (2008). Protecting Games: A Security Handbook for Game Developers and Publishers. Cengage Learning. ISBN-13: 978-1584506706. - Glazer, J. and Madhav, S. (2015). Multiplayer Game Programming: Architecting Networked Games. Addison-Wesley Professional. ISBN-13: 978-0134034300. - No Bugs' Hare. (2017). Development and Deployment of Multiplayer Online Games, Vol. I: GDD, Authoritative Servers, Communications. IT Hare. ISBN-13: 978-3903213050.

Transferrable Skills

By the end of this module students will have gained competence in the following key areas: D1 Specialist knowledge and application D2 Critical thinking and problem solving D3 Critical analysis D5 Numeracy D7 Computer literacy D8 Self confidence, self discipline & self reliance (independent working) D10 Creativity, innovation & independent thinking D12 Appreciating and desiring the need for continuing professional development D15 Ability to prioritise tasks and time management

Module Structure

Activity Total Hours
Practicals (FT) 24.00
Tutorials (FT) 12.00
Independent Learning (FT) 128.00
Assessment (FT) 24.00
Lectures (FT) 12.00

Assessment Methods

Component Duration Weighting Threshold Description
Course Work 01 n/a 60.00 n/a Practical based Assignment
Exam 01 2.00 40.00 n/a Written examination