1. Homepage
  2. Programming
  3. XJCO1921 Programming Project Assignment 1: Project Plan Maze Game

XJCO1921 Programming Project Assignment 1: Project Plan Maze Game

Engage in a Conversation
LeedsXJCO1921Programming ProjectMaze GamePython

Programming Project XJCO1921
CourseNana.COM

Assignment 1 Project Plan CourseNana.COM

1. Assignment Guidance

In this assignment, you will be creating three assets: CourseNana.COM

  • -  An automated test script CourseNana.COM

  • -  Test data CourseNana.COM

  • -  Skeleton code based around this module plan. CourseNana.COM

    You are not expected to produce a working implementation of the program described below, and no marks or feedback will be given for implementing the program. CourseNana.COM

  • You should produce your plans and skeleton code based on the brief given below. CourseNana.COM

    Maze Game CourseNana.COM

    You are creating a basic game where players navigate through a maze. CourseNana.COM

    The maze will be loaded by the program when it begins, and the filename and dimensions will be provided on the command line: CourseNana.COM

    ./maze filename width height
    For example, ./maze maze.txt 20 43 specifies a maze with a grid of 20 columns (width) and CourseNana.COM

    43 rows (height), where elements (characters) of the maze are given in maze.txt. Mazes are made of 4 characters: CourseNana.COM

Character CourseNana.COM

Purpose CourseNana.COM

‘#’
‘ ‘ (a space) ‘S’
‘E’
CourseNana.COM

A wall which the player cannot move through A path which the player can move across The place where the player starts the maze The place where the player exits the maze CourseNana.COM

A maze has a height and a width, with a maximum of 100 and a minimum of 5.
The height and width do not have to be equal
as long as both are within the accepted range. CourseNana.COM

Within a maze, each ‘row’ and ‘column’ should be the same length – the maze should be a rectangle. CourseNana.COM

When the game loads, the player will start at the starting point ‘S’ and can move through the maze using WASD movement: CourseNana.COM

W/w Up A/a Left S/s Down D/d Right Q/q Quit CourseNana.COM

Note: There is no expectation for these to be keypress triggered; you can expect the user to enter a new line between each direction. CourseNana.COM

The player can move freely through path spaces (‘ ‘) but cannot move through walls or off the edge of the map. If they try to do so, they should receive some message telling them not to do this but should be able to continue playing the game. CourseNana.COM

The map should NOT be shown to the player every time they make a move, but they can enter ‘M’/’m’ to view an image of the map, with their current location shown by an ‘X’. CourseNana.COM

When the user reaches the exit point ‘E’, the game is over and will close. The player should be given some message stating that they have won. CourseNana.COM

Direction CourseNana.COM

2. Assessment tasks CourseNana.COM

Test Script CourseNana.COM

You will produce a test script that can be used to test this code. You need to consider the range of different potential errors that could occur in the program, paying particular attention to places where data is being inputted, such as the command line or the stdin. CourseNana.COM

You should also think about potential mistakes you might make in programming and how you will ensure that your code is working successfully for example, if a player walks into a wall, how will this be handled, and how can you test for this? You should test for success as well as failure. CourseNana.COM

You should have a minimum of 10 tests, but more would be expected to fully encapsulate the range of potential errors. CourseNana.COM

Each test should have a comment above it stating what it is testing for.
You can assume that the executable will be named
maze; you will need to consider what prints CourseNana.COM

and outputs your code will produce and check these appropriately. CourseNana.COM

You can use either a bash/Python script or a unit testing library of your choice. Your code and test script must be able to run on Linux. CourseNana.COM

Test Data CourseNana.COM

You should create some test data that you can use with your script to test the cases you have written. CourseNana.COM

