I did some programming today. I got out of bed, and while yesterday evening I had the iron conviction that I would go to the gym, today, I just got out of bed, sat at my computer, opened Visual Studio and started a new project.
I had something in mind. The Game I had been working on didn’t sit well with me. Somewhere during the editing process, I had mucked it up. The balance was off, and the only way to improve that was to tear it down and build it a-new. So, I began coding. First, an hour. I thought I’d get some gaming time in between, but I was quickly bored by the humdrum of the games I know virtually by heart. Ten minutes later, I was back to coding. Since my Game involves hundreds of variables, even the simplest tasks can take quite a while, and there is hardly any cutting it short that I could think of right now. Considering my first attempts a few years ago, it went very smoothly. I only ran into a bug here and there, maybe every 20 minutes, but they were quickly fixed.
So I sat in front of the Computer, coding, coding coding. I wasn’t exactly hungry or thirsty. I mostly have a bottle of water somewhere close by for my unending gaming sessions, and I had some sweets left over that I consumed for concentration. The first time I really looked up from my Computer again was after I had finished my main goal, around 16:00.
The goal was to devise a system in which the attributes get more difficult to increase as they progress, but without over-encouraging early specialization. Many RPG’s have that problem, and it results in serious power-gaming issues. Of course, characters need a degree of specialization, because a group of specialists is stronger than a group of generalists, which makes grouping worth while. So, I devised a system that doesn’t allow the players to directly choose their main attributes. They do so by choosing skills, and the amount of skills represents the training level for an attribute, which increases automatically with intensive training.
By the way, my brother Al has been developing a system where the starting attributes are determined only by the skill the player chooses, so, here’s to my Brother Al! He’s getting a nice X-Mas present from me.
After I worked out the details, my Roommate returned home from Work and drinking a few at the Christkindlesmarkt with his colleagues. He’s the engineer, and all those years ago, he got me into the programming, so of course I was excited to show him my progress. He was quite impressed, so my Code Frenzy continued on after I ate some Meat Loaf, and it is now 5:20 AM and I just finished coding my Cybernetics system.
Yes, it’s a Science Fiction RPG. You can buy up to 5 Cyber levels, which provide your character with health and armor bonuses and provide installation capacity for the Head, Torso and the Limbs. Health and Armor are extremely important in my game. I imagine that in the future, weapons are so deadly, that you wouldn’t stand a snowballs chance in hell of survival if you’re not wearing Armor to a fight. Yes, there are weapons that cause primarily stun damage, and some characters in my Group use those. Sometimes. Well, one of the characters is a medic, so he even prefers sonic blasters over tachyon disruptors. I digress.
The Cybernetic system was a real fight to get on the road. Instead of just giving bonuses to physical and mental for buying upgrades, you know mostly buy utility implants that allow you to act (or survive) under extreme circumstances, and since there is a capacity for every major body part, that also means I needed to code so that you could choose which Limb to upgrade, and provide the computer with a method of discriminating which Implants are restricted to which body parts.
And all of that with List- and ComboBoxes. Unlike my first attempt at programming a cybernetics system, in which every choice was final, I added a shopping cart, which can be cleared if you change your mind (no, I can’t remove individual objects… yet). The purchase only becomes final once you click the “Checkout” button, which also holds the information of the cost of your purchase. I have worked with ComboBoxes before (a.k.a. Dropdown-Boxes), and the list boxes work similarly. Still it took me until 5 AM to finish the fraggin’ Cybernetics system, and there are probably still some tweaks I need to take care of once I start with the savefiledialog. That is going to be one piece of work, I tell’ya.
Just before I headed over here to write about my Triumphs, I looked over my Codesheet. 41 Pages of Code, ca 40 lines each. I started around 10 A.M., my break times combined amount to ca 1 hour until 5 A.M. this morning.
Do the math, I am too tired for it now.