It has been a week since I wrote into this blog the last time. I have been busy, and therefore thought I have nothing more to write about yet... but then I remembered that I haven't written about my game that I am developing yet - and that's one of the main reasons I began writing this blog!
Ever since I began learning programming, I've tried to make my own computer game. There've been various attempts, simple games, big games, working alone and working in team.
The first game I remember programming all by myself was a Snake. A simple Snake game programmed with Pascal in the DOS console. It was a part of my programming course, the only I've taken in whole my life (if not counting the programming lessons at school, where I don't really learn much new).
Then there was a 3D application I made just to be able to draw lines and polygons in the 3D-space. I didn't know of any 3D API back then, so I wrote my own Pascal library that would have functions to take in 3D coordinates and translate them to 2D coordinates to be shown on the screen. Also, I wrote my own class for storing these coordinates for objects, and methods for storing them to a file, and reading them.
These were two of my greatest programs I have ever written. The code and the programs are now lost, I suppose (well, the only place they could still be at right now is the very old '95 laptop we still might have at our place in Latvia).
As I got better at programming, I twice tried to recruit groups of interested people for making our own computer game. The first time I tried to inspire my friends to join me and to learn programming, with my help, but then I found that their inspiration and will to make their own computer games wasn't sufficient to keep them interested to learn programming.
The second time I recruited volunteery experienced programmers with interest into making a computer game during one month and then I hoped them to be as engaged into making the game from a scratch. However, I found out that these programming "professionals" couldn't work without a fixed programming design (it's a document showing all the parts of the game as objects, their attributes and actions, as well as relations between each other). Of course, I didn't have one, and I couldn't make it because I want all the team to be involved into decision making and do these decisions on the run.
So, a team won't work until I have a solid base for the game, at least.
During this time I had improved my web-developing skills greatly, which is why I decided to give a browser-based game a try.
Two years ago I made a simple persistent browser-based role playing game (PBBRPG) called Next Planet - where players each have one character with 6 different stats (strength, precision, percepcion, defence, evasion and deflection) that would increase during the combats. If you're attacked, and the attacker misses, for example, you gain some experience in evasion. If you've blocked an attack, you gain some exp. in deflection, and have a chance to gain an additional attack (chance increases with higher percepcion). Strength, precision, defence and evasion are pretty straight-forward skills, I guess, so I won't explain them in detail as I did with deflection and percepcion.
The combat itself, though, was just as simple as - click "Attack a monster" button and just spamming the "Attack" button to kill the random enemy.
Not much for a game, so I tried to add more things, like inventory. However, as I tried to program it, the code got all more like a spaghetti and wouldn't work. Finally, I gave it up.
After some time I made several other attempts to make a new game with the same ideas as for the previous game and even the same title, but this time one of them was as a school project (I love when you can decide what you want to work with!) and two were simple experiments of 3D graphical engines, trying to make something game-like from them.
None of them got any further than moving around in a 3D world.
During this school year, I began working on a new computer game again, and again as a school project. It was a browser-based game, intended to be a PBBRPG again, but never got to that stage. Again, it was only moving around the world, which was 2D this time. Also, we would show our projects in an exhibition in the school at the end of February. A few days before the exhibition, I realised there'd be nothing much to show (who would be fascinated by moving around in a 3D world without being able to do anything else?), so I remembered the game I made two years ago, found it on my D:\ (the partition I use to store all the files I might ever need in the future), repaired it (hadn't exported the databases, so had to make new ones based on the code) and had it with me on the exhibition together with my newest game.
My best friend, Jenny, would find my game very interesting (more interesting than anything else on the exhibition), so she'd just sit there and play it ^_^ Some of my classmates also showed interest in that old game and tried it, and they liked it, even though it was very simple for a game (the only thing that kept it interesting to play, I guess, was the Top15 board, where players would compete one to each other). So this gave me the inspiration to continue with my old game.
When analyzing all the code I had written two years ago, I realized how spaghetti it was and knew I had to organize it before I can work on with the game. Since then I've been rewriting big portions of the game, reorganizing some objects (classes) and databases, as well as structurizing the client-server communication, which was the biggest spaghetti of everything. Well, this far I'm done already, but there were some more improvements I decided to make on the way instead of simply fixing the old, boring functionality, the biggest of the changes being moving the profile page to the side instead of having it in a seperate page (to always see your HP, even if you load another page while in combat), and the combat itself, where I'm trying to implement a few different attack skills for better control over how the character stats grow. Also, the visual layout of the combat needed some changes.
While I feel I'm close to finishing the changes, I haven't had much time during these two last weeks to spend on programming this game. And when I had time, I have been tired or simply didn't have the inspiration to program anything at all. Besides, there is some programming work waiting for me, some bug-fixes and additions to a websystem I've developted for a company.
Next week will be the Easter Holidays for me, so I hope to be able to finish off these changes and finally publish my updated (pre-)alpha version of the game on the internet.
The old games I'm working on are still on my hard drive and I intend to resume working on them when I'm done with this game, so I had to rename Next Planet to something other, as all the games I've been working since then share the same name. For now, I've named it Next Realm, but if you have any better suggestion for a medieval fantasy game title (with parts indicating the beginning of the industrial times), then do let me know!
Now back to seeing some Xena episodes :)
0 comments:
Post a Comment