The classic game of Tic-Tac-Toe where you can play with your friend or a computer! This project was created in Unity and scripts were created in C#.
A link to a playthrough can be viewed here!
Download the repository as a .zip file by going to "Clone or download" near the top right of the page. Once unzipped, go to the Builds folder and there will be both a Mac or a Windows version of the application.
As mentioned before, you must download the repository. Once you unzip it, just navigate to the "Builds" folder and double-click "Mac-FrancosTicTacToe" and you'll be ready to go!
Still need to figure out how to build :' (
The project was originally going to stop after I made a working game, but I thought why not add some more?
Here's a list of some of the things I created after making the basic game functionality. At the end of this section are improvements I could make if I pick this project back up again.
- Hard(Implements a MinMax Algorithm and Alpha Beta Pruning to control AI that either wins or ties (never loses))
- Easy(Picks random square)
- Background Music
- SFX (Clicking)
- Menus (a lot)
- Main menu
- Options
- Opponent Picking
- AI Difficulty
- Volume Sliders (Implementing Unity's Audio Mixers)
If I pick up this project again, here's a list of some of the things I'd improve on.
- Better UI (could look prettier)
- Scene transitions
- Another intro screen
- More SFX (victory/lose noise)
- AI
- Allow Player X to be an AI (functionality added already)
- AI vs AI
Basic Functionality - InfoGamer
Majority of the base functionality was created with the help of InfoGamer and their videos walking through creating a basic tic-tac-toe UI
Menu and Volume Control - Brackeys
The design of the menu (although very generic) was inspired by Brackey's videos.
Music - Club Penguin
The background music comes from Club Penguin OST - Coffee Shop
AI(MinMax Algorithm) - Paul N. Hilfinger
The MinMax Algorithm with Alpha-Beta Pruning code was heavily inspired by code I wrote for one of my courses in UC Berkeley, Professor Hilfinger's CS61B
This project was a great introduction to C#, Unity, and game developing in general! Now that I finished my project, I realize not only how doable making a game is, but how hard it is! For such a simple game like tic-tac-toe took a bunch of days creating and improving. I definitely wish I planned all the features I was going to add beforehand so I wouldn't have had to constantly go back and change things. And to think this is a game with no movement. After watching tons of videos on Unity and game developing, especially when I got distracted watching how to create Flappy Bird and parallax effect backgrounds, I definitely want to learn and make some more!
Also I'll definitely use branches next time!