Author Topic: Revised Module: Small Village Woes (1.24)  (Read 4005 times)

Legacy_MagicalMaster

  • Hero Member
  • *****
  • Posts: 2712
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #30 on: June 26, 2014, 09:02:20 pm »


               


2. Aha! I know nothing of how awareness functions in NWN currently. If it's a quick edit, I think it would be an amazing feature to add considering how the player generates coins in the module from non-typical items.




 


Appraise only fires by default when enabled on a merchant.  Say you have an appraise skill of 5 and the merchant has 0.  By default the merchant buys something for 50g and sells it for 200g (making these numbers up to show the idea).  We'll also assume every 1 difference is a 1% difference in price.  There's an opposed roll (d10) and the player gets a 3 while the merchant gets a 10.  That's 8 vs 10, so 2% in favor of the merchant.



So now the merchant buys that item for 49g and sells it for 204g.


 


In your case, I think the simplest way to do it would be to simply call a function named something like "ApplyAppraiseSkill" or something that looked at the PC's appraise and adjusted things appropriately -- perhaps something like decreasing cost by multiplicative 1% and increasing sell by 1% multiplicative.


 


So say the PC has 6 appraise.  When he says he wants to buy the longbow (175g), the script does the stuff it does now plus calls that function so that 175 becomes 175/1.06 = 165g.  When he wants to sell the longbow (90g) the same thing happens in reverse -- 90 * 1.06 = 95g.  Just need a library with the function so you can call that function in each script -- should literally only need to adjust 1 line of code per buy/sell script.


 




3. I think you're dead on. You do have no reason to think that you should try to fight through the spiders to find anything, which I think is originally part of the reason I threw that curve ball in there for the player. I wanted to reward those more adventurous of the bunch. Maybe I can make a slight mention of 'something' in the Webbed Cave. In an earlier build, I'm talking 2003, once you failed at trying to steal items from Willy three times, he would ask you to go to the Webbed Cave and bring him back 50 scales or so to ease his being upset at you for trying to steal from him, then lowering his prices back to normal. I might have to explore going back to that principle, if but to flesh out the Spider Cave some.




 


You could simply make it a short cave with a bunch of triggers so that you'd have to fight like 30 spiders as you go through but they don't just instantly respawn indefinitely.  The main problem is that it goes against what the PC has been taught for the rest of the module which is "kill the stuff attacking you."  The collision detection in NWN can also make it so you get "stuck" unable to go past the spiders -- I managed because I was spamming scrolls of Call Lightning which would often wipe out an entire group of spiders.


 




I spent more time on this module when I originally designed it trying to cram as much detail as I could into a 3 to 5-hour experience (with lighting, music usage, visual and sound effects), as well as in the past few months ironing out old story details, grammar, spelling, and overall polish than I care to admit to most people. '<img'> I'm so pleased you enjoyed yourself.




 


It shows.


 


Something I managed mentioned yet is the general dialogue system, which I generally did like.  Reminds me of the dialogue wheel in ME 1/2/3 and DA2.  I've definitely been frustrated when my only dialogue option is to say something ridiculous and you think "I wouldn't phrase it that way at all!"


 




Also, MagicalMaster, let me add that if you have any more feedback on the various pricing of merchant goods, I'm all ears. I think a review of their pricing scale could really benefit the module. In these latest revisions of the past couple of months, I've added more wealth overall to the world, so I imagine that further retooling of the merchant prices could stand to be reviewed. If you have any more thoughts on this, in general or specific, I'd be happy to hear them.




 


Hard to say, for a few reasons.


 


1, I had tons and tons of undead parts to sell.  That definitely affects things.


 


2, I didn't sell the ring for 2.5k.  That DEFINITELY affects things.


 


3, I bought hundreds of scrolls because mob HP was so high -- if mob HP weren't as crazy in some cases then obviously less scrolls would be needed which means less gold would be be needed.


 


So all in all it probably makes sense to generally balance the gold last because how much gold we need for healing/scrolls/whatever highly depends on how much damage we take and how many offensive scrolls we need.  I didn't even ever bother with Stoneskin scrolls or anything.



               
               

               
            

Legacy_Shadooow

  • Hero Member
  • *****
  • Posts: 7698
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #31 on: June 26, 2014, 10:37:42 pm »


               

I checked the module for the henchman issues as Iam recently working with henchmen AI.


 


There is some ancient AI rework by Pausanians which, judge on the MM comments, is way worse than vanilla default AI.


 


I would tried to remove these scripts:


nw_ch_ac1


nw_ch_ac2


nw_ch_ac3


nw_ch_ac4


nw_ch_ac5


nw_ch_ac6


nw_ch_ac7


nw_ch_ac8


nw_ch_ac9


nw_ch_acb


nw_ch_gomelee


