Previous Blog Next Blog
Prev/Next Blog
by date

Dev Diary #4 - In with the old!

Dev Diary #4 - In with the old!
Name:Gareth Fouche
Date Posted:Jan 27, 2006
Rating:Not Rated
Public:YES
Comments:YES
RSS Feed:GarageGames Blog feedor Subscribe with .
Profile Page:View profile page for Gareth Fouche

Blog post
Well, I've had very little time to program this week, but in the spirit of "at least one dev post a week" I'll write about it anyway.

So, I've been thinking a little bit, mainly about the progress I'd made previously, before I had slacked off for a few months. I talked about it in my "Plotting my mistakes" post, about how I'd spent time trying to make whatever I was working on at the time "perfect", and in the process made it too complicated. Well, when I started again recently, I'd pretty much decided to start afresh, scrap the old code.

But I was thinking about it, and looking at it again, my designs weren't actually that crazy. For instance, the networked journaling system. Now, on the one hand, it sounds unnecessary, but, on the other, Torques design IS a client-server architecture. Even in single player mode. Trying to work against that is silly, and will result in lots of hacks and headaches to get around it, sending commands in script etc. For example, with the journal system, the server needs to be able to query quest status, so you can trigger events etc, and the client needs to be able to pop up his journal and see his quest status.

Now, I could make two seperate entities, and simply make it that the server tells the client of new quests via client command script calls. But its a bit silly, and doing it manually is prone to error. Instead, I coded up an object that automatically passes on the data to the clients ghosted object. Ie, its the same thing, but handled behind the scenes, by the code, instead of in script. The only real difference is that its "cleaner".

After thinking about it a bit, I came to the conclusion that its definately a waste to chuck out all that development. Some of what I said applies, the code was a bit more complicated than it needed to be, but nothing that a little work couldn't rectify.

So thats my current task, porting my old code into my existing project and cleaning it up. I had a spell/spellbook component, an inventory system, a journal/quest system, and the RPG Dialogue resource in there. Getting these things in will boost my development nicely, a persistent world where you can interact with things, talk to people, travel to different areas, pick up and use items, and do quests? Hell yeah. Now we're getting somewhere. :D

Haven't actually gotten there yet though ;). Spent last night working on the spell/spellbook system, which some people might know from the resource I posted a while back. For anyone who does, and had problems with it, you'll be happy to hear that in the process of "cleaning it up", I have made it simpler and easier to plug into TGE. Its now something you can just plonk into your project and compile and it runs, no modifying Player etc. When I get some time I will bundle it up, check it over again, and upload it. Hopefully this weekend.

The spellbook system doesn't sound like much, until you consider that it is actually a networked container of objects. You add spells to it on the server, it updates the client seamlessly, etc. My inventory/journal systems are just extensions to it. So getting it up and running means those two should be a snap.

Even better, I got it working with the Save/Load system! Yay! So now your spellbook is persistent, which, based on the fact that my inventory/journal is almost the same, means it won't be long before those are too!

It wasn't particularly hard to achieve this, but its just nice to see it working. Here's a shot of the spellbook (exciting I know, hooray for beige), when I get the chance I want to change this to use that cool new tab-book gui panel that was added to 1.4.




Well, thats all for now.

Recent Blog Posts
List:08/19/08 - Korrinport Reloaded
07/18/08 - SoW - More concept art
07/09/08 - It may not be Oblivion...
06/24/08 - Celebratory
05/13/08 - The Gingerbread Villa
04/14/08 - SoW - Some concept art
04/02/08 - Blog of War
02/28/08 - Scars of Bloom

Submit ResourceSubmit your own resources!

Travis Wood   (Jan 29, 2006 at 06:00 GMT)
I SEE??? NO I DONT!!

Dave Young   (Feb 17, 2006 at 11:43 GMT)
Progress is important, I'm glad you're making some! I also found the DB functions to be a Godsend.
Thanks for the tip about your spellbook resource, I will check it out.

You must be a member and be logged in to either append comments or rate this resource.