Not as much progress this week as I’d like, but progress nonetheless.  Last week, I pretty much put major feature development on hold as I wait for the upcoming 7DRL to pass, and that turned out to be a really good idea given the week I’ve had.

Early-week was spent preparing a presentation on KRL that I gave at our local Tulsa Game Development group.  I’m not entirely sure how well it went, but I felt alright about it.  The thing about presenting on a niche genre is you can pretty much spout any nonsense that comes to mind, and they’ll believe you 😀

The blank stares when I referenced some of the major and minor roguelikes…. even 868-HACK.   868-HACK!  Who hasn’t played that?

Seriously though, it’s a really great group, and a lot larger than I expected for the area.  I encourage anyone out there to look into their local scene… you never know who you’ll meet.  (Like maybe someone that actually worked on games you grew up playing!)

Then, I had the pleasure of a nice, good old fashioned hard drive crash.  Yeah.   I got completely back up and running after a day or two, as I’m really good about backing stuff up.  However, it was still time spent doing something other than working on the project.  I think it actually turned out to be a good thing, as it allowed me to start the development environment over from scratch and really optimize source control and backups.

In the time I’ve not been preparing talks, or reinstalling software…  I did take the component based design idea to work with me, and have the concept implemented in a project we are working on.  So far, it’s been really solid, and that encourages me… a lot.  I’ve been doing a lot of back-end refactoring of the KRL code base, in order to prepare for the transition.  I don’t think it will take more than a week of work once the trigger is pulled, and make most the things component based.

A lot of thought has gone into my 7DRL ideas this week.  I believe I have cinched it down to be highly focused on the combat mechanics.  You know how fighting games have their “moves”?  Something like that… but a bit more roguelike.  I don’t want to spoil too much…  but I’m really jazzed about this idea.  It definitely goes on the “if not this 7DRL, it still needs to be made” pile.

As far as new KRL features, really the only thing added was a framework for talking with web services.  This allows for things like analytics, leader boards, etc.  It’s a rather easy thing to implement with today’s modern shenanigans and goings on, but I always put it on the back burner.  I realize a lot of this is going to be very application specific, so I just implemented the basics for sending and recieving web based calls.


Next Sunday update may be a little different, as I’ll be in the thick of the 7DRL!  I plan on updating daily during the week… but only if the time spent on the update will not cut into the development of the game!  During Ludum Dare, I try to post a short update at least every 12 hours… I find it gives me a break and can actually add a bit of focus.  Those usually consist of a short blurb of text, and a screenshot.  I’ve never done this over 7 days, so we’ll see what format, if any, even works.  I’ve totally accepted the idea that this may just be a series of my typical “old man yelling at clouds” posts  😛






KRL Backend Refactoring

Early this week I watched a video from the US IRDC with Brian Bucklew talking about component based design.

The component based module is not something that is all together new to me…  I’ve been exposed to it via a few projects in the past.. but I’ll be honest.. I just didn’t get it then.  I’m from the older school of thinking, where they taught you that object oriented programming was the solution to all the worlds problems.  With what I’ve been struggling with over the last few months, Brian’s talk spoke to me directly and really put it all into perspective.  His problems were mine… so his solution must be worth a look at.  

After some brief experimentation, the light bulb turned on and I decided to completely rewrite my back-end.  This may have not been the best idea, seeing that the 7DRL is fast approaching, and the engine has some fairly major holes (like inventory and combat systems). But, you know… you get to the point where you see the path you want to go, and you just can’t force yourself to work on anything else that would steer you away.  Yes, I could work on an inventory system that would work with the current code base, but that time would be wasted, as I’m not sure how it would interact with the new component based system…

So, that’s where the time has been spent this week.   This wasn’t my first attempt at a roguelike engine, so I knew the problems ahead.  I had already designed the base classes in such a way that they would minimize the impact of the problems I would face, without actually solving them.  This has actually helped me a lot in the transition, though there are still a lot of holes.

Long story short… as of now.. it’s not working.    It will.. eventually… but right now, it’s not in a state where I am comfortable that it will be complete by the time 7DRL comes about.  I’ve got KRL in a state where I can switch between the two backends… and will continue on the older, more tried and true approach for now.  At least until after the 7DRL.

Speaking of the 7DRL… yeah… that’s a thing…  I’ve got a lot of ideas, and not too sure what direction I want to go with it.

Since this is my first, I probably want to take it nice and slow.  Do a standard, sort of familiar roguelike idea.  Generate a dungeon… explore it… gather treasure.. kill goblins…  yes.   This will work.  Nice, simple, straight forward and easy.

Then, there’s the more experimental side….

I have an idea for an evacuation sort of roguelike.  An urban environment, where your goal is to escape the city, bringing along what and who you can, while being pursued by some sort of threat (aliens, virus, zombies.. etc)

I have an idea for an exploration based roguelike, where you are a probe on an alien planet and none of the items/terrain/creatures are known to you.  The goal is to discover as much as you can and send that data back to earth..

Then I have an idea for a roguelike where you lead a group of @’s, and teach them things.  Over time, you develop a culture that may or may not jive with the other groups in the game.

I don’t know.  The hardest part of this challenge is that you have too much time to think.  Ludum Dare is easy.  48 hours… unknown theme… do  it!  For this one, the waiting and possibilities are the hardest part.

Anyhow… off to figure this one out.  Hopefully, by the next update, I will have a concrete idea nailed down, and then, that will leave me a week to plan.

But then.. there’s this back-end programming that needs to happen…