GDC was two weeks ago and I'm finally getting around to writing this post! This year instead of bumming off a friend's couch, I stayed at a hostel -- this particular hostel is known as the 'indie hostel' during GDC and it definitely lives up to the nickname. I shared a room with three indie devs from Belgium, one from LA, and one from South Africa (who's currently doing a kickstarter for his game Cadence). The hostel itself was only a short walk from Moscone Center. The nerd in me loved that each bunk had its own power outlets, usb ports, and even a light -- there were common areas where people gathered and played each others games. It was the perfect lodging for GDC and much cheaper than the nearby hotels.
I got the cheaper Indie Summit GDC pass again, so that's where I ended up for most of the sessions. Lots of helpful advice and insight into best practices for Steam, marketing, localization, and in general how to do a better job making games. I came away with more confidence, not only in what I'm doing, but also what I need to change and improve upon.
In particular, there were a few talks on open development (early access style releases). The devs behind Desktop Dungeons did a great talk advocating for and giving tips on open development and it helped convince me I need to push forward with a release soon. Private playtests have been going well and I think the gameplay is at a point where it's ready for more people to play (though far from 'finished'). Feedback from these playtests has been invaluable, but I think it's to a point where analytics would be helpful in addition to that feedback -- and analytics aren't very useful if there aren't more people playing. While the gameplay is ready for more people, there are other areas that need work before that can happen -- fully functional menus, server browser, replacing some placeholder art, major bugs, etc. So I can't announce a date for the first early access style release, but I'm going to focus on these sorts of things so I can get more people playing soon. I'll try to keep the Development Forecast updated.
Another GDC session in particular was really valuable -- it was a series of shorter talks about custom dev tools (creating tools to help make development of your game easier). One of these was about using decompiled Unity engine code to access undocumented functionality and peer into official features to see how they pulled it off (particularly with Unity editor functionality). Another one of these micro-talks mentioned using a MIDI controller (pictured above) for tweaking game feel. So usually when tweaking something like movement acceleration, you throw a number in there as a guess, test it, change the number, test it some more until it feels ok. But with a MIDI controller, you could link a knob to the value and turn the knob at the same time you're moving around, similar to how you'd tune an instrument -- that direct feedback would then make it a lot easier to find the perfect feel. From Willy Chyr's blog post:
Often times, we choose values that seem to ‘look good’. For example, when I look at a lot of the values I had in my code, they were often ‘clean’ numbers like 4, 3.5, or 80. In reality, what actually feels good may be something like 7.828312. Using a controller to tweak can really help you get the right numbers based on feel.
The decompiled Unity code came in handy when I started making an editor plugin for the MIDI controller. I liked how Unity's UI.BUtton component could easily select target methods with a dropdown in the inspector, so I looked at how they did that and made something similar. So for my MIDI plugin, you simply drag a target object into the Target field and the dropdown automatically populates with all the floats (numbers) you can target for the assigned knob. Then, you play in the editor and tweak the values with the knobs and the new values will automatically be saved when you're done. I'll write a more detailed blog post about my MIDI tools later.
I could go on and on about GDC, but I need to get back to work!