Gathering Storm - Battling a lack of motivation
Curses! It appears I have failed to write anything in the blog for over a month. I don't really want to dwell too much on this fact, as I'm sure being mad at oneself for not posting is a well-worn trope of the Blogosphere. However, I do want to say that fairly soon I am going to try to turn this blog into a consistent once- or twice-weekly thing. For two reasons: I just work better on a schedule - I'm much more likely to do something if I have specific deadline; and also people are just more likely to follow something that gets updated on a regular schedule - people get into routines.
Anyway, after the long hiatus, it's taken me another month to ramp back up to full coding capacity again, which was due to a lot of factors, but the main one being a sort of unwillingness to do it because my brain didn't want to do anything difficult. And this was backed by a really terrible work ethic, so I would sit down and watch episodes of Entourage for hours at a time (I know, right?) instead of programming.
Until I got so pissed at myself that I had to lay down the law. So first I had to admit that I had a shitty work ethic, and my problems stemmed way back to, like, elementary school, where everything was so easy for me, after school I would just mindlessly knock my homework out real quick and then play video games all evening. Middle school, high school, most of undergrad - it was all the same, until this capacity for slacking at every opportunity was deeply ingrained into my life. I can knuckle down for short bursts when I need to, and I still get a fair amount of work done in my daily life, but there really was a lot of slacking.
So I'm finishing my PhD within the year (which has taken longer than it should have because of my slackery ways) and I've gotta get a real job and it just seems like now is really my last chance to form some new work habits, which, admittedly, will not be easy.
But I know how my bran works, so I formulated a plan: I simply give myself a list of rules - things I am allowed and not allowed to do at work and at home. These rules basically boil down to the fact that when I sit down at my computer, I have to work. There are specific websites that I can check briefly that won't lead into a link black hole, and in the evenings I can watch specific pre-approved television shows if they are available, but other than that, the computer is for working. It's not for watching Entourage. It's not for playing way too many silly Flash games. And it's not for surfing the Internet for hours at a time. These things are TOTAL wastes of time. I get nothing out of this stuff except that I'm a little bit closer to the premiere of Game of Thrones season 2.
And these rules generally work because my brain likes rules. It can get behind them as long as they're not too stringent. For instance, in the past, after getting fed up with my video game habits getting in the way of accomplishing actual work, I would say "No video games for a month!" and that would...mostly work. Work well enough to get done whatever I needed to get done. Though that month would see a spike in random Internet surfing and television watching as my conniving brain found other ways to slack. However, if I put a moratorium on everything for, say a month, my brain would just throw up a middle finger at the rules and rebel.
So what I have done with my rules this time is still allow myself a sufficient amount of nuggets of entertainment, so that I can slack when I need to in a controlled manner, and also there is a clause that allows for re-evaluation every week on Friday. So if there's a video game that I really want to play, or a movie or TV show that I want to check out, I can write those rules in a controlled manner. Mind you, I can't amend the rules whenever I want on a whim, because my brain would quickly just turn that into full-throttle slacking.
Yeah, my brain is a jerk.
Anyway, so what that means is that I am finally making progress on this rune menu, and I've tackled the hardest piece of code I have had to write thus far: rune sorting.
So, essentially, just think of materia in FF7 and you'd have a pretty good idea of how runes work in Gathering Storm. So the rune menu is where you can go to look at all the runes in your "Rune Bank" and equip them on items or even combine them for different effects. So the rune bank is essentially just a long list of runes that you own that are not currently equipped on an item. Each rune has name that you see, a name in the code that is generally more manageable for programming, a specific type (think "Magic," "Summon," "Command," etc. in FF7, though mine will be different), an experience total and an experience level (again, think AP in FF7).
And just like with any long list of things in a game, players want to be able to sort the list. If you have 200 runes in your bank, you don't want to spend 5 minutes scrolling through some random list trying to find the specific rune that you are looking for. So I actually have two levels of sorting that work simultaneously: runes are always organized by type, so one menu window allows you to decide which type of rune appears at the top of the list; then there is another window that allows you to sort runes of a type either alphabetically, reverse alphabetically, most to least experience, or least to most experience. In addition runes of the same name, if sorted alphabetically, will have an automatic tertiary sort of most to least experience, and if sorting by experience, runes of the same experience will have an automatic tertiary sort by alphabet.
So, yeah, that was complicated. For reasons that would take pages and pages more to explain fully. But it was great, too, because it really gave me a good chance to work on forming new habits. I mean, I did NOT want to work on this. Thinking about just made my brain feel...heavy. But I would sit down and my computer and force myself to work, and I eventually got through it to the other side. The basic framework is there now. I haven't finished writing everything and I haven't tested it yet, but the hard thinking part is over now.
Leave a comment
Comments will be approved before showing up.