SlideShare a Scribd company logo
1 of 24
Download to read offline
Evader Ranger
Iain Watson Smith
Quazi Hameem Mahmud
Elena Williams

6710 Introduction to Software Systems
Semester 2, 2011
Group Assignment
Us :: Our Group
Iain

Hameem

Elena

2
Us :: We’re all “Master” students
Masters
Degree

Bachelor Degree: CS
Hameem
Bachelor Degree: not CS (or IT)
Iain
Real difference?:
bit older than everyone else
Elena
doing the course, that’s all.
3
Our Project ::	
Evader Ranger
Unanimously agreed.
Not too heavy,
Not too light.
We decided to call it:
“Evader Ranger”
4
Project Roles :: Planned

The
Plan

Manager/
Chairperson
Record
Keeper
Software
librarian
Morale
Builder
5
Project Roles :: Practiced

The
Practice

Stage 1 Stage 3 Stage 5 Stage 6
Manager/
Chairperson
Record
Keeper
Software
librarian
Morale
Builder
6
Project Design :: Class Diagram

7
Project Design :: Class Diagram
Elena
Iain
Hameem

8
Project :: Management

freedcamp project management website
Track assignment due dates.
Notes for eachother about our progress.
Transfer working files.
9
Project Development :: Early Versions
Early Randomly
Generating Map
Early Abstracted
Agents

10
Project Design :: Complexity Analysis
Program runs
in constant
linear time.

Main Game Loop
Timing Tests

Individual timing tests
confirm that drawing,
stepping and repainting
the screen run in linear
time on average at
0.001 seconds for each
method.

11
Project Design :: Complexity Analysis
Confirmation that:
· drawing
· stepping
· repainting

Individual Timing Tests

run in linear time.
Average at:
0.001 seconds
(for each method)
More complete complexity
analysis submitted, this is
just the gist.
12
Project :: Abstract Class
The obvious objects to abstract were the Player,
Bandit and Accomplices as a super class: Agents.
** We noted the use of the term “agents” in the specification.
As numerous accomplices were required another class was required to generate
the multiple accomplices.

Abstract Class Diagram

13
Evader Ranger :: Game Specifications
The player (you) needs to catch a bandit that will move
away from the player at the start of the game. >> check
The bandit is slower than the player. >> check
There are accomplices that will be attracted by the
player. >> check
If an accomplice catches you, you will be stopped and
lose a few seconds before being able to recommence
pursuit. >> check
Accomplices
attracted to Player

Bandit slower than Player
14
Evader Ranger :: Game Specifications
When any of the agents (the player, the
bandit or the accomplices) starts to move in
a direction, they will accelerate in a constant
rate up to a maximum speed and decelerate
in a similar way. >> check
The player will control the player movements
and speed using up, down, left and right
arrows (e.g. the player will decelerate when
pressing an arrow in the opposite direction).
>> check
When any of the agents hits a wall, the agent
will bounce in an appropriate way (specular
reflection) maintaining the incoming speed.
>> check
Player controls the player
movements using arrows
15
Evader Ranger :: Extensions
Some possible extensions include but are not limited to:
Extensions
a) generating a different random game zone each time; >> check

16
Evader Ranger :: Extensions
Densely Populated

Sparsely Populated

Densely Populated

High Depth

17
Evader Ranger :: Extensions
Lots of Agents

Low Density
High Depth

Lots of Agents

Just Right!

18
Evader Ranger :: Extensions
Some possible extensions include but are not limited to:
Extensions
a) generating a different random game zone each time; >> check
g) adding background graphics; >> check

19
Evader Ranger :: Extensions
Some possible extensions include but are not limited to:
Extensions
a) generating a different random game zone each time; >> check
g) adding background graphics; >> check
c) if you hit an accomplice you will remain joined together and
continue to move as one entity for a few seconds; >> check
Hey, let go!

20
Evader Ranger :: Extensions
Some possible extensions include but are not limited to:
Extensions
a) generating a different random game zone each time; >> check
g) adding background graphics; >> check
c) if you hit an accomplice you will remain joined together and
continue to move as one entity for a few seconds; >> check
** b) smart agents for the bandit and/or accomplices; >> check
** d) changes to reflect the union of the momentum (vector sum) of
you and the accomplice; >> check

21
Project :: Version Control
Wanted to use GIT
version control.
Found Java support quirky -- became too
difficult (used project management tool
and email to share files).

