Games and Toys

This page contains my HTML5 games and toys. They were all written from scratch in JavaScript using the HTML5 canvas API. You can find some of my newer games, variously made with SDL, Godot, and Unity, on my itch.io page.

Games

These are meant for desktop browsers, though some may partially work on mobile devices. I hope you enjoy playing them!

Magic Dungeon Redux play_arrow

Made some slight improvements

The Flea play_arrow

An action-packed blink-based platforming game!

Magic Dungeon play_arrow

A procedurally-generated top-down dungeon crawler. Based on a game I made in Dr. Tyagi's CSCE 312 class.

Spaced Out play_arrow

A combination of Space Invaders and Breakout. 100% better than both, guaranteed. Runs on a custom JavaScript physics engine!

Spinner play_arrow

Spin a triangle around to follow a circle. Use the left and right arrow keys to spin CCW and CW, respectively. Try to choose the rotation that would be the shorter path from the triangle to the circle. You can also use the buttons if you are on a mobile browser.

Tetris Matcher play_arrow

A block matching game based on Mozilla's Gamedev Canvas Workshop. Drag blocks around to match them. Match 4 blocks of the same color to create a solid piece. Line up a row of solid pieces to erase the row. Match more than 4 blocks of the same color to instantly remove them. Match a bunch for a surprise!

Toys

Toys are mini-projects that I don't consider complete enough to call games. Still, they may be interesting to you.

Duel

Ping vs. Pong

Hard Sand

Sand Particle Simulator v2

Soft Sand

Sand Particle Simulator

Billiards

Rigid Circle Physics

Circles

Soft Circle Physics

Fern

Barnsley Fern Generator

Chaos

Implementation of the Chaos Game

Diffuse

An experiment with diffusion.

Follower

A small mouse-following diamond.

LightNet

A combination of the previous two tests

Lighting

A test of distance-based point lighting

Net

An interesting design generator

Boxes

Testing my Rectangle class

PolyDestruct

Testing polygon destructibility (uses PolyK.js by IvanK)