- SculptGL-VR
A fork the open source web sculpting app Sculptgl, modified for use with a virtual reality headset and controllers. I started this project because there was no surface based sculpting tool for VR. One hand projects the active tool onto the surface. While still a work in progress, it's allready a formidable tool.
Future goals include support for more VR devices and conversion of the html UI to a scenegraph based interface.
- The Beat Device
Entry for Ludum Dare 36 (Ancient Technology). An experimental drum machine. Pellets move across the grid, triggering drum sample tiles. Other tiles allow you to change the direction, split pellets, and design literal drum loops. There's even a logic gate tile that can be toggled to allow passage.
Written in clojure, via the arcadia unity plugin
- Proc Skater 2016 A collaboration for #procjam 2016 with Ryan Jones A goofy skateboarding game with procedurally generated parks and characters. This is the first game to use the Wave Function Collapsealgorithm. There's also an in game gif recorder.
Proc Skater is written in clojure, via the arcadia unity plugin
- Surface V Submission for the August 2016 Lisp Game Jam. Control a rocket that speeds over the surface of complex worlds. Collect every star to open a gate to the next stage. A secret cave level can be accessed with "j+a+p" keys. The level editor is also left in the game, which allows you to spawn objects and even AI rockets.
Made with Unity and arcadia
- Infinity Coaster A procedurally generated roller coaster game where the main point is not to puke! Built in a week by Ramsey Nasser, Joseph Parker, Tims Gardner, and Salomao Becker for #procjam 2015. Infinity Coaster is written in clojure, via the arcadia unity plugin There is a version for the Oculus Rift, though it was never tested.
The people on the coaster are procedurally generated with mesh blend shapes, and are animated with sevaral horrifying emotions.
- An Evening of Modern Dance This is a dancing game with no objective beyond dancing. You control 1-4 players with the keyboard, and dance to a randomized artsy soundtrack. Made for Ludum Dare 32, written in clojure + unity (arcadia). The entire weekend was livestreamed, and quite fun.
- Parade Route 14th place winner of the 2014 Clojure Cup!
This was the first game made with the Arcadia project, which brings clojure to the Unity game engine. You are tasked with clicking the mouse on tiles to change the direction of roads, which the parade needs to survive. The game itself is really quite fun, and a total remake of Pipe Mania. The source code is located at https://github.com/clojurecup2014/parade-route
- mars base collaboration with @mills_dalton. It's a dwarf-fortress-esque base builder set on mars,
and might have gone in the same directions as rimworld. The AI uses a goofy scripting language called 'slowcode' that runs one statement per animation frame.
You can click on the entities to see the code run, code editing is broken in this build but at some point you could edit, save, and compile AI code while the game ran. My hope for this was a system where you could program
a guy and upload the code to the cloud. Other players might get this AI code installed in a new migrant, hidden to the player, and leaving you constantly suspiscious about the mental capacity of your population. Buggy build, if you want to keep your guys
alive build a bunch of rooms so they have a better chance of wandering inside. This project has been on ice for some time, but we keep talking about starting it up again. (html5, github, long load time)
- Alien Archaeologist Navigate your blimp as you blast your way into the hearts of alien planets in search of artifacts. My goal was to make a game where shooting everything
is not always the best option. Inspired by my favorite game as a child: Orlando Poon's Toxic Ravine. Probably the most 'finished' game I've ever made,
it even had a little writeup on rockpapershotgun.com It doesn't have the best difficulty pacing, and I'm thinking of doing a
remake for android with better level generation. (html5, LudumDare #23)
(Keyboard input is broken due to the changing web, but I plan on fixing it soon)
- Dawn of Dimension a collaborative platformer, you can pause the game and draw different tiles onto the screen. I released this game with the starting room and nothing else,
the Ludum Dare community did most the work building the world. If you want to see an overview of the map you can generate it here.
There are two mobility powerups and two cosmetic powerups hidden in the world, but the point of the game is simply exploring. I'm quite proud of the tileset and music on this one. (html5, LudumDare #24)
(Keyboard input is broken due to the changing web, but I plan on fixing it soon)
- cljs roguelike I didn't finish this Ludum Dare entry, but it has potential. My plan was to make a roguelike where you can't unequip anything you wield.
Players have to choose between being weak while holding out for powerful items, or committing to something mediocre in order to safely progress. Combat was to be focused on desciptive attributes over numbers
and dice rolls, and there were to be no levels or skills outside of the items. (html5, LudumDare #28, clojurescript)
- dropper an sketch of a roguelike game with smooth animations. Although simple, I think it might be worth revisiting at some point. (html5, github)
- blender addon: vertex color compositor Lets you mix and blend a stack of vertex color data instances down to a target. Includes the standard
blending mode filters, rgb inversion, and object color. Also bakes lighting and AO into vcol with custom baking implementations. (Blender python addon)
- pongscript a domain specific language for describing pong, uses PEG.js to parse.
you can edit on the right side, all it can do is define rectangles, but you can do some neat infix math with them. The goal was to make a language that had one data type; vectors.
Vectors are collections of single letter attributes (a-z) and are defined tersely (2x3y7z) Arithmetic operations take what they can get between two vectors. I hoped to implement ways to declare dimensional relations between attributes, and assign some attributes as representing a range
of another. (html5, github)