Skip to content

Completed computerized version of the game PipeLayer where the user can compete against another human, an Artificial Intelligence agent or watch two agents play each other.

Notifications You must be signed in to change notification settings

lamastd1/PipelayerAI

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PipeLayer Game with Artificial Intelligence
Summer Martin, Lalima Bhola, Dom Lamastra

ABOUT GAME
Pipelayer is a two player game where each player creates lines using different shaped icons. 
The game is played with two grids of icons that are slightly offset from one another. One 
player utilizes the circles and the other uses the squares. The players take turns moving 
by connecting two of their respective icons to an adjacent icon. A player can only connect 
icons that are adjacent horizontally or vertically and also only icons of their own shape. 
No move may draw across another move. To win, a player must make a continuous connection 
from one side of the board to the other in the long direction for their color of dots. The 
player with the circles wins if they create a continuous vertical line from the top of the 
game board to the bottom, while the player with the squares wins if they make a continuous 
line from the left to the right.

OUR FILES

In Web Folder
index: pertains to the game Menu
instructions: pertains to the instructions page
pipelayer: pertains to the human vs human game
random: pertains to the human vs random agent game
heurisitc: pertains to the human vs heuristic agent game
automatic: pertains to the random agent vs heuristic agent game
optimal: pertains to the heurisitc vs heurisitc game
player1win: pertains to the screen that appears when the first player wins
player2win: pertains to the screen that appears when the second player wins

playGame: pertains to the code used to determine the winner and run the heuristic agent

DataGeneration Folder: pertains to running 500 games for both Randon vs Heuristic and 
Heuristic vs Heuristc and aquiring relevant data about the random and heuristic agent


HOW TO RUN

Installation:
You will need to have Python installed.
Make sure you also have numpy and eel for python installed.
> pip3 install eel
> pip3 install numpy

Run the program with the following command:
> python3 playGame.py


DATA GENERATION

Make sure you have matplotlib installed:
> pip3 install matplotlib

Run the data script with the following command:
> bash ./run_demo.sh
If your permission is denied try:
> chmod 700 run_demo.sh


MORE ABOUT THIS PROJECT

Our project goal is to develop a computerized version of the game Pipelayer where the user 
competes against an Artificially Intelligent agent. Project motivation stems from the lack 
of previous works related to this specific game. As our project's completion, December 2021, 
there us no other computerized version of this game.

Please see our final project report for more information about this project, motivation and results.

About

Completed computerized version of the game PipeLayer where the user can compete against another human, an Artificial Intelligence agent or watch two agents play each other.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 51.9%
  • Python 35.7%
  • HTML 8.7%
  • CSS 3.2%
  • Shell 0.5%