This weekend I worked on Section 1 of my Game Plan. While seemingly not a huge step in the process, it is step one. I certainly can’t reach the last step without taking the first one.
Taking a look back, this is what my game plan had for the first step:
Setup Development Workstation and Environment
- Select and install a Version Control System
- Select and install a reliable backup system
- Select and install development tools (compiler, editor, tools)
I was able to complete the first two sub-tasks and make a great start on completing the last. For the version control system I selected Subversion. I have used cvs for quite some time and nearly continued in the same direction, but given the current strong trend of migration from cvs to Subversion and that Apple’s XCode now has built in support (though somewhat buggy), it was time to adopt the newer tool. I installed Subversion using fink and created some sample projects to test it out and it seems to work wonderfully.
The second task, setting up a backup system was taken care of with two purchases: Two external 250GB Hard disks and Dantz Retrospect. I setup the external drives as a Mirrored RAID in Apple’s Disk Utility and setup Retrospect to do nightly backups of all my files to the external RAID. So this gives me two internal hard disks in my PowerMac G5, one is the system drive where I have OS X and all applications installed, the second is my Users or Home volume. This is were I check my code out to and actually do my development as well as all my other day to day work. I also have a single external drive where my existing cvs repositories and my new subversion repository live. And now my external RAID which stores my backup images. This gives me several layers of redundancy and makes me feel a bit more secure going forward and has been accomplised within a reasonable budget.
Finally, the third task of selecting the development tools. The obvious choice was to go with XCode and this is exactly what I’m going to use. It’s free, supports multiple languages, and seems to be under pretty aggressive ongoing development and improvement over at Apple. The reason I can’t mark this item complete yet is because I have not decided upon a programming language or framework. As I mentioned in my previous entry, Allegro Game Framework, I’m still exploring my options. What are the advantages of using a cross platform game framework written in C vs. using Objective-C? Hopefully, I can work this out in the next few weeks and feel comfortable with the direction I take.