Highlights
Please ensure you read all of the assessment carefully before you start working. Your task is to write a MIPS program that implements a basic game, details of which are provided below. There are restrictions on which syscall functions you can use in your code. You are also required to write a short report detailing your approach to solving the problem.
I will test your game using the MARS simulator, specifically the one that is available through the 'SCC Lab' VM. Ensure you have tested your game on this platform before submitting.
Permitted syscalls
You are only permitted to use the following seven syscalls in your MIPS code. All other I/O and device interaction needs to be coded by hand. Note that the 'print string' syscall is only permitted for debugging purposes (see rule 1 below).
The Game
The game consists of a simple walled environment (see fig. for one such ex- ample). The player (shown as 'P' in the below example) can move around the environment using the keyboard to collect different rewards (shown as 'R' in the example).
The rules of the game are as follows:
1. The game must be presented to the user via the 'Display' device in MARS 2. The user should be able to interact with the game via the 'Keyboard" device in the lower part of the same window.
3. The user should be able to use the 'WASD keys to move the player around the environment.
4. Each collected reward should contribute 5 points to the player's score.
5. When a reward is collected, a new reward should appear in a different randomly-allocated location in the environment.
6. The score should be presented to the user at the top of the display in the form "Score: 25'.
7. If the player collides with a wall (ie. tries to move into the wall), or if the player reaches 100 points, the game should end.
8. When the game ends, the display should be cleared and a message dis- played saying "GAME OVER', along with the final score.
this is available in MARS under the Tools> Keyboard and Display MMO Simulator menu option
Game Extension
The second part of your task is to build an extension to the game. Be sure to make a copy of your implementation to part 1 (the basic game) and submit them separately so that I can test each part in isolation. The extension should be one of the following options:
1. Make the game two-player; Use the WASD keys for player 1 and the LJKL keys for player 2.
2. Give the player a speed; once the player starts moving, they should not be able to stop, only change direction.
3. Add an enemy; the enemy should move every time the player does, and should aim to prevent the player reaching the reward (colliding with the enemy is the same as with a wall).
CSCsom
This IT Computer Science has been solved by our PhD Experts at My Uni Paper.
© Copyright 2026 My Uni Papers – Student Hustle Made Hassle Free. All rights reserved.