1701ICT Creative Coding | My Assignment Tutor

Assignment 21701ICT Creative CodingSchool of ICT, Griffith UniversityTrimester 3, 2020Assignment 2 (50%) is due BEFORE Day 12 (11:59pm Thursday 14th January 2021) withdemonstrations to be held on Day 12.Page 2 of 6Instructions• Due: 11:59pm Thursday 14th January 2021.• Marks: 50% of your overall grade• Late Submissions: Late submission is allowed but a penalty applies. The penalty isdefined as the reduction of the mark allocated to the assessment item by 5% of the totalweighted mark for the assessment item, for each working day that the item is late. Aworking day is defined as Monday to Friday. Assessment items submitted more than fiveworking days after the due date will be awarded zero marks.• Extensions: You can request for an extension of time on one of two grounds:o Medicalo other (e.g., family or personal circumstances, employment-relatedcircumstances, unavoidable commitments).All requests must be made through the myGriffith portal.• Individual Work: You must complete this assignment individually.• Presentation: You must present/demonstrate your work on Day 12 to a teaching teammember. Your work will not be marked if you do not present it. Indeed, the final markswill be based on the interview results as follows:finalMark = interviewMark * submissionMarkNote: interviewMark is out of 1 based on how well the code is explained.• Other: This assignment is a mandatory pass component. You must attain 40% (20/50) tobe eligible to pass the course.OverviewThe purpose of the assignment is to assess your ability to implement simple interactions,shapes and objects using JavaScript and p5.js. Each Question should be submitted on L@G ina separate .js file (titled q1.js, q2.js etc.), but you do not need to submit html and css files. Someof the questions will require you to investigate some concepts outside of the lecture notes.Please make sure that all code that you submit is your own and is not taken/copied fromanywhere else.Page 3 of 6The Battle City GameYou will build a p5.js version of the video game Battle City. This is provided as inspiration, butthe possibilities are vast.Requirements1. Multiple ScenesThe game must involve at least 4 scenes, there must be a:• Loading / splash scene• Main menu scene• Main game scene• Leaderboard sceneYou should be able to navigate between the scenesNote: each scene needs to only be navigable by at least one other scene (with the exception ofthe loading scene, it can be a time-oriented screen)2. LoopsThe game must use at least 3 loops which are fundamental to the operation of the program.Page 4 of 63. ArraysThe game must incorporate at least 3 arrays, with at least 1 of the arrays being used to managea list of objects on the screen (such as opponents).4. InteractivityThere must exist player interaction using a keyboard. The game needs to handle at least 3keyboard keys.5. ImagesThere must be at least 1 image present in the final product (separate to sprites) that is drawn atan appropriate size.Note: It is up to you which scene you incorporate the image in.6. SpritesThe p5.play library must be incorporated with a minimum of 3 sprites used. The sprites musthave collision detection (between sprites) and must move independently. Sprites must beanimated (i.e. a moving object, changing size or color).7. Video & SoundThe game should use at least 3 sounds and 1 video.Hint: you can use sounds for shooting and video to introduce the game in the main screen.8. GUI InputAt least one type of GUI input is required (e.g. text input, slider, button). The input should affectwhat is drawn.Page 5 of 69. DataThe program needs to read in data from a JSON file where each object must have at least 3properties. This data must be presented in the sketch in one of the scenes.Hint: if your themes / ideas of the main game scene conflict with using external data, use thedata in the leaderboard scene.10. StabilityThe game must feel stable to play. Your game should not feel ‘buggy’.11. CreativityYou must produce creative work that adds complexity to your game.Examples of creative work that add complexity to your game include:• Having multiple types of wallso Some (brick) walls are breakable when shot at, and some (metal) walls are not.• Having multiple types of enemieso One may fall after hit once, the other may shoot fast but move slow.• Having multiple modes of fireo Your tank may fire slow in its unaltered state, but when picking up a ‘bonus’ blob(that is revealed after the walls are broken) the tank can fire faster.• Score & Sound Effectso Play a special sound every 5 enemies destroyed and add relevant bonus scoring.• Enemy healtho Enemies only fall after being hit 3 times. Use an array to store the health ofindividual enemies and update it upon collision detection.• Ability to change the difficulty of gameo Could be as simple as having two difficulty options that change the number oflives available, or as creative as having increased speed of incoming fire /increased toughness of opponents.You are encouraged to create your own assets (i.e. opponents or fire) on top of using publicassets from the internet.Note: the ability to creatively expand your game is highly dependent on having basicfunctionality, such as interactivity.Page 6 of 612. CodeYou must produce clean, well-written code. This encompasses indentation, meaningful namingof functions & variables, use & overuse of absolute values.The code must be well commented, including the functionality and how the requirements aremet.


Leave a Reply

Your email address will not be published. Required fields are marked *