Tuesday, May 19, 2009

More Testing and Another Playtester.

Today is my birthday! 45 today... boy... enough about that already!

I'm pleased to say I've had another playtester come on board, in the form of Kira'athu, another respected Neverwinter community member, better known to some over at the vault as gpudney. Thanks to some constructive comments from him I've made a few cosmetic changes to further enhance the immersion of the module, and progress is going well.

One of the more significant changes is that I've now upgraded to the latest version of CEP. I was initially against this, but a bug surfaced where a newer versioned player would witness a couple of minor aesthetic flaws, so decided to take the plunge. So as of now, "The Relbonian Chronicles" will require CEP 2.2.

Another reason for taking the plunge is that my earlier DM sandbox work "Muddles in Milton" is now going to receive an official review. As such, a request was made to update the work to CEP 2.2 and DMFI 1.09, so I figured if I was going to update the work for one then I may as well do both. My biggest fear with doing so was that the Relbonian specific tlk file would require re-working to perform with the latest CEP, but thanks to a program I found on the vault, I was able to merge the existing tlk file with the latest CEP one without problems.

Having made the upgrade, I thought I should test the existing work again myself, and in the process uncovered a couple of bugs missed by my playtesters. Minor issues - a spelling mistake and malfunctioning journal that had a conversation behave strangely, but it's nice to have caught them and they are now fixed.

I've been doing more work to my henchman, placing triggers that activate certain conversation nodes, which incidentally, contain different reactions depending on the reputation the player has with them, so expect some amusing arguments. ;) I've also started work on the final journey that will have the player venture to a castle for the final part of the module and expect to start populating it soon with combat encounters, so overall progress is good.

Right. I have to go now. My son wants me to build his trainset!

Tata for now, and happy gaming all. :)

Thursday, May 07, 2009

Screen Caps

Thought it was about time I showed you some proof of progress, so here it is :)









Saturday, May 02, 2009

A Deadly Bug

Some time ago... possibly last year, I explained the death system I wanted in chapter 1 to Lance Botelle, and he was kind enough to supply me with some scripts that would hopefully have it working. Technically, he did have it working, but... allow me to explain...

What this first module required was as follows:

  1. Up to a certain point (visiting a lighthouse), death would mean game over, with no respawn option. I felt that I could tie in some of the developing story into the respawn system to help make the story more immersive and death feel more real early on in the game.

  2. Once the lighthouse is reached, it becomes apparent that it's possible to return from death there for a limited amount of time owing to the lighthouse co-existing in Limbo (the plane that the dead travel upon - see accompanying pic). It does mean however that the player has to retrace his steps to where he died, but at least it's less frustrating than not being able to come back at all. So, after the lighthouse has been discovered, death should result in the player teleporting to Limbo, but able to return to the land of the living via the lighthouse.

  3. Later in the module, it becomes apparent that the lighthouse method can no longer be used because of how the story has developed, but another method becomes available in the form of soul crystals. As long as a player has some, he should be able to respawn on the spot.
Early testing of the system Lance had scripted for me looked positive. In case 1, the GUI panel appeared with no respawn option - great! In case 2, the player went to Limbo - woohoo!

Unfortunately I hadn't got around to testing case 3 until a couple of nights ago. While technically it did what I had asked for, respawned the player and removed a soul crystal, it did it in the same manner as case 2, in that no GUI panel came up. It just happened automatically. Now in case 2 I liked the fact that it did it like that. The first thing a player experiences when venturing to Limbo is disorientation. He asks where he is and has to be told he is dead. The fact that no GUI panel appears with the respawn option helps add to the feeling of "what just happened" when arriving in Limbo - perfect.

In contrast, case 3 didn't feel right at all. I wanted to have the GUI panel appear to give a sense of having died as opposed to looking like you'd just got up again after falling over, so I did a terrible thing... I got brave and started to tinker with it myself.

I discovered that the routine Lance had made rested exclusively within the "ondeath" script, so logically concluded I needed to transfer case 3 to the "onrespawn" script. That's when it all started to go horribly wrong. At first it wouldn't work at all, so I started tampering with it some more, and along the way all the logic got screwed up. Eventually I figured out that because I'd changed the script where the routine rested, my variable names were doomed from the start. Calling a target referred to as "odead" in a respawn script should have gave the game away early on really - doh!


So, I'd wasted a whole night screwing it all up, but the good news is that I managed to fix it after a couple of laborious hours tonight consulting the Lexicon. I'm glad I did though, because I discovered how to place text in the GUI panel (This is the article that helped me.). This has meant I've been able to improve on the immersion even more by using text relevant to the story instead of the standard random game hints that can appear. What this means is that by further editing of the "ondeath" script I now have messages appear in the GUI panel such as "You are currently unable to return to the land of the living." for case 1, and for case 3, either a message explaining that a Soul Crystal will be used for respawning, or that the player has no soul crystals remaining (with the respawn button vacant).

Please excuse me while I let out a small scream of elation ;)

WOOHOOO!


It's always great if you can solve something yourself :)