This should include: CourseNana.COM

  • -  A variety of maze text files that you will use in your testing (valid and invalid) CourseNana.COM

  • -  Some input files to navigate through your test mazes CourseNana.COM

    Not only will these help you think about the kinds of errors you should be testing for in your script, but they will also make testing your code easier when you come to implement it. CourseNana.COM

    Skeleton Code CourseNana.COM

    Based on the provided brief, produce a skeleton for your code. This should include: CourseNana.COM

  • -  At least one struct definition CourseNana.COM

  • -  Function/procedure definitions CourseNana.COM

  • -  A basic outline for your main CourseNana.COM

    You do not need to write any of the functionality, but you should use comments to give a basic idea of how you think you will structure your code. CourseNana.COM

    You can see several examples on Minerva. CourseNana.COM

3. General guidance and study support CourseNana.COM

You should refer to the lab exercises and lecture notes to support you. CourseNana.COM

4. Assessment criteria and marking process CourseNana.COM

Your test script will be manually checked in order to look at your handling of: CourseNana.COM

  • -  Modular breakdown CourseNana.COM

  • -  Struct design CourseNana.COM

  • -  Basic structuring of your program CourseNana.COM

    A full breakdown is available in section 8. CourseNana.COM

    5. Presentation and referencing CourseNana.COM

    You will submit your work to Gradescope. You should organise this appropriately, for example putting all test data inside a subdirectory to make it easier to find and mark your test plan and skeleton code. CourseNana.COM

    Referencing:
    It is expected and required for you to reference any pieces of code which you adapt/borrow from. CourseNana.COM

    This is particularly important for academic integrity: if two students submit very similar code, this will be detected by Gradescope and flagged to me- if this code is similar because you both used the same webpage, documentation or generative AI prompt, then I can ignore this! If there is no reference, then you may be returned a mark of 0 and be required to attend an academic integrity meeting. CourseNana.COM

    This is also part of being a good academic; if you are building on someone else’s work, they deserve some credit. CourseNana.COM

    If you do need to reference any resources use a simple comment, for example: CourseNana.COM

    // This test is adapted from an example provided on: https://byby.dev/bash-exit-codes You should not be directly copying any code from external resources, even with a reference. CourseNana.COM

6. Submission requirements CourseNana.COM

Submit via Gradescope. CourseNana.COM

7. Academic misconduct and plagiarism CourseNana.COM

Leeds students are part of an academic community that shares ideas and develops new ones. CourseNana.COM

You need to learn how to work with others, how to interpret and present other people's ideas, and how to produce your own independent academic work. It is essential that you can distinguish between other people's work and your own, and correctly acknowledge other people's work. CourseNana.COM

All students new to the University are expected to complete an online Academic Integrity tutorial and test, and all Leeds students should ensure that they are aware of the principles of Academic integrity. CourseNana.COM

When you submit work for assessment it is expected that it will meet the University’s academic integrity standards. CourseNana.COM

If you do not understand what these standards are, or how they apply to your work, then please ask the module teaching staff for further guidance. CourseNana.COM

By submitting this assignment, you are confirming that the work is a true expression of your own work and ideas and that you have given credit to others whose work has contributed to yours. CourseNana.COM

Some simple rules to avoid academic integrity issues: CourseNana.COM

  • -  Your final submission should only include the code that you have written and the template code provided by module staff. CourseNana.COM

  • -  Don’t share your code with other students, allow other students to see your code, or release your code publically online until you have received your final grade and feedback. CourseNana.COM

  • -  Look after your code- lock your computer if you are going for a break, and if you share your laptop with another student on the module then make sure your assessment code is protected. CourseNana.COM

  • -  Always put a reference if you adapt code from online, and if you use generative AI such as ChatGPT make sure you include the prompt or series of prompts which you used. CourseNana.COM

  • -  Never copy code from online into your code always adapt it to fit your style and the rest ofthe code CourseNana.COM

  • -  If a friend is struggling, guide them to helpful resources or the module staff- showing them your code, writing their code for them, or sending them your code for them to copy are all forms of collusion and both of you will receive a penalty in line with the academic integrity policy. CourseNana.COM

8. Assessment/ marking criteria grid CourseNana.COM

