Choose Your Language

Saturday, 1 March 2025

Episode 94: A Bunch of Carrots!

My furry rabbit friends are not the only ones who like carrots, but players will also like these ones, especially as I am talking about the metaphorical types opposing the otherwise proverbial stick! But there's a full dish to consider this month, if you don't mind me continuing the metaphor, and all because the "stick" finally broke my patience, as well as the game. Read on to find out more about this and other news, especially with respect to the development of the second module, Predestinated Days.

The Stick Is Dead, Long Live The carrots!

In this instance, I am talking about the NWN2 database system as the dead "stick". After many years of trying to fix an area transition crash after a database entry is written for the first time, I finally took the plunge to remove the NWN2 database system from my campaign completely. As the years have passed, I have also learned and recognised that at least half of what I use the database for can be handled without it. For the remainder, however, I decided I needed to redesign the way some of the systems worked.

But, why was the database there in the first place? Put simply, it was primarily setup to maintain game balance, by preventing reloads where puzzle solutions could be learned and exploited. Well, it was for that and a means to ensure continuity between modules when the time came. However, there is a fundamental problem when using the NWN2 database system, and, as I describe above, it ends up with the game crashing to desktop during (or just after) a transition shortly after a new database entry has been written for the first time. Only a single entry will cause this problem. 

Over the years I tried many ways to circumvent the problem, from starting from a different module, to trying to setup the database from a game exit, but I have been unable to find a solution to date. In the end, all I could do was warn a player that their game would likely crash if they had just started a new PC within the campaign. This issue, effectively forcing a player to reload almost straight-away, did not sit well with me since day one.

In the last week, I finally made the decision to remove all NWN2 database code from my campaign... and the game no longer crashes at any transition! The exercise was cathartic... and the end result is that I have now also added a collection of "carrots" to the campaign to help accommodate its removal!

Carrots To Whet The Appetite!

After reworking at least half the database reliant objects to be either setup at the start of the game, or random with each reload (subject to their requirement), I was eventually left with only a handful of other objects that still required some kind of resolution to help maintain game balance and to help avoid meta-gaming(*), especially those objects surrounding the use of Life Essences and respecting Boon/Bane item acquisition. To this end, I designed some systems that I hope will encourage the player to consider continuing along the path they had reached respecting the knowledge that their PCs would have had at the time rather than use a reload exploit that had the potential to unbalance the game. The "carrots" to encourage this are the Life Essence Residue and the Life Experience systems.

(*) Meta-Gaming: Making use of knowledge that a player has learned out of character, and which their party would not know at the time.

CARROT #1: Life Essence Residue

This system is designed to hopefully encourage players to spend Life Essences without any sense of "unnecessary loss" and to be content when using them. To this end, in cases where such a system is required, using a Life Essence will now result in the collection of a new item called Life Essence Residue.

Once the PC has acquired five of these residue items, they will magikally amalgamate into one of two possible items: A Sleeper's Stone, or, on a rare occasion, a set of Enchanter Stones. See the image below for more details about these two new magik items:

The New Life Essence Residue System

Having a Sleeper's Stone may actually be a life saver if a party does not have a cleric who can Create Food and Water when adventuring in an area where food may be hard to come by. Alternatively, adding a permanent magikal benefit to a weapon is also something that would be worth working towards.

CARROT #2: Life Experience

This is more of a generic "catch all" benefit, as it now rewards players for playing along with a result that may not have immediately gone in their favour. The idea, again, is to encourage a player to stick with a result of a choice they make in the game, by rewarding any brave decision they may make. Indeed, I would go so far to say that the new benefit now on offer could even send players actively seeking it, such is the way it now plays.

Basically, I am talking about receiving a significant XP reward for playing along with a PC Life Changing event of one kind or another, subject to what the PC may have to endure. Indeed, the best result for the player's PC would probably be to play along to win the XP reward, in the hope that any downside to the event may eventually be recovered from. The idea is to reinforce that any decision the player can make is a legitimate one for their game, and to trust that the future will work out one way or another for them. This is particularly the point in case if a PC acquires an item that is baneful (a curse) to them. Take a look at the new information GUI that is presented now on a first encounter of such an item:

An Example of The New Life Experience System

I would like to point out that this is the general XP principle in practice for these items, but similar XP awards will be on offer for other situations that may, at first, appear to be nothing but trouble for the PC. Therefore, each time a player comes up against a difficult situation, they will now be rewarded for their PC's Life Experience that led them to that point.

As the player plays The Scroll Campaign, these systems and others will present themselves, which I hope will encourage the player to continue, even if it feels like their PC tripped over at one point. As the XP tag line goes, "There's No Gain, Without Pain!"

As I have worked on these system updates, I have also been altering the end of module code that supports module to module transfer of the henchman, for which I thought I was going to need the database. It turns out that my previous work with henchmen and the MP area transitions helped me to realise that using global variables was sufficient for their transfers, and so the database was not required here. All in all, the latest campaign code changes have gone a long way to improving the overall efficiency of the code, and I do feel much better about the game no longer crashing a the start.

Predestinated Days

The last two weeks database changes also go a long way to improving the campaign for the second module, Predestinated days, too. However, in the two weeks before last, I was able to make some solid progress on  Bloodstone College, one of the main scenarios that I wanted to finish before opening the second stage of the second module to alpha testers.

I am excited to say that the area designs for the scenario are now 80% complete, having spent a lot of the first couple of weeks recreating the areas. I am hoping the whole scenario to be ready by the end of this month, in time for the next blog post. If I do manage to do that, it will be another big landmark reached in the development of the module, leaving only one or two smaller areas to complete the second stage. However, I may release the second stage to testers prior finishing these last areas, just so testing can begin as soon as possible.

While designing the areas, I also managed to overcome a logical flow issue in the design of the PnP (pen and paper) module, which I had not considered back in the day I originally wrote it. It caught me off-guard when I spotted it, and it took me some time to work out a plausible plot path for the quest. Suffice to say, it involved having to design another item and rearrange some of the original area design, but like all things like this, I actually prefer the new design.

Post Database Patch System

It has been almost a year since the latest patching system came into use (30th March 2024), and it seems an appropriate time to announce the latest v1.28 release (with the database code removed), and to now also "remove" the release notes from the post, first added since the release in March last year. Therefore, when I upload v1.28 later today, I will be removing all the previous fixes and updates information from the post, allowing them to start afresh from this version, which, like I always say, I hope will be the last "biggish" update required until I release Predestinated Days.

Testing of the campaign will continue via Predestinated Days alpha testers, which means anything found could still have an impact on the first module, and if it is significant, I will, of course, provide another update. Furthermore, I will continue to listen to any requests players may have.

Before I sign off from this larger than normal post, I wanted to show you the latest overland map area design, showing off the time travelled system displayed at the top of the area design. It has undergone various changes over the years, as I have had need. The latest and final (alpha tested) design is the one that should come with the release. Just for the information, this had a minor update in the last month too, when I realised the time was not starting correctly, It turned out to be a memory leak on the overland map, which I always like to catch.

I suppose I can't let this month pass without also adding that it would be rather exciting if the rumours of an Enhanced version of NWN2 on Steam turn out to be true. I just hope any changes don't make for too much (if any) requirements to rework our own modules to any great amount. We'll just have to wait and see, I suppose.

The Overland Map For Predestinated Days!

 

No comments: