Projects
A Dynamic Model, Elo Approach to Magic Draft Analysis #
In this project, I investigate the win rate anti-correlation generated by record-based matchmaking in a tournament setting, as opponent skill level reacts in real time to a competitor’s current performance. To do this, I constructed a dynamic model which simulates thousands of iterated Magic: The Gathering draft tournaments by matching players against each other based on current record. Player skill levels are measured using an elo distribution calibrated on empirical match results, and I analyze the degree of anti-correlation in win rate that results from the implicit skill aggregation of record-based pairing. I compare these results to a static model which does not capture these effects, and discuss in the attached paper.
Magic: the Gathering is Turing Complete #
In this project, I worked on a team with two coauthors to prove Turing completeness in Magic: The Gathering. Unlike in most other examples of accidental Turing completeness, our result requires no rules modifications, can be executed with a normal, tournament legal deck, and makes the machine strategically relevant - the winner of the game is contingent on the outcome of the Turing machine. Project work involved determining the necessary game logic to represent the machine’s tape and state changes, as well as identifying combinations of cards to automate processing without introducing player decisions (in order to ensure the functionality was automatic).
StealthJava Puzzle Game #
In this project, I created a turn-based stealth puzzle game with over 30 levels. In each level, players navigate a labyrinth while dodging guards with several types of AI and which use different methods of detection. Some levels have additional mechanics like keys and limited visibility. The game was implemented in Java, and I designed all rules and implementation details.