Category 1st 2:1 / 2:2 Pass / 3rd Below Pass Test Script (50) CourseNana.COM

Error Handling 15 CourseNana.COM

Comprehensive testing of potential errors in program execution. CourseNana.COM

Adequate testing of errors in program execution. CourseNana.COM

Partial testing of errors in program execution. CourseNana.COM

Limited or no testing of errors. CourseNana.COM

Handling Mistakes 15 CourseNana.COM

Thorough consideration of potential programming mistakes. CourseNana.COM

Consideration of potential programming mistakes. CourseNana.COM

Basic consideration of programming mistakes. CourseNana.COM

Lack of consideration of programming mistakes. CourseNana.COM

Success and Failure Testing CourseNana.COM

15 CourseNana.COM

Comprehensive testing for both successful and unsuccessful scenarios. CourseNana.COM

Adequate testing for both success and failure. CourseNana.COM

Basic testing for success and failure. CourseNana.COM

Limited or no testing for success and failure. CourseNana.COM

Commented Test Cases CourseNana.COM

5 CourseNana.COM

Clear comments describing each test case's purpose and expectations. CourseNana.COM

Adequate comments on test cases' purposes and expectations. CourseNana.COM

Basic comments on test cases' purposes and expectations. CourseNana.COM

Lack of comments or unclear descriptions. CourseNana.COM

Test Data (20) CourseNana.COM

Variety of Maze Files 10 CourseNana.COM

Diverse maze files provided for testing. CourseNana.COM

Adequate variety of maze files. CourseNana.COM

Limited variety of maze files. CourseNana.COM

Insufficient variety of maze files. CourseNana.COM

Input Files for Navigation CourseNana.COM

10 CourseNana.COM

Comprehensive input files for navigating mazes. CourseNana.COM

Adequate input files for maze navigation. CourseNana.COM

Basic input files for maze navigation. CourseNana.COM

Lack of input files or insufficient for navigation. CourseNana.COM

Skeleton Code (30) CourseNana.COM

Struct Definition(s) 10 CourseNana.COM

Correct and appropriate struct definitions. CourseNana.COM

Accurate struct definitions. CourseNana.COM

Basic struct definitions. CourseNana.COM

Incorrect or missing struct definitions. CourseNana.COM

CourseNana.COM

Function/Procedure Definitions CourseNana.COM

10 CourseNana.COM

Clear and well- segmented function/procedure outlines. CourseNana.COM

Adequate function/procedure outlines. CourseNana.COM

Basic function/procedure outlines. CourseNana.COM

Unclear or missing function/procedure outlines. CourseNana.COM

Main Function Outline 10 CourseNana.COM

Clear logic and structure defined for the main function. CourseNana.COM

Adequate logic and structure defined for the main function. CourseNana.COM

Basic logic and structure defined for the main function. CourseNana.COM

Unclear or missing logic and structure for the main function. CourseNana.COM

Get in Touch with Our Experts

WeChat WeChat
Whatsapp WhatsApp
Leeds代写,XJCO1921代写,Programming Project代写,Maze Game代写,Python代写,Leeds代编,XJCO1921代编,Programming Project代编,Maze Game代编,Python代编,Leeds代考,XJCO1921代考,Programming Project代考,Maze Game代考,Python代考,Leedshelp,XJCO1921help,Programming Projecthelp,Maze Gamehelp,Pythonhelp,Leeds作业代写,XJCO1921作业代写,Programming Project作业代写,Maze Game作业代写,Python作业代写,Leeds编程代写,XJCO1921编程代写,Programming Project编程代写,Maze Game编程代写,Python编程代写,Leedsprogramming help,XJCO1921programming help,Programming Projectprogramming help,Maze Gameprogramming help,Pythonprogramming help,Leedsassignment help,XJCO1921assignment help,Programming Projectassignment help,Maze Gameassignment help,Pythonassignment help,Leedssolution,XJCO1921solution,Programming Projectsolution,Maze Gamesolution,Pythonsolution,