Bitbucket (Atlassian)
introduced git support
on October 3. Awesome.
Moved project over on October 5.
Repository and Version history:
https://bitbucket.org/elequ/evaderranger/
22
Project :: Final Version!

23
Project :: Credits
Materials/Resources Used
All images/graphics are the property of the project contributors or are licensed under free
to Share and Remix with attribution (per below) licence.
underwater:
http://www.flickr.com/photos/montse/4947673563/
http://www.flickr.com/photos/mikewebkist/5589486/
http://www.flickr.com/photos/iied/3905518879/
desert:
http://www.flickr.com/photos/aigle_dore/5952296478/
http://www.flickr.com/photos/40233040@N02/4406011602/
http://www.flickr.com/photos/lithuania2008/2811198035/
he-man: http://www.flickr.com/photos/designerpassport/6016616494/

Thanks to: Steve Blackburn, Eric McCreath,
Alonso Marquez and advice from Ian Wood
Special Thanks to Tutor-Extraordinaire:
Malcolm McDonald
24

More Related Content

Similar to 6710 presentation 1110211320

Requirement Engineering process on The Outer Worlds game
Requirement Engineering process on The Outer Worlds gameRequirement Engineering process on The Outer Worlds game
Requirement Engineering process on The Outer Worlds gameAmna Khalil
 
Multiplayer Networking Game
Multiplayer Networking GameMultiplayer Networking Game
Multiplayer Networking GameTanmay Krishna
 
Tracking a soccer game with BigData
Tracking a soccer game with BigDataTracking a soccer game with BigData
Tracking a soccer game with BigDataWSO2
 
Big data streams, Internet of Things, and Complex Event Processing Improve So...
Big data streams, Internet of Things, and Complex Event Processing Improve So...Big data streams, Internet of Things, and Complex Event Processing Improve So...
Big data streams, Internet of Things, and Complex Event Processing Improve So...Chris Haddad
 
Advanced #4 GPU & Animations
Advanced #4   GPU & AnimationsAdvanced #4   GPU & Animations
Advanced #4 GPU & AnimationsVitali Pekelis
 
ECS: Making the Entity Debugger - Unite LA
ECS: Making the Entity Debugger - Unite LAECS: Making the Entity Debugger - Unite LA
ECS: Making the Entity Debugger - Unite LAUnity Technologies
 
Create a Scalable and Destructible World in HITMAN 2*
Create a Scalable and Destructible World in HITMAN 2*Create a Scalable and Destructible World in HITMAN 2*
Create a Scalable and Destructible World in HITMAN 2*Intel® Software
 
Rockstar Games
Rockstar GamesRockstar Games
Rockstar GamesRae Clarke
 
Writing a Fullstack Application with Javascript - Remote media player
Writing a Fullstack Application with Javascript - Remote media playerWriting a Fullstack Application with Javascript - Remote media player
Writing a Fullstack Application with Javascript - Remote media playerTikal Knowledge
 
Making a game "Just Right" through testing and play balancing
Making a game "Just Right" through testing and play balancingMaking a game "Just Right" through testing and play balancing
Making a game "Just Right" through testing and play balancingJulio Gorgé
 
Proving correctness of a multiplayer game server
Proving correctness of a multiplayer game serverProving correctness of a multiplayer game server
Proving correctness of a multiplayer game serverIndicThreads
 
Technical and Testing Challenges: Using the "Protect The Square" Game
Technical and Testing Challenges: Using the "Protect The Square" GameTechnical and Testing Challenges: Using the "Protect The Square" Game
Technical and Testing Challenges: Using the "Protect The Square" GameAlan Richardson
 
Creating Dragon City for Mobile
Creating Dragon City for MobileCreating Dragon City for Mobile
Creating Dragon City for MobileSocial Point
 
Programming Language Final PPT
Programming Language Final PPTProgramming Language Final PPT
Programming Language Final PPTMatthew Chang
 
Capstone Project Final Presentation
Capstone Project Final PresentationCapstone Project Final Presentation
Capstone Project Final PresentationMatthew Chang
 
06. Game Architecture
06. Game Architecture06. Game Architecture
06. Game ArchitectureAmin Babadi
 
Supersize your production pipe enjmin 2013 v1.1 hd
Supersize your production pipe    enjmin 2013 v1.1 hdSupersize your production pipe    enjmin 2013 v1.1 hd
Supersize your production pipe enjmin 2013 v1.1 hdslantsixgames
 
