Skip to content

Latest commit

 

History

History
130 lines (114 loc) · 6.52 KB

README.md

File metadata and controls

130 lines (114 loc) · 6.52 KB

Gotta Graduate!

Production Build and Deploy Develop Build and Deploy

Gotta Graduate! is a multiplayer co-op game where you and your friends go through the lifecycle of university avoiding the casual, nonsensical hiccups that university life brings while also trying to pass each year, with the hopes of graduating. Avoid dropping out of university and ace your exams with your classmates.
View The Game »

The project is hosted on Github Pages:

  • Production version here: https://fraser-dempster.github.io/l4-project-interactive-game/
  • Development version here: https://fraser-dempster.github.io/l4-project-interactive-game-develop/
Table of Contents
  1. About The Project
  2. How to run the code locally
  3. Contact

About the project

Level 4 individual project: Interactive experiences for public spaces using smartphone remote controllers for user interaction [HTML, JavaScript, Smartphone, HCI].

I am creating an interactive game for a new university building being opened in 2022 called the Advanced Research Centre (ARC). The game will be available to play in public, outside the ARC, on a screen facing the street. A user will scan a QR code which will connect to their mobile phone and open a controller which they can use to play the game.

Motivation of project

The motivation for this project is to explore how the use of a smartphone controller can create an interactive experience in a public context. Within this context, the users of the experience could be of any age, background, and career. This creates specific constraints that aren't present when the experience is a more typical, targeted indoor interactive experience.

The project revolves around the creation of a multiplayer game which will allow the users to interact and play with each other. It will allow for an engaging experience with no barrier of entry and hopefully let a wide audience take advantage of the experience.

Aim of project

The main aim of the project is to build an interactive game that takes advantage of the smartcontroller in a public environment. The game will allow users to scan a QR code and play the game with friends, acting as a catalyst for communication and engagement.

Initially, the project was focused on building a generic game, but as development continued, a specific focus has been placed on making the game student friendly.

Technologies

  • Phaser
    • Phaser is a 2D game framework used for making HTML5 games for desktop and mobile
  • Node.js
    • JavaScript runtime environment that allows you run JavaScript code outside of the web browser
  • Tiled
    • Tiled is a free and open source, easy to use, and flexible level editor
  • Webpack.js
    • Webpack is a free and open-source module bundler for JavaScript.
  • Figma
    • Figma is a vector graphics editor and prototyping tool which is primarily web-based, with additional offline features enabled by desktop applications for macOS and Windows.
  • GitHub Actions
    • GitHub Actions is a continuous integration and continuous development (CI/CD) platform that makes it easier to build, test, and deploy your code.
  • GitHub Pages
    • GitHub Pages is a free, static site hosting service which directly integrates with GitHub repositories.

Roadmap

  • Game map
    • Find tileset
    • Decide on map layout
    • Make graphics
    • Integrate into Phaser
  • Add sprites
    • Get spritesheet
    • Integrate spritesheet into Phaser
    • Add Phaser properties to Sprite
    • Add map collision for sprites
    • Add temporary movement with keys
    • Add health bar
    • [Not Done] Add player name
  • Round 1
    • Create items
      • Facebook
      • TikTok
      • Beer
      • Instagram
      • Youtube
      • Netflix
      • Add item collision on players and map boundary
      • Add random spawn points to items
      • Good item
    • Add countdown timer
    • Add QRCode
    • Add smartcontroller Movement
    • Add instructions before playing
    • Add START area
    • Add score screen
      • Transfer score data across
      • Create UI for screen
      • Create highscore
      • Add automatic end reload
      • Add character sprites

How to run the code locally

Pre-requisite Installs

  • Node.js is required to build and run the website.
    • Make sure Node and NPM are installed
  1. Clone the repository
    • run commmand git clone https://github.com/SmartControllerJS/GottaGraduate.git
    • Navigate to directory containing project
  2. Install dependencies
    • npm install
  3. Run the code locally
    • npm run dev
  4. Create a build if required, this step is optional
    • npm run build

Contact

LinkedIN Github Gmail