Still here...
I haven't posted for a couple of days, because I've been totally unable to work on the game. Real life can be absorbing! I hope that this week will be less frantic, and I'll be able to report some progress soon...
This is the development diary of the roguelike game Quest: a quite simple game written in Python, mainly for learning purposes.
I haven't posted for a couple of days, because I've been totally unable to work on the game. Real life can be absorbing! I hope that this week will be less frantic, and I'll be able to report some progress soon...
Ok, I haven't had much time to do anything this week - crazy week at work. Still, a couple of features have gone in these last few days:
Well, in the end I did have time to polish it out before the weekend was over. The bugs have been solved, and I'm very happy I made it in time, since next week will be crazy and I doubt I'll be able to work on Quest at all.

Even though I did finally decide to make a 0.1.2 release this weekend, I doubt it will happen. I have a couple of nasty bugs I can't allow in the release, and trying to fix them has made it impossible to work on the other two necessary things for a release: re-writing the documentation, and making a Mac port.
So, besides some more bug-fixing, two little new features put in today:
Well, the answer to my problem seems to come from an unexpected place: threading! I'll try to explain briefly:
Some of the improvements I mentioned yesterday are fixed for the next version : portals now behave properly, and light sources don't light up walls when you're on the other side of the wall.
Although I haven't had much time to work on the game for the past few days, I have fixed several ugly things that shouldn't have been there, so the next release is nicer: allowing Backspace to delete characters when entering strings (this was working with curses, but the port to SDL broke it), and more importantly (I'm very glad this works now): light sources now update correctly when a door opens or closes.
Well, I managed to get the windows binary working, yay! There is absolutely nothing new in this version except the fact that now the game is a graphical window (with ascii graphics, of course), and that there is a separate, binary windows port so windows users don't need python to play the game.


Well, a few pieces of good news this time:
Well, I am making an attempt at using pygame instead of curses. So far, it's being very easy (as I would expect from python). I have a working main window, and the three sub-windows reasonably set up, the intro is working, and the choice-list system is working as well.
I'm a little frustrated today. It turns out QuestRL will never run in Windows as it is - because of the lack of curses. I have several options right now:
Well, it's finally here: the first public release of Quest. Not that there's much to show! The help files are done, and the game is as polished as I think is necessary for such an early release. If you want to try it, you can grab it here. Remember that it's not very playable right now, but you might have fun playing with the module editor and make some adventures!


That darn helm was pretty easy to find, actually. The starting module is very silly and doesn't properly show the features of the game, but oh well. Too tired to write a better one.
I've cleaned up the code, documented stuff, fixed bugs, and changed a couple of little details so the game is neater. I've also done everything I think is needed for the GPL license stuff (adding tags to all source files, including a COPYING.txt file, and a disclaimer when the programs start).
So after consulting with Geli (my wife, who has read quite a bit about software licenses) I've reached a decision: when I release Quest 0.1.0, it will be under the GPL.
Ok, so once again showing how freaking fast it is coding in Python, quests are in (which is good, since that's the name of the game!)...yay!
Keys and locks are in: having the right key, a door can be locked and unlocked. Eventually, there could be more than one key that unlocks a door, or a key that unlocks more than one door, but for now I'm keeping it 1:1.
Click on a screenshot to see it full-size, of course. Here goes:




So, here it is. I've decided to keep a development diary for Quest, probably for no good purpose. I didn't post anything before now because there was little to show (not that it's very exciting now!)