nw_ch_goranged


 


this will use a default AI for henchmans, or you can try to use TonyK henchman AI but that requires more work



               
               

               
            

Legacy_BortSonofBort

  • Jr. Member
  • **
  • Posts: 87
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #32 on: June 26, 2014, 10:49:18 pm »


               


Appraise only fires by default when enabled on a merchant.  Say you have an appraise skill of 5 and the merchant has 0.  By default the merchant buys something for 50g and sells it for 200g (making these numbers up to show the idea).  We'll also assume every 1 difference is a 1% difference in price.  There's an opposed roll (d10) and the player gets a 3 while the merchant gets a 10.  That's 8 vs 10, so 2% in favor of the merchant.


So now the merchant buys that item for 49g and sells it for 204g.


 


In your case, I think the simplest way to do it would be to simply call a function named something like "ApplyAppraiseSkill" or something that looked at the PC's appraise and adjusted things appropriately -- perhaps something like decreasing cost by multiplicative 1% and increasing sell by 1% multiplicative.


 


So say the PC has 6 appraise.  When he says he wants to buy the longbow (175g), the script does the stuff it does now plus calls that function so that 175 becomes 175/1.06 = 165g.  When he wants to sell the longbow (90g) the same thing happens in reverse -- 90 * 1.06 = 95g.  Just need a library with the function so you can call that function in each script -- should literally only need to adjust 1 line of code per buy/sell script.




 


I'll have to circle back to you about this. Not surprisingly, there are a lot (a lot) of buy/sell scripts in use. If this added piece of code turns out to be a simple cut and paste, we might be in business.


 



You could simply make it a short cave with a bunch of triggers so that you'd have to fight like 30 spiders as you go through but they don't just instantly respawn indefinitely.  The main problem is that it goes against what the PC has been taught for the rest of the module which is "kill the stuff attacking you."  The collision detection in NWN can also make it so you get "stuck" unable to go past the spiders -- I managed because I was spamming scrolls of Call Lightning which would often wipe out an entire group of spiders.


 


That's a fine practical point about the expectations that the module sets for the PC, and how that affects the experience of the Webbed Cavern. Frankly, the chances are greater I'm just going to drop the Webbed Cavern when I release a final build of this latest update. The Cave area as a whole has absolutely nothing to do with the story, and as you've pointed out, acts a-typically of the mechanical expectations set by the module overall.


 



I've definitely been frustrated when my only dialogue option is to say something ridiculous and you think "I wouldn't phrase it that way at all!"


 


Amen.


 



Hard to say, for a few reasons.

 


1, I had tons and tons of undead parts to sell.  That definitely affects things.


 


2, I didn't sell the ring for 2.5k.  That DEFINITELY affects things.


 


3, I bought hundreds of scrolls because mob HP was so high -- if mob HP weren't as crazy in some cases then obviously less scrolls would be needed which means less gold would be be needed.


 


So all in all it probably makes sense to generally balance the gold last because how much gold we need for healing/scrolls/whatever highly depends on how much damage we take and how many offensive scrolls we need.  I didn't even ever bother with Stoneskin scrolls or anything.




 


1. Which isn't always the case. I've seen some players loot the Zombies a couple of times, not know what to do with the parts, and then simply stop looting them. I actually enjoy rewarding the looting hoarder, as it were.


 


2. Yup. Again, chances are I'm going to blow-up the Webbed Cavern for a few reasons.


 


3. I'll give a look at mob HP, particularly the Br'ei Soldiers and the Act 3 Hook Demons.


 


Coming back to the gold concept once the module has been balanced better is a terrific notion.



               
               

               
            

Legacy_BortSonofBort

  • Jr. Member
  • **
  • Posts: 87
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #33 on: June 26, 2014, 10:53:12 pm »


               


I checked the module for the henchman issues as Iam recently working with henchmen AI.


 


There is some ancient AI rework by Pausanians which, judge on the MM comments, is way worse than vanilla default AI.


 


I would tried to remove these scripts:


nw_ch_ac1


nw_ch_ac2


nw_ch_ac3


nw_ch_ac4


nw_ch_ac5


nw_ch_ac6


nw_ch_ac7


nw_ch_ac8


nw_ch_ac9


nw_ch_acb


nw_ch_gomelee


nw_ch_goranged


 


this will use a default AI for henchmans, or you can try to use TonyK henchman AI but that requires more work




 


I'll experiment with removing some of the scripts that you think highlight where these issues are coming from and see if it positively impacts the henchmen AI, Shadooow.


 


Thanks!



               
               

               
            

Legacy_MagicalMaster

  • Hero Member
  • *****
  • Posts: 2712
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #34 on: June 27, 2014, 04:55:29 am »


               


