ChessCraft is a chess sandbox with an AI computer opponent. Customise chess boards, rules, and pieces. Play your creations against a computer opponent, or choose from one of 60 built-in chess boards in adventure mode.
This bilingual Android app was played by over 100 kids at the Eureka Science festival 2019 in Montreal. The player launches simulated weather balloons on a 3D Earth, using real wind data from around the globe.
Coulombic is a 3D game where the player solves electromagnetism puzzles by changing electric charges. Unity3D does not have a magnetism simulator so I wrote my own.
In 2015 I had a lot of fun in my artificial intelligence class. I created an evolutionary system from scratch to evolve better and better players for the board game “Omweso”.
In January 2015 I went to a hackathon and built this "forced perspective" game using the Oculus Rift virtual reality headset.
Martian Agora is a 3D Mars colonization game. It uses real Mars terrain data, and real colonization principles. I’ve used it in high school classrooms to teach STEM concepts.
In 2013 I made my own Greek mythology card game (based on the Munchkin card game). I used Python and PIL to generate a playable deck of cards from a spreadsheet and images.
My first 3D game! I made this in a team of three for the 2013 global game jam. I did the programming, which included pathfinding, random levels, and a specialized collision detection engine.
Compooter is a calculator I designed in a circuit simulator called Logisim for a 2013 McGill course. I created my own assembly language to interact with my layout of AND/OR gates. It was just one of two submissions, among 25, to succeed completely.
This system monitors the status of a web service for a startup I worked for.
I've used many APIs including Twitter, Google Calendar, McGill university, Concordia university, Windows, and many more.
This project helps plan your McGill courses. It emails you when full courses open up. It also searches a specific semester and lists every course you're interested in, sorted by priority.