Write My Paper Button

WhatsApp Widget

This assignment is designed to prove that you can manipulate variables, use functions and look after a very simple script without turning it into an incomprehensible mess.

Assignment Task

Context

This assignment is designed to prove that you can manipulate variables, use functions and look after a very simple script without turning it into an incomprehensible mess. It'll also test your ability to code creatively AND work directly to spec.

You are to create a stat and level management system for a simple text-based program; this can be purely done through the use of debug logs to your console.

You're only just learning how to code, so this game won't be very complex or have exciting graphics- however we can hopefully use it to prove some code basics and have some fun!

Brief

To a large extent, games are driven by numbers and the manipulation of these numbers. Making use of variables, functions and control flow is core to these manipulations, and is essential for building game functionality. Both analogue and video game designs and development make use of the manipulation of numbers. Developers continuously tweak these numbers to adjust the feel of their games to make them align with the design intent.

For example, the accumulation of XP (eXperience Points) in order to level up and allocate points to stats and skills, is entirely about number manipulation and balance. 

Using these numbers to your advantage may already be familiar to you as a player, but we need to learn how we design and engineer these numbers as developers because many, many things happen behind the curtain, where players cannot see. 

Project Goals: 

You must create a C# Unity project that demonstrates the fundamental concepts of programming this includes demonstration and understanding of the following: 

  • Flowchart logic. 
  • Pseudo Code. 
  • Game Engine functionality such as attaching scripts to objects, using the console to debug messages, responding to input and outputting to UI. 
  • Code naming conventions such as Pascal Casing for script names, camelCasing for Variables. 
  • Commenting your code. 
  • Debugging your code.
  • Creating variables and assigning values. 
  • Assigning and using random values. 
  • If statements and conditional logic. 
  • Using operators such as ( (), + , - , / , * , = , ==). 
  • Data conversions such as a float to an int. 
  • A basic win/loss condition that ends/restarts the game (i.e. game loop). 
  • Evaluating your processes and implementation of your project.