Play framework - Bristol Java meetup
Play framework - Bristol Java meetupPlay framework - Bristol Java meetup
Play framework - Bristol Java meetupRobin Warren
 

Similar to 6710 presentation 1110211320 (20)

Requirement Engineering process on The Outer Worlds game
Requirement Engineering process on The Outer Worlds gameRequirement Engineering process on The Outer Worlds game
Requirement Engineering process on The Outer Worlds game
 
Multiplayer Networking Game
Multiplayer Networking GameMultiplayer Networking Game
Multiplayer Networking Game
 
Tracking a soccer game with BigData
Tracking a soccer game with BigDataTracking a soccer game with BigData
Tracking a soccer game with BigData
 
Big data streams, Internet of Things, and Complex Event Processing Improve So...
Big data streams, Internet of Things, and Complex Event Processing Improve So...Big data streams, Internet of Things, and Complex Event Processing Improve So...
Big data streams, Internet of Things, and Complex Event Processing Improve So...
 
Advanced #4 GPU & Animations
Advanced #4   GPU & AnimationsAdvanced #4   GPU & Animations
Advanced #4 GPU & Animations
 
ECS: Making the Entity Debugger - Unite LA
ECS: Making the Entity Debugger - Unite LAECS: Making the Entity Debugger - Unite LA
ECS: Making the Entity Debugger - Unite LA
 
Create a Scalable and Destructible World in HITMAN 2*
Create a Scalable and Destructible World in HITMAN 2*Create a Scalable and Destructible World in HITMAN 2*
Create a Scalable and Destructible World in HITMAN 2*
 
Unity workshop
Unity workshopUnity workshop
Unity workshop
 
Unity
UnityUnity
Unity
 
Rockstar Games
Rockstar GamesRockstar Games
Rockstar Games
 
Writing a Fullstack Application with Javascript - Remote media player
Writing a Fullstack Application with Javascript - Remote media playerWriting a Fullstack Application with Javascript - Remote media player
Writing a Fullstack Application with Javascript - Remote media player
 
Making a game "Just Right" through testing and play balancing
Making a game "Just Right" through testing and play balancingMaking a game "Just Right" through testing and play balancing
Making a game "Just Right" through testing and play balancing
 
Proving correctness of a multiplayer game server
Proving correctness of a multiplayer game serverProving correctness of a multiplayer game server
Proving correctness of a multiplayer game server
 
Technical and Testing Challenges: Using the "Protect The Square" Game
Technical and Testing Challenges: Using the "Protect The Square" GameTechnical and Testing Challenges: Using the "Protect The Square" Game
Technical and Testing Challenges: Using the "Protect The Square" Game
 
Creating Dragon City for Mobile
Creating Dragon City for MobileCreating Dragon City for Mobile
Creating Dragon City for Mobile
 
Programming Language Final PPT
Programming Language Final PPTProgramming Language Final PPT
Programming Language Final PPT
 
Capstone Project Final Presentation
Capstone Project Final PresentationCapstone Project Final Presentation
Capstone Project Final Presentation
 
06. Game Architecture
06. Game Architecture06. Game Architecture
06. Game Architecture
 
Supersize your production pipe enjmin 2013 v1.1 hd
Supersize your production pipe    enjmin 2013 v1.1 hdSupersize your production pipe    enjmin 2013 v1.1 hd
Supersize your production pipe enjmin 2013 v1.1 hd
 
Play framework - Bristol Java meetup
Play framework - Bristol Java meetupPlay framework - Bristol Java meetup
Play framework - Bristol Java meetup
 

Recently uploaded

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 

Recently uploaded (20)

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

