CSC71001 Assessment 2 – Page 1
Title: Practical Skills
Weighting: 15% of unit grading
Due: Monday Week 7 (16
th December 2019 at 11PM)
Your task is to create a game in Greenfoot, with three types of elements: a PLAYER object,
controlled by the player; FOOD objects that can be ‘caught’ by the player; and ENEMY objects,
that can ‘catch’ the player. If the enemy catches the player, then the game is over.
You must create a new scenario and you must choose a theme for your game that is not
crabs/worms and lobsters. All your elements should suit your theme, including the background
and the actors. The movement of the actors should ‘make sense’ as per the theme of your game.
We do not expect to see the same theme or game created by any two students – be original!
• You will create a Player class.
• At the beginning of the game, there must be one PLAYER object on the screen.
• The PLAYER must be controlled by the keyboard, and at minimum must move
automatically and have left and right turn. For example, when the left arrow key on the
keyboard is pressed, the PLAYER will turn to the left while moving forwards. When the
right arrow key is pressed, the PLAYER will turn to the right while moving forward.
• You will create one Food class.
• There must be eight FOOD objects on the screen at the beginning of the game.
• Each FOOD object must have random movement on the screen – that is, it must turn in
random directions and move at a random speed. The food must be able to be caught by
• When the FOOD is caught by the PLAYER, it should be removed from the screen.
• Later in the Portfolio, you will use the Food class to create different types of Food objects
so you will need to think about the theme for your food carefully.
CSC71001 Assessment 2 – Page 2
• You will create an Enemy class.
• There must be at least one ENEMY object on screen at the beginning of the game.
• Each ENEMY must at minimum, move at a constant speed and turn in random directions
and should be different than the food (cannot use the exact same code).
• If the ENEMY catches the player, the game should end.
• You should include sound effects that fit the theme of your game. These can be either inbuilt or created by you. At least one sound should be created/recorded by you in
• You should include sound for when the PLAYER is caught by the ENEMY.
• You should include sound for when the PLAYER catches or eats a FOOD.
• You should include sound for when the PLAYER wins the game.
You can choose to use the inbuilt media for backgrounds and actors OR you can choose to add
your own (see Module 4 for how to do this), or some combination of the two. If you do add your
own, make sure you use PNGs with transparency for your actors, and keep your file size small.
General criteria: playability, accuracy, careful coding, maintainability of the code, commenting,
choice of names for classes, methods (and variables if necessary).
Enhancements for extra credit:
You may like to add the following features, for extra credit:
• Use alternate keys to move the player “up”, “down”, “left” and “right”.
• Add animation when the PLAYER is moving.
• Add animation when the FOOD is moving.
• Add animation when the ENEMY is moving.
• Use your own images or images sourced from the internet. These must be referenced in
your documentation and commented in your code.
• Use your own sounds or sounds sourced from the internet. These must be referenced in
your documentation and commented in your code.
• Add a score which displays how many FOOD pieces they have caught.
CSC71001 Assessment 2 – Page 3
You must export your game as both:
• a JAR file (application); and
• a Greenfoot archive (gfar) file.
Please name your file appropriately (see below):
e.g. yourSCUusername_Ass2.jar and yourSCUusername _Ass2.gfar and
If you do not submit in the above format, your assignment will not be marked. Submit both of
these to MySCU site under the “Assignment 2” link. Make sure you Submit (not just Save) by the
due date. Your tutor will contact you if they have any questions about your submission.
Who can you get help from? Use this diagram to determine from whom you may seek help with
Encouraged Attribution Required Ask tutor Not acceptable
This assignment, which is to be completed individually, is your chance to gain an understanding of
the fundamental concepts of object-oriented programming and coding syntax on which later
learning will be based. It is important that you master these concepts yourself.
Since you are mastering fundamental skills, you are permitted to work from the examples in the
study guide or textbook, but you must acknowledge assistance from other textbooks or
classmates. In particular, you must not use online material or help from others, as this would
prevent you from mastering these concepts.
Lecturer Tutors Online
coders Classmates Private
本网站支持淘宝 支付宝 微信支付 paypal等等交易。如果不放心可以用淘宝交易！
E-mail: [email protected] 微信:itcsdx