代写CMP-7000A – Applications Programming代写Python编程

Module: CMP-7000A - Applications Programming

Assignment: R002-Game Coding and Testing Presentation

Learning outcomes

•     You will demonstrate competence in using Python programming skills by creating and coding your own personal game application.

•     You will demonstrate your understanding of the need for software testing

using existing techniques, to ensure your coded application is usable and works effectively.

•     You will professionally demonstrate the knowledge you have gained through presentations and demonstrations, based on standard industry requirements for software development applications.

Specification

Overview

Individually, you are required to manually code and test a small command line game using the Python programming language. This game must be coded to

resemble a Multi-user (not multi-player) adventure Dungeon (MUD) game. This

R002 reassessment game must be a different scenario to the one you coded in assignment 002, during the Autumn 2022-2023 semester, and you must not

reuse any code from your original submission.

To evidence the learning objectives, you must produce working Python game code

(entirely coded by yourself with no content from the internet, other sources, a

previous course, or your 002 assignment). You also need to deliver a recorded

maximum 10-minute MP4 (max 720P) video to evidence your game working from both a gamer and code perspective You will need to evidence system unit testing and think aloud user testing, by showing and discussing completed test plans and code.

Description

Individually, you should code a new R002 unique command-line MUD game, using Python coding techniques. You must not use any code found on the internet

(including GitHub, YouTube, ChatGPT, etc.), or any other external sources,

including any previous courses you have taken, or from assignment 002; you

must code this new unique game entirely by yourself for this R002 reassessment.

If you are not sure if your game is fully compliant with MUD game specification

requirements, please email the MO Debbie Taylor on Debbie.taylor@uea.ac.ukto check.

The game should resemble a Multi-User adventure Dungeon game (also known as MUD game). This needs to be a multi-user game, not multi-player, so you should    enable a single person play the game and collect information as they move

throughout the game. You should then evidence that several different single gamers have played, by producing a leader board at the end.

There are multiple examples of these types of games available on the internet,

however Figure 1 below shows a basic example of one process a gamer should see within a MUD game:

Figure 1 - Example MUD Game, showing a gamer starting a game

Tasks

The following shows the tasks you need to code for this R002 reassessment, as well as ideas for extra processes:

Input and output:

You will need to code input and output of textual information within your game, via the terminal console – there must not be any graphical user interface created as this is outside the scope of the module.

The input and output information will require you to give options to the gamer to choose from, and then receive input choices from them in return.

Consider consistency of output and input, potential reuse of classes and functions, and what data/questions etc. You need to pass to and from the gamer.

Character creation:

Whenever a new game begins the gamer should be prompted for a series of character creation options. This will require you to manually code a class or function  that allows the gamer to customise the character at the start, with multiple options for the gamer to choose from.

You will need to be able to access these option choices throughout the game. For example, if a gamer chooses a name at the start of the game you must code the game to use this multiple times throughout the game, not just at the start.

Interaction:

Manually code classes and functions that allow the gamer to interact with your uniquely created game world. This could be moving around the game world itself, accessing and receiving information about locations, weapons, items found, health points gained or lost, etc.

For example, if a gamer enters a location, they must be able to receive output information about that location and any potential items available to pick up. They should then be given options on how to pick up the item(s) if they choose to do so.

Saving/loading progress:

Manually code classes or functions that allow you to save and load progress during the game. The progress information must be saved to a text file, CSV or JSON file.

As your game progresses you should store the players location, items collected and general progress. This will enable the gamer to exit the game at any point and reload later at the saved point.

You will also need to save the gamer’s score at the end of the game (win or lose) and output this information to a saved leader board, with the highest score at the top, and lowest at the bottom. The leader board should be available to view on both the console terminal and via a text file, CSV or JSON file.

Testing:

You are expected to perform. and discuss white box system unit testing using Python unittest, along with think aloud user testing.

Ensure both are recorded on a valid test plans. Blank test plans are available in the week 10 Software Testing folder on Blackboard.

These test plans should then be included and discussed during the video demonstration.

Project File Structure

You need to store scripts, resources and tests in separate folders. You should also store your saved text pictures in separate classes or txt. files and use functions to load them, not just save them in the main program. See below example:

Additional areas to consider for your game coding:

Extra marks are available for coding additional functionality specific to your game. A few example ideas given below should prompt you to think about areas to develop, so that you produce a unique piece of work. You will need to justify these decisions  during your video.

Visualisations:

Consider creating textual pictures and then loading the pictures at relevant points within the game world. For example, if the gamer sees a castle appear before them, you could call the picture class or function and output a visual textual picture of the castle to the console terminal.

You also might want to consider different colours for input and output text.

Equipment:

You might want to consider customising what your character is wearing or using at different points within the game. What equipment can be found within the game and where? How can specific equipment collection impact the potential ability to add or deduct health points, etc.?

Inventory:

Do you want to allow users to collect specific items or objects that can increase health or power scores, etc.? You might want to design a system to   store these items so that players can see what items they have collected and   interact with them. You may wish to only deal with unique items; however, you may want to consider how to handle multiples of the same item.