6710 presentation 1110211320

  • 1. Evader Ranger Iain Watson Smith Quazi Hameem Mahmud Elena Williams 6710 Introduction to Software Systems Semester 2, 2011 Group Assignment
  • 2. Us :: Our Group Iain Hameem Elena 2
  • 3. Us :: We’re all “Master” students Masters Degree Bachelor Degree: CS Hameem Bachelor Degree: not CS (or IT) Iain Real difference?: bit older than everyone else Elena doing the course, that’s all. 3
  • 4. Our Project :: Evader Ranger Unanimously agreed. Not too heavy, Not too light. We decided to call it: “Evader Ranger” 4
  • 5. Project Roles :: Planned The Plan Manager/ Chairperson Record Keeper Software librarian Morale Builder 5
  • 6. Project Roles :: Practiced The Practice Stage 1 Stage 3 Stage 5 Stage 6 Manager/ Chairperson Record Keeper Software librarian Morale Builder 6
  • 7. Project Design :: Class Diagram 7
  • 8. Project Design :: Class Diagram Elena Iain Hameem 8
  • 9. Project :: Management freedcamp project management website Track assignment due dates. Notes for eachother about our progress. Transfer working files. 9
  • 10. Project Development :: Early Versions Early Randomly Generating Map Early Abstracted Agents 10
  • 11. Project Design :: Complexity Analysis Program runs in constant linear time. Main Game Loop Timing Tests Individual timing tests confirm that drawing, stepping and repainting the screen run in linear time on average at 0.001 seconds for each method. 11
  • 12. Project Design :: Complexity Analysis Confirmation that: · drawing · stepping · repainting Individual Timing Tests run in linear time. Average at: 0.001 seconds (for each method) More complete complexity analysis submitted, this is just the gist. 12
  • 13. Project :: Abstract Class The obvious objects to abstract were the Player, Bandit and Accomplices as a super class: Agents. ** We noted the use of the term “agents” in the specification. As numerous accomplices were required another class was required to generate the multiple accomplices. Abstract Class Diagram 13
  • 14. Evader Ranger :: Game Specifications The player (you) needs to catch a bandit that will move away from the player at the start of the game. >> check The bandit is slower than the player. >> check There are accomplices that will be attracted by the player. >> check If an accomplice catches you, you will be stopped and lose a few seconds before being able to recommence pursuit. >> check Accomplices attracted to Player Bandit slower than Player 14
  • 15. Evader Ranger :: Game Specifications When any of the agents (the player, the bandit or the accomplices) starts to move in a direction, they will accelerate in a constant rate up to a maximum speed and decelerate in a similar way. >> check The player will control the player movements and speed using up, down, left and right arrows (e.g. the player will decelerate when pressing an arrow in the opposite direction). >> check When any of the agents hits a wall, the agent will bounce in an appropriate way (specular reflection) maintaining the incoming speed. >> check Player controls the player movements using arrows 15
  • 16. Evader Ranger :: Extensions Some possible extensions include but are not limited to: Extensions a) generating a different random game zone each time; >> check 16
  • 17. Evader Ranger :: Extensions Densely Populated Sparsely Populated Densely Populated High Depth 17
  • 18. Evader Ranger :: Extensions Lots of Agents Low Density High Depth Lots of Agents Just Right! 18
  • 19. Evader Ranger :: Extensions Some possible extensions include but are not limited to: Extensions a) generating a different random game zone each time; >> check g) adding background graphics; >> check 19
  • 20. Evader Ranger :: Extensions Some possible extensions include but are not limited to: Extensions a) generating a different random game zone each time; >> check g) adding background graphics; >> check c) if you hit an accomplice you will remain joined together and continue to move as one entity for a few seconds; >> check Hey, let go! 20
  • 21. Evader Ranger :: Extensions Some possible extensions include but are not limited to: Extensions a) generating a different random game zone each time; >> check g) adding background graphics; >> check c) if you hit an accomplice you will remain joined together and continue to move as one entity for a few seconds; >> check ** b) smart agents for the bandit and/or accomplices; >> check ** d) changes to reflect the union of the momentum (vector sum) of you and the accomplice; >> check 21
  • 22. Project :: Version Control Wanted to use GIT version control. Found Java support quirky -- became too difficult (used project management tool and email to share files). Bitbucket (Atlassian) introduced git support on October 3. Awesome. Moved project over on October 5. Repository and Version history: https://bitbucket.org/elequ/evaderranger/ 22
  • 23. Project :: Final Version! 23
  • 24. Project :: Credits Materials/Resources Used All images/graphics are the property of the project contributors or are licensed under free to Share and Remix with attribution (per below) licence. underwater: http://www.flickr.com/photos/montse/4947673563/ http://www.flickr.com/photos/mikewebkist/5589486/ http://www.flickr.com/photos/iied/3905518879/ desert: http://www.flickr.com/photos/aigle_dore/5952296478/ http://www.flickr.com/photos/40233040@N02/4406011602/ http://www.flickr.com/photos/lithuania2008/2811198035/ he-man: http://www.flickr.com/photos/designerpassport/6016616494/ Thanks to: Steve Blackburn, Eric McCreath, Alonso Marquez and advice from Ian Wood Special Thanks to Tutor-Extraordinaire: Malcolm McDonald 24