The past week has been an exciting time! We hired our first programmer, which is an important milestone. Victor Ude started on Monday, and is sitting beside me as I write this, hard at work.
Victor is currently working on our FMOD integration. FMOD is a 3rd party sound and music engine for games. It provides a great deal of power for scripting and manipulating sounds in game. FMOD comes with a fantastic tool for sound engineers. FMOD will be used by Kpow and Austin Wintory to implement the sound and music in the game moving forward.
Victor is sorting the intricacies of writing an Adobe Air Native Extension (ANE) for allowing a C/C++ library like FMOD to interoperate with as3 libraries. As with any cross-language bindings, ANE, a relatively new technology, has little quirks and annoyances that I am very happy Victor is dealing with.
I’ve been working on a variety of tasks. For the past few days I’ve been getting GUI screen roughs mocked up in the game. Arnie has been painting the art assets for it, and I am getting the basic functionality hooked up. We have roughly 12 full screen GUIs to do, and I am going through them one by one and getting them working. This is all to pave the way for our GUI Designer, who will start working with us remotely from San Francisco on Monday.
GUI integration has been an enjoyable challenge. The GUIs are painted by Arnie in Photoshop, then the functionality is setup and programmed in Flash, and I have been working on some as3 frameworks to be reused across all the GUI screens to make everything consistent and easy to integrate into the game. I hope to have this GUI architecture fairly firm by the time the GUI Designer starts. Having this system architected in advance will help prevent us from going down ratholes that require substantial reworking/refactoring in the future.
Upgrading our website and forum hosting took some time last week. When we first rolled out our forums, we were using a shared hosting provider that had been up to that point just fine for our website and wordpress blog. However, as all of you know, the deluge of forum users crushed our shared hosting pretty quickly. VBulletin’s database resource usage far exceeded the available resources on the shared hosting. Almost all of our issues were as simple as hitting the database connection limit. Fortunately, our hosting provider allowed us to migrate our website and database into Virtual Private Servers, which allow us to scale up and use as much resources as we need. I now have some nice little slider bars where I can allocate more memory whenever I like.
We have a couple of remote volunteers who are helping to set up our Continuous Integration/Build Server. We are going to be running a Jenkins/Hudson service in the Amazon Web Services EC2 cloud. Since our game is cross-platform, we need to run one MacOS server and one Windows server, so we can produce the executable packages for each platform. That work is going slowly because both of the volunteers have day jobs, but it should be up and running prior to starting Alpha.
I have been taking the first steps to setting up our Game Server and Game DB. I am, again, using AWS EC2 to run an Ubuntu linux server, on which I will run our Game Server. The Game Server itself is a Java application using the Glassfish Jersey implementation of the Java API for RESTful web services. I am building out our DB using Amazon SimpleDB, which is a very nice key-value non-relational database. As you might tell from its name, it is pretty simple to use. Despite being non-relational and non-schema, it does support SQL query syntax.
We have a second programmer starting on Monday. His name is Jeff Uriarte, and he will be working on some tools for us. First up is the tool for creating the parallax scenes that are used in combat, travel, and city environments. We have a lot of these to make, and the tools will help streamline the process. For some reason the other guys don’t like the idea of building them by hand as 20 page JSON files
Next: Technical Blog #1