Thursday, July 7, 2011

Programming a game from scratch.

   A wise man once said,
To truly bake a cake from scratch, you must first recreate the universe.
    With that said, programming a game from a blank document can be a rather daunting task. 
But thats what i started with, one blank gEdit file and a page and a half of some ideas scrambled onto another document. 
   The idea i had in mind was a hacking game. Although its been done a couple of times, i feel like the only game that ever did the genre justice is 'Uplink', but Uplink is over ten years old, and if there had been an uplink online than i probably never would have started this project anyway.
    I wanted a game that when you cracked passwords or anything, that it would look like it does in the movies. So i began.
    In the beginning,  didn't even want to program this game because i knew that making any game from scratch is daunting, but a hacking game!? Thank god im good at math. I started fairly pure and simple really which is why i named the game 'Pure'. I went to http://collabedit.com where they let you and friends share a notepad so you can program asynchronously, and invited my msn list to come program with me.
    I had several " " visitors " " who would change things around, add a misspelling randomly or even just delete the whole code that was sitting there and replace it with 'Lol'.
Yet i persevered. it was the functions page i was working on using classes with php, and that became the backbone for the entire game.
    Three weeks pass and here we are. My functions page has grown to over a thousand lines, and from one single 'functions.php' file it has spanned to over 50 files of programming craziness.
I now have a working and running prototype free from bugs or glitches.
    The game effects that i wanted to look like the movies ... they totally do, and i finally settled down into a specific interface. I had some horrible prototypes when i first started

   I had one which was just a giant map with icons scattered on top and you click one to connect, or several to bounce before connecting. There was one that looked like a website that i liked a lot, but i realized that this is 2011! Our games have to start looking like games, even if it is text-based, so i scratched that one.
    The GUI running now i am fairly comfortable with, its simple and to the point and is mainly based on the uplink GUI. 

   You can tell a really good game or neat website when it looks so simple, but it is packed full of features (like google).
    As i continue programming the game and coming up with 100's of missions for it, i sit and type, and hope i can make something that doesn't make me a ton of money, but makes a ton of people happy.


Here is a screenshot of the GUI as of now.


No comments:

Post a Comment