🌁

About this Project

Introduction

Our project implements the game of the set with HTML, CSS, and javascript. A few projects back, we also implemented the game in Ruby, which has many similarities with this project. To view details of Set in Ruby, please visit https://unniitec.nicholastec.com/proj2/. Both projects provide a graphical user interface. But we believe our project in javascript has several advantages.

First of all, the game becomes much easier to access. Users can enter the link https://unniitec.nicholastec.com/proj5/set/ into the browser and play the game under different modes. No downloading or installation is needed.

Secondly, the game in this project provides several difficulty levels. Users can adjust the level before starting the game. Each mode corresponds to a different amount of time. In easy mode, the game sets a 200 sec limit for the user. And medium and hard modes would shorten the time limit accordingly. There is also a test mode, for more info, please visit

Furthermore, the game provides hints for players. When the player clicks the button hint, it tells one of the cards in one of the sets. When there is no set on the current deck, the games add three more cards.

How to Play

Before game start, choose difficulty level at top right corner. Easy is default mod.

After start,

  1. Click SET if you find a set, then choose 3 cards, you could unselect the card by click twice.
  1. Click Hint if you need a hint, the expected card will be surrounded by red border. Click up to 3 times of hint button to see 3 cards that can make up a set. Click SET and choose them. Hint can only be clicked before you click SET.
  1. Click END if you want to exit or restart.

Malicious user actions

There are three buttons (START, SET, HINT) and one dropdown menu. User will not be able to crash the game even perform malicious actions.

For example, before game start, cards cannot be clicked .

After game start, difficulty level cannot be selected. (it can only be selected before start)