Mission HydroSci
Technologies Used
Unity3d, C#, Perforce, Git, MongoDB
Role
Unity Developer
Project Description
Mission HydroSci is an educational game funded through the U.S. Department of Education’s I3 and IES programs. The goal of the project is to teach middle school students both water science and scientific argumentation. In my day to day, I create various mechanics, tools, and gameplay elements for the game using C#.
Website
Notable Features Implemented
Logging system
I designed and created the logging system which keeps a running tab on the player’s location data, success on puzzles, quest-line progress, and so on. We convert various events in the game into JSON which gets sent up to our MongoDB database. I work closely with the analytics team to identify how to implement research goals, such as identifying types of player’s and their correlated success in game. As part of this process we identified that there was certain kinds of information that was necessary for understanding the logs, which was inconvenient to deal with on a player-by-player level, such as in game dialogue, locations of certain points of interest, etc. I created a tool which runs through the various pieces of info for a particular build and compile a reference data log, containing all the information they need.
Buoyancy
As a replacement for a very inefficient, 3rd-party, buoyancy system I created a much more performant one. To simulate buoyancy I use a spring joint attached to our puzzle cube and a small sphere. The sphere has a low-friction, physics material on it so that it slips around the surface of the water. If for some reason the sphere gets caught on some underwater geometry or underneath the top surface of the water, we automatically move up our buoyancy sphere and the player is none the wiser.
I also added the ability for different bodies of water in the game to have flow which pushes the cube along as if by a current. Using these mechanics I worked with the design team to create various puzzle sections of the game teaching the player about, humidity, the water cycle, and infiltration.