Help option:

What happens if a gamer gets stuck and doesn’t know what to input or what options are available for them to select?

To evidence the above R002 reassessment code and testing processes, you must record a maximum 10-minute MP4 (max 720P) working video. This must show the code working from both a gamer user perspective, the code itself, testing (both unit and user think aloud) as well as the test plans. The working video will need to be uploaded to oneDrive and a link sent to the MO Debbie Taylor

([email protected]). The code and test plans must be uploaded, via a zipped folder, to Blackboard.

If the video exceeds 10 minutes any information discussed after this time will not be   marked. You must not alter the playback speed of the video to remain under the 10-minute limit.

You must not use any code found on the internet (including GitHub, YouTube, ChatGPT, etc.), from a previous course you have taken, or your 002 assignment; you must code this game entirely by yourself specifically for this R002 reassessment, to achieve the learning objectives.

Relationship to formative assessment

The skills needed to complete this assignment relate to the lectures and labs from week 3 onwards. You can also use the feedback provided for assignment 002.

Deliverables

You must upload a .zip file to the R002 submission point on Blackboard, containing  all the source files for your python code and copies of your unit and user think aloud test plans.

The maximum 10-minute single MP4 video (max 720P) file must be uploaded to OneDrive and a link must be emailed to the MO Debbie Taylor

(Debbie.taylor@uea.ac.uk).

If the video exceeds 10 minutes any information after this will not be marked. You

must not alter the playback speed of the video to remain under the 10-minute limit.   The zip file must use the following naming format of studentID.zip e.g.10000000.zip.

Please ensure you upload a working video, as you will not be asked to provide another copy if the uploaded version does not play when being marked.

Resources

Lecture slides and lab sessions from week 3 onwards, are highly relevant to this work. You can also use the feedback provided for assignment 002.

You can use any video editing software you choose but the upload must include a single video file for the entire presentation from start to finish, not a recording per

slide. You can show awatermark across the video, but only if this does not stop the markers being able to view your working system and code.

If you have questions, please email the MO Debbie Taylor on Debbie.taylor@uea.ac.uk.



热门主题

课程名

mktg2509 csci 2600 38170 lng302 csse3010 phas3226 77938 arch1162 engn4536/engn6536 acx5903 comp151101 phl245 cse12 comp9312 stat3016/6016 phas0038 comp2140 6qqmb312 xjco3011 rest0005 ematm0051 5qqmn219 lubs5062m eee8155 cege0100 eap033 artd1109 mat246 etc3430 ecmm462 mis102 inft6800 ddes9903 comp6521 comp9517 comp3331/9331 comp4337 comp6008 comp9414 bu.231.790.81 man00150m csb352h math1041 eengm4100 isys1002 08 6057cem mktg3504 mthm036 mtrx1701 mth3241 eeee3086 cmp-7038b cmp-7000a ints4010 econ2151 infs5710 fins5516 fin3309 fins5510 gsoe9340 math2007 math2036 soee5010 mark3088 infs3605 elec9714 comp2271 ma214 comp2211 infs3604 600426 sit254 acct3091 bbt405 msin0116 com107/com113 mark5826 sit120 comp9021 eco2101 eeen40700 cs253 ece3114 ecmm447 chns3000 math377 itd102 comp9444 comp(2041|9044) econ0060 econ7230 mgt001371 ecs-323 cs6250 mgdi60012 mdia2012 comm221001 comm5000 ma1008 engl642 econ241 com333 math367 mis201 nbs-7041x meek16104 econ2003 comm1190 mbas902 comp-1027 dpst1091 comp7315 eppd1033 m06 ee3025 msci231 bb113/bbs1063 fc709 comp3425 comp9417 econ42915 cb9101 math1102e chme0017 fc307 mkt60104 5522usst litr1-uc6201.200 ee1102 cosc2803 math39512 omp9727 int2067/int5051 bsb151 mgt253 fc021 babs2202 mis2002s phya21 18-213 cege0012 mdia1002 math38032 mech5125 07 cisc102 mgx3110 cs240 11175 fin3020s eco3420 ictten622 comp9727 cpt111 de114102d mgm320h5s bafi1019 math21112 efim20036 mn-3503 fins5568 110.807 bcpm000028 info6030 bma0092 bcpm0054 math20212 ce335 cs365 cenv6141 ftec5580 math2010 ec3450 comm1170 ecmt1010 csci-ua.0480-003 econ12-200 ib3960 ectb60h3f cs247—assignment tk3163 ics3u ib3j80 comp20008 comp9334 eppd1063 acct2343 cct109 isys1055/3412 math350-real math2014 eec180 stat141b econ2101 msinm014/msing014/msing014b fit2004 comp643 bu1002 cm2030
联系我们
EMail: 99515681@qq.com
QQ: 99515681
留学生作业帮-留学生的知心伴侣!
工作时间:08:00-21:00
python代写
微信客服:codinghelp
站长地图