Sunday, June 14, 2009

Oh C++, How I've Neglected Your Love!


"Hello, World.\n I Am YibbleWare!\n"
Howdy, I'm CartLemmy; I am YibbleWare, an independent gaming group (Well, a group someday, but for now it's just me). I started a NotSoMMORPG (Not So Massively Mulitplayer Online Role Playing Game) project about 10 years ago, and nothing ever came of it. In the mean time I've been a delivery driver for Pizza Hut, Red Baron, and California Overnight (now OnTrac); a wannabe rockstar; and since about 5 years ago I've been developing web apps.

Somewhere along the way I forgot I was a hard-core 2d gaming nerd. Well, I finally came to and here I am; working on the NotSoMMORPG again. Only this time I've decided to code the client side in a cross-platform Flash/ActionScript 3.0, instead of a Windows only c++ based .exe.

The NotSoMMORPG project will strive to bring about the same excitment I got when I first played games such as The Legend of Zelda: A Link to the Past, Final Fantasy II (Actually Final Fantasy IV, as far as Japan was concerned.) , Ultima Online, and Sim City. Yes yes, I know Sim City doesn't fit in with the prior three games, but it will be a goal to add some of the organic elements of a large scale simulation game such as Sim City into the NotSoMMORPG.

I realise that this is quite an undertaking for just one lone soul, so at some point I hope that some of you may join forces with me in completing the grand project that has only just begun.

Diving Head First Into C++ (G++)
Well, It's been awhile since I've held C++ in my arms and felt her sweet embrace. I've been so enamored with Java, PHP, and ActionScript 3.0 that I'd nearly forgotten what a incredibly efficient a beast C++ is. Though I frequently have nightmares about pointers, variable scope and c debugging; I could not deny her any longer.

GTKMM
Why did I come back to C++? Well, I had to create a GUI interface to the map generator. Since I have been developing the map generator on Ubuntu Linux I needed to interface GTK+ somehow. So I did some research and stumbled accross GTKMM, c++ interfaces for GTK+ and GNOME. I actually had the option to code in PYTHON, Java, or c#; but I decided to go back to c++ out of laziness and nostaglic value.

The last time I developed C++ was using Visual Studio on a Windows box, and now I am trying my hand with g++, so I am a bit lost in this strange new world. Thankfully my uncle Google was there to help me when I was lost; a dozen or so Seg Faults and a couple Floating Point Exceptions later I had a somewhat working GUI interface for the map generator variable sliders. (See image at right)

(Below: Screen-shot of my desktop, working on the map generator for the NotSoMMORPG.)