I'll have to circle back to you about this. Not surprisingly, there are a lot (a lot) of buy/sell scripts in use. If this added piece of code turns out to be a simple cut and paste, we might be in business.




 


It should be.  Basically, instead of


 


GiveGoldToPlayer(5, oPC);


 


you'd have


 


GiveGoldToPlayer(ApplyAppraiseSkill(5), oPC);


 



3. I'll give a look at mob HP, particularly the Br'ei Soldiers and the Act 3 Hook Demons.

 


Coming back to the gold concept once the module has been balanced better is a terrific notion.




 


Interestingly enough, it was mainly the sheer amount of zombies and the HP of the Br'ei BOSSES that were the main problem prior to the demons.


 


And yeah -- a fighter might be swimming in gold because he has high AC/damage and needs little healing while a sorcerer may be spending all their gold on Magic Missile scrolls.  Conversely, a sorcerer may be able to use AoE scrolls to wipe out groups of enemies that otherwise force the fighter to chug healing potions.  Very balance/item/class dependent.



               
               

               
            

Legacy_BortSonofBort

  • Jr. Member
  • **
  • Posts: 87
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #35 on: June 27, 2014, 06:30:16 pm »


               


It should be.  Basically, instead of


 


GiveGoldToPlayer(5, oPC);


 


you'd have


 


GiveGoldToPlayer(ApplyAppraiseSkill(5), oPC);




 


WIll look into this. Thanks, MM.


 



Interestingly enough, it was mainly the sheer amount of zombies and the HP of the Br'ei BOSSES that were the main problem prior to the demons.


 


I bumped the Br'ei Bosses HP right before release of this latest BETA build. Good to know. Also, I'm going to extend the length of the zombie encounter respawn refresh triggers.


 


Good stuff!


               
               

               
            

Legacy_MagicalMaster

  • Hero Member
  • *****
  • Posts: 2712
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #36 on: June 27, 2014, 06:46:34 pm »


               


WIll look into this. Thanks, MM.




Keep in mind that the ApplyAppraiseSkill is a function you'd write but it probably can be done in 10 lines or less.


 




I bumped the Br'ei Bosses HP right before release of this latest BETA build. Good to know. Also, I'm going to extend the length of the zombie encounter respawn refresh triggers.




Why even have the zombies respawn in the crypt?  What does that add?  If people want to grind XP there's zombies in the forest.



               
               

               
            

Legacy_BortSonofBort

  • Jr. Member
  • **
  • Posts: 87
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #37 on: June 27, 2014, 07:02:03 pm »


               

Why even have the zombies respawn in the crypt?  What does that add?  If people want to grind XP there's zombies in the forest.


 


The whole module is coded to work as a semi-persistent world. Everything refreshes. Quest variables are often set on a PC by obtaining a radius around the NPC providing the quest variable. Back in the day, more time than I care to admit (part 2) was invested in making sure the game could play as a hosted semi-persistant world. In 2014, there is clearly much less demand for that sort of thing. But the whole module, every item, every instance of a character, every piece of action should entirely respawn itself over enough time. I'd rather keep that technique going than scrap it at this stage.



               
               

               
            

Legacy_BortSonofBort

  • Jr. Member
  • **
  • Posts: 87
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #38 on: June 28, 2014, 12:29:53 am »


               

I've written down all of the above notes/feedback since the release. Tomorrow I'm going to see how much I stamp out in a good lengthy sitting. Once I'm done (whether that is tomorrow or later), I'll be sure to journal what edits I've made so there's a reference point. By the time this process is completed (and potentially more feedback given, and more edits made) I'll undoubtedly release this next update as Small Village Woes 1.30.


 


Exciting!



               
               

               
            

Legacy_MagicalMaster

  • Hero Member
  • *****
  • Posts: 2712
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #39 on: June 28, 2014, 12:41:14 am »


               


In 2014, there is clearly much less demand for that sort of thing. But the whole module, every item, every instance of a character, every piece of action should entirely respawn itself over enough time. I'd rather keep that technique going than scrap it at this stage.




 


There's still demand for fully persistent worlds, but yeah.


 


That said, fighting through the same zombies multiple times in the crypts is annoying, doubly so since to sell their "loot" you need to find the Witch.  But hopefully extending the cooldown helps.



               
               

               
            

Legacy_Shadooow

  • Hero Member
  • *****
  • Posts: 7698
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #40 on: June 28, 2014, 12:59:36 am »


               

One important suggestion for you Bort.


 


Don't listen MM too much. He got a point in most of his finding, but he is greatly obsessed with game balance.


 


In my opinion you won't be ever able to balance this to be equal for all classes and definitely not balance it the way to satisfy the MM '<img'> .



               
               

               
            

Legacy_MagicalMaster

  • Hero Member
  • *****
  • Posts: 2712
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #41 on: June 28, 2014, 01:14:39 am »


               

