Category Archives: Indie Development

Updates: Welcome to Sarasota, Florida

Greetings from Sarasota, Florida!

Shortly after completing my VR work with my students in Grand Rapids, MI I was given the opportunity to apply for full time employment (YES!) in Sarasota, Florida. A position had opened up at the local magnet school in their Animation, Gaming, and Simulation program. As many an indie developer will tell you, full time employment can free you up to do the projects you want to do if you don’t have to worry about how you will pay bills and eat. This job also combines the two things I love the most, game dev and teaching the next generation. The position was to teach high school freshmen and sophomores basic design elements and digital tools for game development and to reinvent the curriculum from the ground up. I would also get the opportunity to live in the tropics after living in Michigan my entire life. Who doesn’t want that right, after years of winters in the great white north?

Well I couldn’t pass that up. I would also get the opportunity to teach with a long time friend and teaching collaborator who I’ve known for 12 years. She had moved down the year before with her family to help the school begin to transition their program from a fine arts approach to a digital art approach. She primed the pump with the administrators for me so that by the time I had my interview, they had already made their decision. I got the job and moved to Sarasota on the first of July and I haven’t looked back!

So how does this affect my projects in motion? Here is the rundown:

  1. Masters Thesis and Book Promotion – This is my top priority currently. Completing my thesis is the last loose end from Michigan that needs to finalized and it has been a long time coming. The subject is the book writing process and how the book can be used in high school curriculum. I might know a thing or two about that. Book promotion will be a big part of my plan this year as well. Through my new job, I get the opportunity to attend GDC this coming year and will be looking to connect with other educators at the Education Summit. I am also planning to attend Epic Games education event that they have started holding offsite. Last year, my book was on sale through my publisher at that event and I think it would be great if I was there to help promote it. Are you going to be there? Email me and we can make plans to connect ahead of time! 
  2. Woodcraft VR and the Grand Rapids Public Museum – This project made it difficult for me to leave GR. After completing the beta version with my students at West Michigan Center for Arts and Technology, my students made an excellent showing at the local Maker Faire. The plan was to continue developing the game into this academic year to complete a final version by Christmas. Leaving Wmcat was the hardest thing I had to do in the moving process as I love the organization and their mission. I still miss my Wmcat family! So what does this mean for Woodcraft VR? I will be stopping by the Museum during my upcoming trip in December to install the game in it’s current form so that my former students can see their game in action. I will continue development on the game in partnership with GRPM from down here after I have completed my thesis. I won’t let my kids down!
  3. Procedural Generation Tutorial – I hated having to put this one on hold since all I have to do is document my process that is currently working in my DisasterSpace Alpha. I have not given up on this as this was a very popular topic on my Twitter feed. Look for it early 2018
  4. DisasterSpace – With the closing of Visceral Games, DisasterSpace has become my homage to one of my favorite game franchises of all time, Dead Space. The development of Disaster Space will continue over the summer of 2018 during my break from education work.

Since moving, I can honestly say that I love it down here. The sun and temperatures are great and my new school is giving me tons of opportunities t expand my skill. Even Hurricane Irma couldn’t stop me though it certainly gave me some anxiety. My new students are great but I have not forgotten my old students or where I came from. Grand Rapids gave me so much. I learned how to create games there and I learned of my love of teaching there. I will continue to pursue partnerships with GRPM and Wmcat with enthusiasm and connect my new students with these great orgs. But I love my new home in the tropics and look forward to my new adventures here in Sarasota!

Advertisements

DisasterSpace (Working Title)

Procedural generation! It seems to be my latest obsession and one of the favorite ways designers create replayability in their designs. Games like Blizzard’s Diablo series used it to create dungeons that varied from playthrough to playthrough, while Hello Games No Man’s Sky tried to generate a whole universe for their players to adventure in. With help from the folks at Pub Games, I was able to get down the basics of procedural generation in Unreal 4 using Blueprint. Their video Procedural Levels in 15 Minutes became the launching off point for developing a system that generates rooms and corridors using arrays and random number generation. This new system has become the cornerstone of my new game idea DisasterSpace

The System

screenshot

The system I currently use has undergone three major iterations and numerous failures, tweaks, and rewrites. It builds on the ideas introduced in the Pub Games video. Arrays store different types of levels. Using random number generation, a room is chosen and then placed in the persistent level using a system of connection points. All this code is stored within the connection points themselves to keep things modular and organized. When the requested number of rooms is created, the system then caps off all the extra connection points so there are no loose ends. I have created a few different kinds of connection points to keep the system flexible and each level is self contained and can have it’s own lighting, effects, and more.

As I developed the system, I was able to test it within a few different scenarios. At first, I used it to build randomly generated towers that might be used in a puzzle game. When I got this to work, I was able to move on to building randomized dungeons. Using different connection points types, I was able to specify whether a room, hallway, or junction was built at a particular doorway. Thus creating some very interesting levels. After further testing, I now feel the system will be perfect for building my newest game idea.

The Game

Klaxons blare. As you climb wearily out of your cryo sleep tube, your wrist mounted computer informs you that several of the ship’s systems have been damaged by an unknown catastrophe. What happened? Is anybody hurt? DisasterSpace is a disaster survival game set among the darkest regions of space. The player takes the role of the ship’s engineer, woken up early from cryogenic suspension to deal with a disaster that has damaged the ship and put it, and the rest of the crew in a life or death struggle for survival. Find out what happened, repair as much as you can, and save as many of the crew as you can before the ship is destroyed.

DisasterSpace utilizes the procedural generation system to vary a ship’s layout and provide enough variety to support multiple playthroughs of the game. Players take on the role of the ship’s engineer. A mystery disaster has befallen the ship and her crew while they all slept in stasis resulting in catastrophic damage. The player must save the crew and repair as many systems as possible before the disaster has a chance to destroy the ship. During play, the level will change based on the scenario and how long the player is taking to reach the end goal of a functional ship. Rooms that were there just moments ago may now be open to the void. Hallways that provided safe routes before, may now have no oxygen or be filled with fire. The environment will change during gameplay and the player must evolve with it to win.

I am currently working out the basic design of the gameplay systems to begin working on a prototype for testing. Once I have a rough, working design I will be sure to post it here!