Neverwinter Nights has now received its latest and final patch in the form of 1.69, adding even further opportunities for creativity from would be builders.
Possibly one of the most impressive additions is the inclusion of new tilesets, one of which allows the inclusion of much more rustic mediaeval style buildings than what was previously available, including the ability to build castles. This came as something of a mixed blessing to me, as part of chapter one is to take place within a castle, and I had already built much of it in the old city style available in 1.68. At first I thought it made sense to replace the area with the wonderful new tileset, after all, when I finally get to release the module, players will be expecting to see something new, but alas, there is a problem (for me at least) that I don't seem able to overcome. The castle in question is situated on cliffs overlooking a desert. The new tileset can place the castle on cliffs, but only with sea at the bottom. I've tried hiding the sea by messing with the fog settings, but the results are unsatisfactory, making the sea still visible while hiding distant castle walls. While it's true that the old version of the castle can't make use of cliffs and therefor relies on a combination of the edge of the area and restricted views from the battlements, it does have the advantage of having already been created along with its accompanying interior areas.
So...I have a dilemma. Do I use my existing areas with the potential of dissapointing players, or create new ones with the much improved castle look while hoping no one questions why there is water at the bottom of the cliffs? Comments would be most welcome on this subject.
Thursday, July 24, 2008
Tuesday, July 01, 2008
1st Draft of Module Description
I thought it was about time I gave the work in progress module a description, and that it would be a good idea to share it with you here. It might change between now and when the module is finished, particularly if I receive any helpful comments (hint hint ;) )...
"The Relbonian Chronicles is set in its own unique world and mythology, designed to have its story unfold through the participation of several key characters.
As such, "Chapter One" is designed to be played with the Dwarven Fighter called "Gerbilaf Bandiwide" which should have been included with this module. Please note that playing with any other character will not only spoil your enjoyment but also render parts of the module impossible to play. The module is designed to gently introduce you to the mythology and setting, which will help you understand the morals and motivations of future characters/classes in future chapters, so if you think you'd prefer to await a chapter featuring a class of your choosing, it's recommended that you still play this to enhance your experience of the overall story.
This chapter begins with Gerbilaf entering his favourite tavern in the city of Kerral after a hard week working in the local mines. Not one to shy away from danger, he will soon find himself acting as a messenger for none other than the God of...well...you'll have to play to find out ;)
To stay up to date with the world of Relbonia, visit www.quillmaster.co.uk.
I hope you enjoy your game. :)
Quillmaster"
"The Relbonian Chronicles is set in its own unique world and mythology, designed to have its story unfold through the participation of several key characters.
As such, "Chapter One" is designed to be played with the Dwarven Fighter called "Gerbilaf Bandiwide" which should have been included with this module. Please note that playing with any other character will not only spoil your enjoyment but also render parts of the module impossible to play. The module is designed to gently introduce you to the mythology and setting, which will help you understand the morals and motivations of future characters/classes in future chapters, so if you think you'd prefer to await a chapter featuring a class of your choosing, it's recommended that you still play this to enhance your experience of the overall story.
This chapter begins with Gerbilaf entering his favourite tavern in the city of Kerral after a hard week working in the local mines. Not one to shy away from danger, he will soon find himself acting as a messenger for none other than the God of...well...you'll have to play to find out ;)
To stay up to date with the world of Relbonia, visit www.quillmaster.co.uk.
I hope you enjoy your game. :)
Quillmaster"
Sunday, June 01, 2008
Conversations
Yes, I'm still here! Things have slowed a little now I've been concentrating on a conversation file, so I thought that would be as good a subject as any to post some tips here and convince you all that work was still taking place.
A thing I see often asked is how to make an NPC know if they've been spoken to before. While it's a fairly simple process to just set a variable and check for it, if you apply this to every conversation you have you'll soon be drowning in scripts and variables. Fortunately there is a way round this that can have the same scripts work for any conversation. It's a very useful method but for the life of me I can't remember where I saw it originally applied, so if these scripts were your invention, drop me a line and I'll give you full credit for them.
Basically there are 2 scripts that both need to be attached to the very first line of conversation possible with any given NPC, so for example, the first time a player converses with a shop keeper, the opening line might be "Can I help you?", whereas a second visit might earn the response "Oh hello again sir/madam. Couldn't keep you away eh?". To achieve this, the following script needs to be attached to the "Text Appears When" event:
//SCRIPT TO PUT ON TEXT APPEARS WHEN OF
//THE FIRST LINE
//- THE ONE THAT SHOULD ONLY BE SPOKEN
//ONCE
//NOTE, THAT LINE MUST HAVE A REPLY, IF ONLY
//AN END DIALOG!
int StartingConditional()
{
object oPC=GetPCSpeaker();
string sTag=GetTag(OBJECT_SELF);
return (GetLocalInt(oPC, sTag)==0);
//only returns true when variable is 0
}
Using the same line of conversation, the following script is attached to the "Actions Taken" event:
//PUT THIS ON ACTION TAKEN OF THE SAME LINE
void main()
{
object oPC=GetPCSpeaker();
string sTag=GetTag(OBJECT_SELF);
SetLocalInt(oPC, sTag, 1);
}
That's it! The same two scripts can be used for all your conversations with no need to create new ones for every NPC.
It's worth noting that there are other methods of controlling what lines of conversation get displayed when activated. The "Text Appears When" tab can be used for pretty much any conditional you care to think of. If for example you want an opening line that says "I'm sorry, you'll have to put your weapon away if you expect me to talk to you", then all you need is a script that checks to see if the speaker is armed. The following script does exactly that:
#include "x2_inc_itemprop"
int StartingConditional()
{
object oPlayer = GetPCSpeaker();
object WeaponRH = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPlayer);
object WeaponLH = GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oPlayer);
if(IPGetIsMeleeWeapon(WeaponRH) == TRUE GetWeaponRanged(WeaponRH) == TRUE IPGetIsMeleeWeapon(WeaponLH) == TRUE GetWeaponRanged(WeaponLH) == TRUE){return TRUE;
}
return FALSE;
}
Journal entries can also be used as conditionals. The following script checks to see if the journal entry has been started (ie-is set to 1 or greater). If it has, then the line of conversation is ignored, if not, then it is used:
int StartingConditional()
{
object oPC = GetPCSpeaker();
int nInt;
nInt=GetLocalInt(oPC, "NW_JOURNAL_ENTRYyour_journal_name_here");
if (nInt >= 1) return FALSE;
return TRUE;
}
For a conversation to come across as more polished, there are a couple of other tricks you can use which don't even rely on scripts. The first method is to study the lines you've used and consider if an animation would help portray what is being said. If you look under the "Other Actions" tab you'll see a pull down menu with various animation options.
The other method involves a lot more work but can be very satisfying when used well, and that's using the addition of sound. You'll find the sound options under the same tab as the animation options. It does require a little work on your behalf however as you'll need to figure out what the various sound files for the voiceset of your NPC are called. Fortunately life is made a little easier in this respect thanks to some community work over on Neverwinter Vault, where you can find a descriptive list of the various voice sets available. You can use this list to find the file names of the voicesets you have assigned to your NPC, and once you know the filename you should be able to find different responses you can use in the required voice, such as laughter or a simple "Yes". Sometimes, if you're really lucky, you might even find a line of speech from the official campaigns that suits your needs, or even inspires you to take a plot in a new direction.
That's all I'm going to cover for now. Before I go however I'm pleased to announce that I have acquired some webspace, so hope to have my old roleplay related site back online soon. I'm currently contemplating how to lay it out, as some of the old content will be made redundant by what this blog covers.
Bye for now and happy building! :)
A thing I see often asked is how to make an NPC know if they've been spoken to before. While it's a fairly simple process to just set a variable and check for it, if you apply this to every conversation you have you'll soon be drowning in scripts and variables. Fortunately there is a way round this that can have the same scripts work for any conversation. It's a very useful method but for the life of me I can't remember where I saw it originally applied, so if these scripts were your invention, drop me a line and I'll give you full credit for them.
Basically there are 2 scripts that both need to be attached to the very first line of conversation possible with any given NPC, so for example, the first time a player converses with a shop keeper, the opening line might be "Can I help you?", whereas a second visit might earn the response "Oh hello again sir/madam. Couldn't keep you away eh?". To achieve this, the following script needs to be attached to the "Text Appears When" event:
//SCRIPT TO PUT ON TEXT APPEARS WHEN OF
//THE FIRST LINE
//- THE ONE THAT SHOULD ONLY BE SPOKEN
//ONCE
//NOTE, THAT LINE MUST HAVE A REPLY, IF ONLY
//AN END DIALOG!
int StartingConditional()
{
object oPC=GetPCSpeaker();
string sTag=GetTag(OBJECT_SELF);
return (GetLocalInt(oPC, sTag)==0);
//only returns true when variable is 0
}
Using the same line of conversation, the following script is attached to the "Actions Taken" event:
//PUT THIS ON ACTION TAKEN OF THE SAME LINE
void main()
{
object oPC=GetPCSpeaker();
string sTag=GetTag(OBJECT_SELF);
SetLocalInt(oPC, sTag, 1);
}
That's it! The same two scripts can be used for all your conversations with no need to create new ones for every NPC.
It's worth noting that there are other methods of controlling what lines of conversation get displayed when activated. The "Text Appears When" tab can be used for pretty much any conditional you care to think of. If for example you want an opening line that says "I'm sorry, you'll have to put your weapon away if you expect me to talk to you", then all you need is a script that checks to see if the speaker is armed. The following script does exactly that:
#include "x2_inc_itemprop"
int StartingConditional()
{
object oPlayer = GetPCSpeaker();
object WeaponRH = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPlayer);
object WeaponLH = GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oPlayer);
if(IPGetIsMeleeWeapon(WeaponRH) == TRUE GetWeaponRanged(WeaponRH) == TRUE IPGetIsMeleeWeapon(WeaponLH) == TRUE GetWeaponRanged(WeaponLH) == TRUE){return TRUE;
}
return FALSE;
}
Journal entries can also be used as conditionals. The following script checks to see if the journal entry has been started (ie-is set to 1 or greater). If it has, then the line of conversation is ignored, if not, then it is used:
int StartingConditional()
{
object oPC = GetPCSpeaker();
int nInt;
nInt=GetLocalInt(oPC, "NW_JOURNAL_ENTRYyour_journal_name_here");
if (nInt >= 1) return FALSE;
return TRUE;
}
For a conversation to come across as more polished, there are a couple of other tricks you can use which don't even rely on scripts. The first method is to study the lines you've used and consider if an animation would help portray what is being said. If you look under the "Other Actions" tab you'll see a pull down menu with various animation options.
The other method involves a lot more work but can be very satisfying when used well, and that's using the addition of sound. You'll find the sound options under the same tab as the animation options. It does require a little work on your behalf however as you'll need to figure out what the various sound files for the voiceset of your NPC are called. Fortunately life is made a little easier in this respect thanks to some community work over on Neverwinter Vault, where you can find a descriptive list of the various voice sets available. You can use this list to find the file names of the voicesets you have assigned to your NPC, and once you know the filename you should be able to find different responses you can use in the required voice, such as laughter or a simple "Yes". Sometimes, if you're really lucky, you might even find a line of speech from the official campaigns that suits your needs, or even inspires you to take a plot in a new direction.
That's all I'm going to cover for now. Before I go however I'm pleased to announce that I have acquired some webspace, so hope to have my old roleplay related site back online soon. I'm currently contemplating how to lay it out, as some of the old content will be made redundant by what this blog covers.
Bye for now and happy building! :)
Thursday, April 24, 2008
Hak Progress
Thanks to being given a day off from house-husband duties recently, I made some real progress with the Hak pack that is to accompany this module.
This is my first work that requires a hak pack. Although it was very tempting to make do without one to avoid the work involved, I couldn't deny the fact that it would make a huge difference in tieing the module more closely to the storyline it contained. Thanks to some tuition from another NWN community member (Lance Botelle...thanks Lance), I've been able to tackle it.
For those of you asking yourself how The Relbonian Chronicles will benefit from the hack, it's important to emphasise how the world of Relbonia sits apart from traditional D&D settings. Relbonia is a world of its own, complete with mythology. The mythology isn't the only thing that differs from the conventional however. The very fact that it has a mythology of its own affects its history too, resulting in a unique background where magic is either devine or mystical. There is also a limit to the character classes that can be played. Part of the reason for this is a desire to return to the good old days of D&D, when character development was more about developing personality than numbers. Other than that, it keeps things far simpler for developing the mod, particularly when one considers the mythology involved.
So, first of all there is the class limitations. Although the player will be expected to play pre defined characters (more on them at a later date), I wanted to make sure players didn't go off on a tangent when leveling up by selecting a class that didn't fit with storyline, so classes are restricted to Fighter, Rogue, Sorceror, Cleric, and Druid. The hak ensures that only these classes are selectable. Of course, it's advisable to stick to the class of the pre defined character when playing any particular module, but I didn't want to have to introduce a new hak for specific modules, so the one hak will serve all.
Magic is where the major differences are taking place. First of all, as Relbonia is a setting of its own, I wanted to remove any references to Forgotten Realms etc, so spells that are named after a particular person (such as "Bigby" for example) have been changed to fit in with the Relbonian setting. There is also a clear distinction between divine and mystical magic. Divine magic is granted by the Relbonian Gods to those who worship them, whereas Mystical magic has been derived by the Sorcerors who have learnt to tap powers held within the land. As a result, Clerics and Druids (Clerics serve the Druids, while Druids serve the Gods/land) look down upon Sorcerors, whom they consider blasphemous and damaging to the land. For this reason I wanted there to be a clearer distinction between the two types of magic, so many of the divine spells (ie - those used by Clerics and Druids) have been renamed to reflect their connection to the
Gods/Relbonian mythology. While some of you may think this may be overly daunting from a player perspective having to cope with the renamed spells, the transition should be a gentle one. The first module involves playing a Fighter, during which time they should be able to familiarise themselves with the setting. I'm currently undecided whether to involve a Sorceror in the second or third module, but whatever the case, it will be before playing a Cleric, and Sorcerors have far fewer renamed spells than Clerics, so by the time they get to play a Cleric they should be far more familiar with what the spell names are likely to mean, such as "Mud of Muthna" shown here. Of course, this is also an excellent opportunity for me to further add to the available history/mythology of the realm by having the spell explanations themselves containing little nuggets of information, so having to read up on a spell isn't nescessarily a bad thing.
I've managed to rename almost everything I intend to, and having tested the hak, I'm pleased to announce that only one error remains, although I should point out that this is after many many tests and correcting many errors. I still have to tackle some spell descriptions, but this does mean that a major portion of the hak work has been done.
Considering that playing a user of magic is not the goal of the first module, some of you may be wondering why I am already dedicating time to the hak at this stage. The answer is simple. I want spells used by enemies/NPCs to show up with their new names so as to further immerse the player.
That's all the gossip for now. If there's something specific you'd like to know why not drop me a line here. Would be nice to know that some interest is developing :)
This is my first work that requires a hak pack. Although it was very tempting to make do without one to avoid the work involved, I couldn't deny the fact that it would make a huge difference in tieing the module more closely to the storyline it contained. Thanks to some tuition from another NWN community member (Lance Botelle...thanks Lance), I've been able to tackle it.
For those of you asking yourself how The Relbonian Chronicles will benefit from the hack, it's important to emphasise how the world of Relbonia sits apart from traditional D&D settings. Relbonia is a world of its own, complete with mythology. The mythology isn't the only thing that differs from the conventional however. The very fact that it has a mythology of its own affects its history too, resulting in a unique background where magic is either devine or mystical. There is also a limit to the character classes that can be played. Part of the reason for this is a desire to return to the good old days of D&D, when character development was more about developing personality than numbers. Other than that, it keeps things far simpler for developing the mod, particularly when one considers the mythology involved.
So, first of all there is the class limitations. Although the player will be expected to play pre defined characters (more on them at a later date), I wanted to make sure players didn't go off on a tangent when leveling up by selecting a class that didn't fit with storyline, so classes are restricted to Fighter, Rogue, Sorceror, Cleric, and Druid. The hak ensures that only these classes are selectable. Of course, it's advisable to stick to the class of the pre defined character when playing any particular module, but I didn't want to have to introduce a new hak for specific modules, so the one hak will serve all.
Magic is where the major differences are taking place. First of all, as Relbonia is a setting of its own, I wanted to remove any references to Forgotten Realms etc, so spells that are named after a particular person (such as "Bigby" for example) have been changed to fit in with the Relbonian setting. There is also a clear distinction between divine and mystical magic. Divine magic is granted by the Relbonian Gods to those who worship them, whereas Mystical magic has been derived by the Sorcerors who have learnt to tap powers held within the land. As a result, Clerics and Druids (Clerics serve the Druids, while Druids serve the Gods/land) look down upon Sorcerors, whom they consider blasphemous and damaging to the land. For this reason I wanted there to be a clearer distinction between the two types of magic, so many of the divine spells (ie - those used by Clerics and Druids) have been renamed to reflect their connection to the
Gods/Relbonian mythology. While some of you may think this may be overly daunting from a player perspective having to cope with the renamed spells, the transition should be a gentle one. The first module involves playing a Fighter, during which time they should be able to familiarise themselves with the setting. I'm currently undecided whether to involve a Sorceror in the second or third module, but whatever the case, it will be before playing a Cleric, and Sorcerors have far fewer renamed spells than Clerics, so by the time they get to play a Cleric they should be far more familiar with what the spell names are likely to mean, such as "Mud of Muthna" shown here. Of course, this is also an excellent opportunity for me to further add to the available history/mythology of the realm by having the spell explanations themselves containing little nuggets of information, so having to read up on a spell isn't nescessarily a bad thing.I've managed to rename almost everything I intend to, and having tested the hak, I'm pleased to announce that only one error remains, although I should point out that this is after many many tests and correcting many errors. I still have to tackle some spell descriptions, but this does mean that a major portion of the hak work has been done.
Considering that playing a user of magic is not the goal of the first module, some of you may be wondering why I am already dedicating time to the hak at this stage. The answer is simple. I want spells used by enemies/NPCs to show up with their new names so as to further immerse the player.
That's all the gossip for now. If there's something specific you'd like to know why not drop me a line here. Would be nice to know that some interest is developing :)
Monday, April 14, 2008
Immersing the Player
The Relbonian Chronicles is a story, and as a story it's important to immerse the player within it if they are to truly enjoy the experience. One of the methods I'm employing to achieve this is to have the character interact with their environment. It's a fairly easy method to employ, involving little more than triggers in the areas where you want a character to make a comment. Such comments can be scripted so that they only occur once.
For those of you wondering how to do it, here's a simple script that will have the player character say something when they enter the trigger area for the first time by placing the script in the "on enter" area of the trigger. Alternatively, instead of using a trigger, you can also place the script in the "on enter" of an area, although I'd advise you build in a delay so that the comment gets noticed.
//Put this script OnEnter
void main()
{
object oPC = GetEnteringObject();
if (!GetIsPC(oPC)) return;
int DoOnce = GetLocalInt(OBJECT_SELF, GetTag(OBJECT_SELF));
if (DoOnce==TRUE) return;
SetLocalInt(OBJECT_SELF, GetTag(OBJECT_SELF), TRUE);
AssignCommand(oPC, ActionSpeakString("Line spoken here."));
}
Pretty simple, and easily effective depending on how you use it. Here's some example statements that could be used to give you some ideas:
On getting close to a corpse that's hidden from view - "What's that awful smell?!"
On approaching a statue - "That's beautiful!"
A Dwarf moving through a cave - "Hmmm...feels to me like there's a slight incline here."
Walking on a beach - "Ah...there's nothing I like more than feeling the sea breeze against my face."
On hearing a noise (which could be played via the same "on enter" script with a delay before the comment) - "What was that?"
These are only examples, but should enable you to see how you can take that extra step in making your module more immersive.
Stay tuned for an update on Chronicle progress soon. :)
For those of you wondering how to do it, here's a simple script that will have the player character say something when they enter the trigger area for the first time by placing the script in the "on enter" area of the trigger. Alternatively, instead of using a trigger, you can also place the script in the "on enter" of an area, although I'd advise you build in a delay so that the comment gets noticed.
//Put this script OnEnter
void main()
{
object oPC = GetEnteringObject();
if (!GetIsPC(oPC)) return;
int DoOnce = GetLocalInt(OBJECT_SELF, GetTag(OBJECT_SELF));
if (DoOnce==TRUE) return;
SetLocalInt(OBJECT_SELF, GetTag(OBJECT_SELF), TRUE);
AssignCommand(oPC, ActionSpeakString("Line spoken here."));
}
Pretty simple, and easily effective depending on how you use it. Here's some example statements that could be used to give you some ideas:
On getting close to a corpse that's hidden from view - "What's that awful smell?!"
On approaching a statue - "That's beautiful!"
A Dwarf moving through a cave - "Hmmm...feels to me like there's a slight incline here."
Walking on a beach - "Ah...there's nothing I like more than feeling the sea breeze against my face."
On hearing a noise (which could be played via the same "on enter" script with a delay before the comment) - "What was that?"
These are only examples, but should enable you to see how you can take that extra step in making your module more immersive.
Stay tuned for an update on Chronicle progress soon. :)
Saturday, March 15, 2008
The Art of Storytelling
Telling a good story in Neverwinter Nights can sometimes be overtaken by the requirement to include quests, otherwise, how is the player to progress? If care isn't taken. quests can suffer from feeling out of place with the story, something that can happen for a number of reasons. Take a non-linear adventure for example. In order to make the module feel free and unrestricted, a quest creator can suddenly find himself making quests that have nothing to do with the main story, and this can have a detrimental effect on immersing the player into the story.
While the "Relbonian Chronicles" will ultimately be linear, the nature of the unfolding story is such that quests are required between accepting and completing the main quest to give the player minor goals before his ultimate goal. The very nature of the main goal means that the minor quests would appear to have nothing to do with the main, so how do we keep the player immersed in the story? This isn't as difficult as one would first imagine. Allow me to explain.
Behind every module should be a main plot, the completion of which will end the adventure. While anything done on route might not be connected or even nescesary, we can tie them together in other ways so that the player is further immersed in their story. Let's take a very basic idea as an example. The player is hired to slay a Dragon that lives in a cave somewhere in the mountains. An obvious side quest might include stumbling across a burning village shortly after the Dragon has attacked it and helping to put out the fires, but what I'm trying to do is include more subtle links, making the player aware that they are part of something bigger without thrusting such obvious quests in their faces. Better to have them stumble across something which on first glance seems to be unconnected. So, in the above Dragon scenario, perhaps they find a farmer who asks for help thatching the roof of his cottage. Simple enough, just collect some materials for him, but if pressed on how the roof became damaged, the farmer blushes and seems reluctant to explain. On further pressing, he'd eventually reveal a cow fell through from the sky in the middle of the night (having been dropped by the Dragon in flight). Better still, he blames some old crone who lives on the next farm, believing she is guilty of witchcraft. Think of the consequences of what's going on in the gameworld and how you can tie quests into it. Perhaps the player encounters a caravan of evacuees fleeing their village through fear of a Dragon attack. The wagon has broken down and the villagers need help fixing it. How about why the Dragon has become enraged in the first place? Has someone in the village suddenly become wealthy through raiding the Dragon lair? Is there a new merchant in town selling suspiciously large eggs?
Okay, so this is a bit basic, but you can see what I'm driving at. If you've frequented these pages before, you probably already know that the main quest in part one of the "Chronicles" involves the God of Death sending the player to a certain location. The main difficulty I faced here was creating things to do on the journey. Initially they should appear to have nothing to do with why the God of Death has sent the player on a mission, which brings a new problem...would the player want to do some irrelevant task while on a mission set by a God? Rather than shy away from the problem, one should think about how acceptance/refusal to do a quest might influence the story, thus further enhancing the feeling of being involved in a bigger picture.
While "The Relbonian Chronicles" are ultimately linear, there are still options to take which can influence what happens around the player. One such example is a reward from the God of Death can differ depending on how the God views the player character, and this can be influenced by both conversation choices and quests undertaken. It's not yet fully implemented, but I mention it here as an example of further enhancing a storyline. I'd love to go into more detail, but don't want too many spoilers on this page, so you'll just have to play it when complete ;) Unfortunately progress is still slow owing to some bad news within the family, but rest assured it is something I intend to complete.
That's all for now. Stay tuned ;)
While the "Relbonian Chronicles" will ultimately be linear, the nature of the unfolding story is such that quests are required between accepting and completing the main quest to give the player minor goals before his ultimate goal. The very nature of the main goal means that the minor quests would appear to have nothing to do with the main, so how do we keep the player immersed in the story? This isn't as difficult as one would first imagine. Allow me to explain.
Behind every module should be a main plot, the completion of which will end the adventure. While anything done on route might not be connected or even nescesary, we can tie them together in other ways so that the player is further immersed in their story. Let's take a very basic idea as an example. The player is hired to slay a Dragon that lives in a cave somewhere in the mountains. An obvious side quest might include stumbling across a burning village shortly after the Dragon has attacked it and helping to put out the fires, but what I'm trying to do is include more subtle links, making the player aware that they are part of something bigger without thrusting such obvious quests in their faces. Better to have them stumble across something which on first glance seems to be unconnected. So, in the above Dragon scenario, perhaps they find a farmer who asks for help thatching the roof of his cottage. Simple enough, just collect some materials for him, but if pressed on how the roof became damaged, the farmer blushes and seems reluctant to explain. On further pressing, he'd eventually reveal a cow fell through from the sky in the middle of the night (having been dropped by the Dragon in flight). Better still, he blames some old crone who lives on the next farm, believing she is guilty of witchcraft. Think of the consequences of what's going on in the gameworld and how you can tie quests into it. Perhaps the player encounters a caravan of evacuees fleeing their village through fear of a Dragon attack. The wagon has broken down and the villagers need help fixing it. How about why the Dragon has become enraged in the first place? Has someone in the village suddenly become wealthy through raiding the Dragon lair? Is there a new merchant in town selling suspiciously large eggs?
Okay, so this is a bit basic, but you can see what I'm driving at. If you've frequented these pages before, you probably already know that the main quest in part one of the "Chronicles" involves the God of Death sending the player to a certain location. The main difficulty I faced here was creating things to do on the journey. Initially they should appear to have nothing to do with why the God of Death has sent the player on a mission, which brings a new problem...would the player want to do some irrelevant task while on a mission set by a God? Rather than shy away from the problem, one should think about how acceptance/refusal to do a quest might influence the story, thus further enhancing the feeling of being involved in a bigger picture.
While "The Relbonian Chronicles" are ultimately linear, there are still options to take which can influence what happens around the player. One such example is a reward from the God of Death can differ depending on how the God views the player character, and this can be influenced by both conversation choices and quests undertaken. It's not yet fully implemented, but I mention it here as an example of further enhancing a storyline. I'd love to go into more detail, but don't want too many spoilers on this page, so you'll just have to play it when complete ;) Unfortunately progress is still slow owing to some bad news within the family, but rest assured it is something I intend to complete.
That's all for now. Stay tuned ;)
Friday, February 15, 2008
Plodding On
Well...not a lot new to report, although I thought I'd share some good news which should help improve progress. For the past year spare time has been increasingly difficult to come by what with being a full time house husband caring for our son. While rewarding, I tend to be exhausted by the evenings with building being the last thing on my mind. Alas, while the weekends have at first seemed an opportunity to build while my wife took over from child rearing, the reality is the weekends are consumed by family visits and catching up with friends.
The good news is that I now own a laptop, meaning that when I venture to the inlaws, I no longer have to sit and watch something dull on television, but can instead fire up the laptop and get cracking with this module... well... that's the plan anyway ;) I've installed everything I need and all seems to run smoothly, although I will probably leave the more tedious work required for the hak on my main PC. The main reason for this is I'm using Microsoft Office to help keep track of where I am within the hak, and the laptop doesn't have Office installed.
The hak itself is still very much work in progress, but for those of you wondering, I shall I explain why I am going to the trouble of making one. As the module is set within its own world with its own mythology, magic works a little differently. Not only that, but many of the spells have either names or descriptions specifically tailored to the original Neverwinter setting, and I want to pull away from that, so many of the spell names are being replaced with new names specific to the "Relbonian" mythos.
Some of you might think this will make choosing spells a little tedious as players struggle to familiarise themselves with the new spell titles, but I believe it's a good opportunity to expand on the experience of playing in a new world setting, as some of the mythology will present itself to the players in the spell descriptions themselves. This won't matter too much for the first module in which the player assumes the role of a Fighter, but I'm keen to have the hak ready so that when creatures cast spells the player can see the new spell names cropping up. The hak should reveal itself to the full come part two of the saga, which I intend to tailor for a Sorceror to play.
That's all the news for now. Wish me luck at the inlaws ;)
The good news is that I now own a laptop, meaning that when I venture to the inlaws, I no longer have to sit and watch something dull on television, but can instead fire up the laptop and get cracking with this module... well... that's the plan anyway ;) I've installed everything I need and all seems to run smoothly, although I will probably leave the more tedious work required for the hak on my main PC. The main reason for this is I'm using Microsoft Office to help keep track of where I am within the hak, and the laptop doesn't have Office installed.
The hak itself is still very much work in progress, but for those of you wondering, I shall I explain why I am going to the trouble of making one. As the module is set within its own world with its own mythology, magic works a little differently. Not only that, but many of the spells have either names or descriptions specifically tailored to the original Neverwinter setting, and I want to pull away from that, so many of the spell names are being replaced with new names specific to the "Relbonian" mythos.
Some of you might think this will make choosing spells a little tedious as players struggle to familiarise themselves with the new spell titles, but I believe it's a good opportunity to expand on the experience of playing in a new world setting, as some of the mythology will present itself to the players in the spell descriptions themselves. This won't matter too much for the first module in which the player assumes the role of a Fighter, but I'm keen to have the hak ready so that when creatures cast spells the player can see the new spell names cropping up. The hak should reveal itself to the full come part two of the saga, which I intend to tailor for a Sorceror to play.
That's all the news for now. Wish me luck at the inlaws ;)
Saturday, December 22, 2007
Oh No! and Ho Ho Ho!
"Oh No!" because i've been drowning in tasks that have prevented me from any updates for quite a while, mainly due to a mixture of babysitting my son and Christmas shopping, which brings me neatly to the subject of "Ho Ho Ho!" Apart from an apology for the lack of updates recently, I also wanted to wish you all a Merry Christmas and prosperous New Year.
Here's hoping I'll get cracking again in the New Year and have something new to report soon :)
Here's hoping I'll get cracking again in the New Year and have something new to report soon :)
Tuesday, October 16, 2007
Books
Before I commence with the topic of this post, I should point out that the script shown in my last post entitled "Busy busy busy!" isn't shown as intended. There appears to be an error in the blog publishing software that removes certain characters. To view the script as intended, please refer to the comments left after the article, where Lance Botelle has been kind enough to show the script in its entirety.
Now, where was I? Ah yes, books. Books can add much to the atmosphere of a module and are often overlooked by builders. As Relbonia has a unique background and mythology, the importance of books is even higher than normal, requiring me to remove any reference to the default books and replace them with tomes of my own creation.
Books can fall into a variety of categories, sometimes requiring a different style in how they are written. For example, a book that simply covers a subject would just contain the actual content, possibly with a by line containing the name of the author to help add flavour, while a book significant to the plot might have a paragraph prior to actual content describing something else of importance.
The problem with books that just give a little background on your setting is that they can quickly become boring to the player, who may eventually decide that they simply aren't worth reading (a crime I myself committed in the original game), but how can one go about sprucing them up a little? A technique I try to employ is to give them something that not only adds flavour to your setting, but is also interesting to read, with the inclusion of information that may prove useful to the player elsewhere in your game.
As well as placing books within my module that discuss the mythology of Relbonia (which can also be read in this very blog), I shall also be including tomes that throw further light on the mythology in an indirect fashion. I've decided to post a few examples here to illustrate my ideas, and give you all a further taste of the world in which "The Relbonian Chronicles" are set:
THE FAVOURED OF MOYBALLACK
Other than the Ancients themselves, the Lith are regarded as the oldest race in all Relbonia. Indeed, some scholars openly debate that they are the race from which all other races derived, hence they are sometimes referred to as "The Old Ones".
Thought to have been created by Moyballack, it should come as no surprise that they originated from the sea and only later moved to the swamplands that they now favour.
They tend to keep to themselves, particularly as most other races regard them with low esteem due to their smell and repugnant nature. Over the years they have had a particularly hard time, gradually being shunned by those who fear them in their ignorance. While it is true to say that their slimy scaled skin and large soulless eyes give them a rather hostile appearance, most Lith are in fact reclusive in nature and quite prepared to leave the world to its' own devices. The only exceptions to this are usually the result of those who have been set upon, as they are very proud of the fact that they can be considered as original stock, and can be easily riled by what in their eyes are little more than egotistical inferior races.
Many Lith are known to follow the path of Mouys.
THE RELBONIAN CHRONICLES
The Relbonian Chronicles have been an important part of Relbonian society for many years, keeping citizens informed of news and events throughout the land, while helping to spread both faith and education to the far corners of the continent. Indeed, were it not for the Chronicle, many Relbonians would probably still lack the ability to read.
Laboriously penned by Druids in their great halls, they are sold as a means of funding for the Druid Temples.
News is spread via a network of both writers and runners, or in some cases even carrier pidgeons, although runners are considered more reliable, particularly as they tend to consist of apprentice Druids eager to impress their masters. When a runner reaches their destination, news is quickly copied so that the scribes there have a master to work from, then a fresh runner proceeds to the next destination. In favourable conditions, news has been known to span the continent in under a week.
It is now seen as a valuable commodity to the realm, allowing businesses to thrive by advertising their services in their own regional versions of the Chronicle. It is also highly favoured by the Faith Council which see it as a useful tool to maintain law and order throughout the realm.
THE EYES OF DARROK
"The Eyes of Darrok" are crystalised earth, thought to have been formed in the hands of Darrok himself.
The God of Rathna is said to have once materialised at Mad Mount to reward a Dwarf by the name of Tabanash Koovarn. As a show of gratitude for the kindness Tabanash had shown the earth, Darrok scooped some soil into his rock like hands and lifted it to his face, cupping his hands in the process. As he blew into the soil, he crushed it within his grasp, capturing the magical essence of his breath. When he unclasped his hands, a glowing gem was revealed which he then gave to Tabanash.
It should be said that while the story sounds authentic, Tabanash is generally regarded as quite mad, claiming himself to be a mighty Sorceror. Having said that, it may of course be the gem itself that grants him the power to make this claim.
There are many varieties of these gems that vary in size and function. Their most common form provides light, with the largest often used by lighthouses along the more treacherous coastlines of Relbonia. It is said that a stone such as this was broken into the smaller stones sometimes found in jewelry.
That's it for now. Watch this space for the next update installment, where I hope to go into more detail for the intended player characters.
Now, where was I? Ah yes, books. Books can add much to the atmosphere of a module and are often overlooked by builders. As Relbonia has a unique background and mythology, the importance of books is even higher than normal, requiring me to remove any reference to the default books and replace them with tomes of my own creation.
Books can fall into a variety of categories, sometimes requiring a different style in how they are written. For example, a book that simply covers a subject would just contain the actual content, possibly with a by line containing the name of the author to help add flavour, while a book significant to the plot might have a paragraph prior to actual content describing something else of importance.
The problem with books that just give a little background on your setting is that they can quickly become boring to the player, who may eventually decide that they simply aren't worth reading (a crime I myself committed in the original game), but how can one go about sprucing them up a little? A technique I try to employ is to give them something that not only adds flavour to your setting, but is also interesting to read, with the inclusion of information that may prove useful to the player elsewhere in your game.
As well as placing books within my module that discuss the mythology of Relbonia (which can also be read in this very blog), I shall also be including tomes that throw further light on the mythology in an indirect fashion. I've decided to post a few examples here to illustrate my ideas, and give you all a further taste of the world in which "The Relbonian Chronicles" are set:
THE FAVOURED OF MOYBALLACK
Other than the Ancients themselves, the Lith are regarded as the oldest race in all Relbonia. Indeed, some scholars openly debate that they are the race from which all other races derived, hence they are sometimes referred to as "The Old Ones".Thought to have been created by Moyballack, it should come as no surprise that they originated from the sea and only later moved to the swamplands that they now favour.
They tend to keep to themselves, particularly as most other races regard them with low esteem due to their smell and repugnant nature. Over the years they have had a particularly hard time, gradually being shunned by those who fear them in their ignorance. While it is true to say that their slimy scaled skin and large soulless eyes give them a rather hostile appearance, most Lith are in fact reclusive in nature and quite prepared to leave the world to its' own devices. The only exceptions to this are usually the result of those who have been set upon, as they are very proud of the fact that they can be considered as original stock, and can be easily riled by what in their eyes are little more than egotistical inferior races.
Many Lith are known to follow the path of Mouys.
THE RELBONIAN CHRONICLES
The Relbonian Chronicles have been an important part of Relbonian society for many years, keeping citizens informed of news and events throughout the land, while helping to spread both faith and education to the far corners of the continent. Indeed, were it not for the Chronicle, many Relbonians would probably still lack the ability to read.Laboriously penned by Druids in their great halls, they are sold as a means of funding for the Druid Temples.
News is spread via a network of both writers and runners, or in some cases even carrier pidgeons, although runners are considered more reliable, particularly as they tend to consist of apprentice Druids eager to impress their masters. When a runner reaches their destination, news is quickly copied so that the scribes there have a master to work from, then a fresh runner proceeds to the next destination. In favourable conditions, news has been known to span the continent in under a week.
It is now seen as a valuable commodity to the realm, allowing businesses to thrive by advertising their services in their own regional versions of the Chronicle. It is also highly favoured by the Faith Council which see it as a useful tool to maintain law and order throughout the realm.
THE EYES OF DARROK
"The Eyes of Darrok" are crystalised earth, thought to have been formed in the hands of Darrok himself.The God of Rathna is said to have once materialised at Mad Mount to reward a Dwarf by the name of Tabanash Koovarn. As a show of gratitude for the kindness Tabanash had shown the earth, Darrok scooped some soil into his rock like hands and lifted it to his face, cupping his hands in the process. As he blew into the soil, he crushed it within his grasp, capturing the magical essence of his breath. When he unclasped his hands, a glowing gem was revealed which he then gave to Tabanash.
It should be said that while the story sounds authentic, Tabanash is generally regarded as quite mad, claiming himself to be a mighty Sorceror. Having said that, it may of course be the gem itself that grants him the power to make this claim.
There are many varieties of these gems that vary in size and function. Their most common form provides light, with the largest often used by lighthouses along the more treacherous coastlines of Relbonia. It is said that a stone such as this was broken into the smaller stones sometimes found in jewelry.
That's it for now. Watch this space for the next update installment, where I hope to go into more detail for the intended player characters.
Thursday, October 11, 2007
Busy busy busy!
Well... I've been away for a while, Cornwall to be precise, land of legends... oh... and of course clotted cream and pasties... mmmmm.
While I've been gone, two playtesters have got back to me with some very encouraging feedback. I know that sounds a bit like I'm blowing my own trumpet, but I should point out that one of them did some extensive testing (setting out to break it in fact), and discovered a few problems that needed ironing out. I'd like to take this opportunity to offer my good friend PixelKnight my sincerest gratitude for finding time in his busy schedule to provide such valuable feedback to me, without which, an opportunity to further improve the work done so far would have been missed. Thanks PixelKnight! I should also of course thank my other tester, Nulthra Bloodeye, who provided further encouragement in his feedback.
Most of the flaws have been minor issues very easily corrected, but easily missed too, otherwise I would have spotted them myself much earlier. A fresh pair of eyes going over your work is a valuable asset not to be under rated.
One of the issues raised by PixelKnight was that for a story driven module, he was surprised that there was no reaction to his carrying of a weapon in the introductory area of the city of Kerral, particularly near the docks where the local militia have set up a blockade. It is something I did dwell over, but I was concerned in bogging myself down in too much detail, especially when aiming the module at an audience that didn't like to just run around and hit things. He does however have a valid point, so I've decided to compromise. Rather than have guards run up to you whenever you draw a weapon, I've placed a script on opening lines of conversation under the "Text Appears When" tab, so that people refuse to speak to you (or at the very least react differently) if you have a weapon equipped. I had a bit of a problem setting this up initially, as Lilac Souls Script Generator (which I rely on quite heavily at times) would only generate a script that catered to a specific weapon being equipped, and I had trouble finding the relevant code needed from the Lexicon site. Fortunately for me, I was able to call on the services of Lance Botelle, another Neverwinter Nights fan who I recently discovered lives only a twenty minute drive away from me! He was kind enough to provide the following solution:
#include "x2_inc_itemprop"
int StartingConditional()
{object oPlayer = GetPCSpeaker();
object WeaponRH = GetItemInSlot
(INVENTORY_SLOT_RIGHTHAND, oPlayer);
object WeaponLH = GetItemInSlot
(INVENTORY_SLOT_LEFTHAND, oPlayer);
if(IPGetIsMeleeWeapon(WeaponRH) == TRUE
GetWeaponRanged(WeaponRH) == TRUE
IPGetIsMeleeWeapon(WeaponLH) == TRUE
GetWeaponRanged(WeaponLH) == TRUE){return TRUE;}
return FALSE;
}
Basically, by placing the above script in the "Text Appears When" section of the first line of a conversation, you'll make the attached line of conversation only be spoken if a weapon is equipped, so it's perfect for a line such as "If you think I'm gonna talk to you while you've a weapon drawn, think again!"
Apart from ironing out the creases spotted by my testers, I've not done much else to the mod at the moment, partly because I wanted to perfect what had been done to date, and partly because of some artwork I've been working on. I've recently finished a horse portrait which I hope to host over at my DeviantArt page within the next day or two, and am about two thirds of the way through an ink drawing that I promised to Nereng (Hang on in there Nereng! It's coming, I promise!). Maybe I'll host that one here once it's done if Nereng has no objections.
That's it for the time being. I hope to have finished the ironing phase within the next week or two, then I can push on with getting past the main intro into the heart of the module, although I might have to consider finishing the haks first so that the magic changes are in place, but more about that later ;)
Bye all, and thanks for watching. :)
While I've been gone, two playtesters have got back to me with some very encouraging feedback. I know that sounds a bit like I'm blowing my own trumpet, but I should point out that one of them did some extensive testing (setting out to break it in fact), and discovered a few problems that needed ironing out. I'd like to take this opportunity to offer my good friend PixelKnight my sincerest gratitude for finding time in his busy schedule to provide such valuable feedback to me, without which, an opportunity to further improve the work done so far would have been missed. Thanks PixelKnight! I should also of course thank my other tester, Nulthra Bloodeye, who provided further encouragement in his feedback.
Most of the flaws have been minor issues very easily corrected, but easily missed too, otherwise I would have spotted them myself much earlier. A fresh pair of eyes going over your work is a valuable asset not to be under rated.
One of the issues raised by PixelKnight was that for a story driven module, he was surprised that there was no reaction to his carrying of a weapon in the introductory area of the city of Kerral, particularly near the docks where the local militia have set up a blockade. It is something I did dwell over, but I was concerned in bogging myself down in too much detail, especially when aiming the module at an audience that didn't like to just run around and hit things. He does however have a valid point, so I've decided to compromise. Rather than have guards run up to you whenever you draw a weapon, I've placed a script on opening lines of conversation under the "Text Appears When" tab, so that people refuse to speak to you (or at the very least react differently) if you have a weapon equipped. I had a bit of a problem setting this up initially, as Lilac Souls Script Generator (which I rely on quite heavily at times) would only generate a script that catered to a specific weapon being equipped, and I had trouble finding the relevant code needed from the Lexicon site. Fortunately for me, I was able to call on the services of Lance Botelle, another Neverwinter Nights fan who I recently discovered lives only a twenty minute drive away from me! He was kind enough to provide the following solution:
#include "x2_inc_itemprop"
int StartingConditional()
{object oPlayer = GetPCSpeaker();
object WeaponRH = GetItemInSlot
(INVENTORY_SLOT_RIGHTHAND, oPlayer);
object WeaponLH = GetItemInSlot
(INVENTORY_SLOT_LEFTHAND, oPlayer);
if(IPGetIsMeleeWeapon(WeaponRH) == TRUE
GetWeaponRanged(WeaponRH) == TRUE
IPGetIsMeleeWeapon(WeaponLH) == TRUE
GetWeaponRanged(WeaponLH) == TRUE){return TRUE;}
return FALSE;
}
Basically, by placing the above script in the "Text Appears When" section of the first line of a conversation, you'll make the attached line of conversation only be spoken if a weapon is equipped, so it's perfect for a line such as "If you think I'm gonna talk to you while you've a weapon drawn, think again!"
Apart from ironing out the creases spotted by my testers, I've not done much else to the mod at the moment, partly because I wanted to perfect what had been done to date, and partly because of some artwork I've been working on. I've recently finished a horse portrait which I hope to host over at my DeviantArt page within the next day or two, and am about two thirds of the way through an ink drawing that I promised to Nereng (Hang on in there Nereng! It's coming, I promise!). Maybe I'll host that one here once it's done if Nereng has no objections.
That's it for the time being. I hope to have finished the ironing phase within the next week or two, then I can push on with getting past the main intro into the heart of the module, although I might have to consider finishing the haks first so that the magic changes are in place, but more about that later ;)
Bye all, and thanks for watching. :)
Subscribe to:
Posts (Atom)