If I was attempting to balance this properly I assure you the feedback would have been far more extensive.  All I've done is note the most glaring issues -- a small module like this doesn't need amazing balance.  Big difference between "reasonably playable" and "balanced" and I'm only concerned about the former here.



               
               

               
            

Legacy_BortSonofBort

  • Jr. Member
  • **
  • Posts: 87
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #42 on: June 28, 2014, 03:57:00 pm »


               

I think everyone is coming to the module with the right spirit--to polish it for what it is. To provide feedback for quicker fixes that will add to a final(ish) product. MM in particular has been very (very) helpful in this regard. I honestly can't thank everybody enough.


My goal has been to clean it up as much as possible without tearing out the guts of the thing, and I think we're being successful in that.



               
               

               
            

Legacy_Bort_Son_of_Bort

  • Newbie
  • *
  • Posts: 4
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #43 on: June 30, 2014, 01:42:19 am »


               

Small Village Woes v1.30 Update [SPOILERS BELOW]:


 


I definitely underestimated the time needs for the amount of great feedback that's been given to me thus far. But I'm happy to report definite progress has been made.


 


Module Lighting - I worked through every area doing a prognosis of the current lighting schemes. Notwithstanding the fact that the module is intended to be very dark, I tried my best to find a balance.

a.) Where there are no light objects placed, I did my best to add highlights to the area properties throughout. Doors have added highlights on them to make them 'stand out' in the visually dark palette.


b.) Overall, I've spread out the effect of a lit area so that it covers more blocks of space. Not terribly more, but a definite change.


c.) Areas that have been VERY dark, like the Burial Chambers, Lenny's Lodge, Farmer Fred's Manor, and sections of the Small Village and The Forest now have added light sources and highlights.
d.) I've added outside torches to the Orchard House and Church.


 


Module Entry Area - I've gotten some great feedback about some things that are lacking here.


 


a.) I've added an OnEntry script that causes Elf and Half-Elf races to appear "knocked down" at the beginning of the module to feign sleeping, since they're immune to the physical sleeping effect of laying down on the ground.


b.) I've made two of the entrance guards able to assist in defending the PC from the Wolf Pack encounter if they are close enough.


 


Looting - Something had to be done about looting objects found in buildings or outside when an NPC is standing watch.


 


a.) I've added scripts on an object use/opening that will cause a nearby NPC to remark about the looting attempt, or a parenthetical observation that provides sufficient reasoning for the PC being able to loot the object if he/she wants to. Some of these NPC driven notes also take the form of statements within a conversation. At times, there are variations of a response depending on if the PC unlocks/opens an object, or bashes it open.

Misc. Edits - Some added fixes.


 


a.) I've removed the chests in the Witch's Den and put them at the farthest end of the Burial Chamber in Act 1. This not only solved the looting issue in a merchant's quarters, but gave the player some much needed buffs/health items halfway through the Burial Chambers quest.


b.) "Bag of Holding" is now (tongue-in-cheek) "Bag of Carrying." '<img'>
c.) Various Billy word choices fixed in the merchant menu.


 


This is where I'm at so far. I still have two pages worth of feedback to work through. '<img'>



               
               

               
            

Legacy_BortSonofBort

  • Jr. Member
  • **
  • Posts: 87
  • Karma: +0/-0
Revised Module: Small Village Woes (1.24)
« Reply #44 on: July 01, 2014, 03:36:56 am »


               

Small Village Woes v1.30 Update | 6.30.04 [SPOILERS BELOW]:


 


Most of my time today was spent focusing on the various merchants, but some other edits were made, too.


 


Merchant Fixes - Lots.


 


a.) Fixed up some text-related dialogue irregularities in the merchant conversations.


b.) Added bullets and slings to Brother Billy's merchant options.


c.) Doubled the amount of ammunition/throwing weapon stacks for their current value.


d.) Fixed Witch 'information' dialogue options.


e.) Fixed Willy token error.


f.) Willy's weapon, armor, kit, and misc. goods rack now informs PCs about undead-items.


g.) Bastard Sword and Katana are the same price now.


h.) Tower Shield now listed at proper weight.


 


 


REQUEST FOR HELP - In trying to fix the merchant system's affiliation discount, I did some play-testing. It would appear via the merchant hide/reveal scripts I'm using to show players who are the proper affiliation to a specific merchant their discounted item price, that I'm possibly using the wrong check function.


Currently, the script uses GetLevelByClass to check if the PC is either a Cleric, Paladin, Wizard, or Sorcerer. What I've discovered is that when a PC of these class types is beyond Level 1, the class check doesn't work. Level 1 PCs of these class types allow the script to function as intended.


 


To solve this issue, I wonder if I should be using GetClassByPosition?


 


Let me know what you think.


 


Thanks!