Author Topic: Community Patch discussion and development thread  (Read 20378 times)

Legacy_MannyJabrielle

  • Sr. Member
  • ****
  • Posts: 275
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #495 on: July 08, 2014, 01:13:36 pm »


               

Oh, and a second question on spell specific notes in the current documentation....


For the weapon enhancing spells (holy sword, magic weapon/greater magic weapon, darkfire, flame weapon), they all say "spell is now custom content compatible.".  What exactly does that mean?


Offhand I'm going to guess that it means custom content as in non-standard NWN weapon types such as the "double scimitar" from CEP and the various holdable objects in project Q?



               
               

               
            

Legacy_Shadooow

  • Hero Member
  • *****
  • Posts: 7698
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #496 on: July 08, 2014, 01:51:26 pm »


               

That switch is gone. I removed it in 1.71 along with switch for AC type of Ioun stone Dusty Rose.


 


Reasons were two:


1) growing number of switches


2) its a single spell/script - if builder doesn't wish this behavior he can easily change it (which is not a case of other switches which are dependant on modifying numerous scripts,includes and recompiling all together)


 


If you are a player and you don't like it, well I see no reason why would player objected agains dodge AC on dusty rose ioun stone, I understand that players wants to cheat, buy item from store, enhance it with continuous lightning and sell five times expensive, but thats exploit. Not a game mechanic but an NPC AI. Merchant wouldn't bought that. Maybe once, then he would realized you tricken him and stop trading with you.


 


Anyway - the Stolen flag is indeed not perfect, but there you are in contradiction.


You wan't this to be removed so you could sell it, and also to drop cost so you won't be able to make a fortune. Which current solution already offers! As you said you can go to black market and sell this for lower profit.


 


But yes, this solution is not ideal, I did this before I added Item Cost Parameter itemproperty. With this itemproperty it should be possible to decrease cost on the original value or a bit more (some small gain could be there, as its not free especially in modules where rest is charged with food).


 


EDIT: to lower light cost is not an option - it would retroactively changed cost of every items which wouldn't be good. Could change even UMD rank required etc.


This is feature for PW modules, there this exploit can be really problematic. Those who know about it already dealt with it and thus the new script from CPP won't be active, for those who don't this can effectively solve this issue and make it not (enough) profitable.


 




Oh, and a second question on spell specific notes in the current documentation....


For the weapon enhancing spells (holy sword, magic weapon/greater magic weapon, darkfire, flame weapon), they all say "spell is now custom content compatible.".  What exactly does that mean?


Offhand I'm going to guess that it means custom content as in non-standard NWN weapon types such as the "double scimitar" from CEP and the various holdable objects in project Q?




Yes, but it won't recognize holdable objects as weapons unless these new custom items are set as weapon in 2DA which they shouldn't unless its some improvised weapons. In short its now dependant on 2DA settings.



               
               

               
            

Legacy_Shadooow

  • Hero Member
  • *****
  • Posts: 7698
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #497 on: July 08, 2014, 02:22:41 pm »


               

Update: no I don't see it possible even with Item Cost Itemproperty. Because item cost is calculated by some weird and twisted multiplying. Thus the 20mWhite light increases cost of the mundane +0 dagger by 500gp but the same dagger with also keen property by 2500gp. The better item already, the higher value this adds - where you can now see the issue, don't you?


 


Technically its possible, but very tricky and not worth the time to me. An item cost before, and after had to be calculated, and then an appropriate chain of Item Cost Itemproperty had to be found (in many cases it will need both C,B and A) and apllied. The main problem is how to calculate which Item Cost itemproperties had to be applied because they are multiplied too. Would be easier to solve with NWNX where I could add/reduce the cost by exact value. But that wouldn't be a good solution since NWNX is optional and also at this moment such feature is not in the scope (with features like this it would interfered with other plugins as there are plugins with such feature already).



               
               

               
            

Legacy_MannyJabrielle

  • Sr. Member
  • ****
  • Posts: 275
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #498 on: July 08, 2014, 02:47:05 pm »


               


That switch is gone. I removed it in 1.71 along with switch for AC type of Ioun stone Dusty Rose.




Ok, will remove that from the new documentation.


Follow up... is that switch (and the AC one which I notice before) in version 1.70?


 



 


If you are a player and you don't like it, well I see no reason why would player objected agains dodge AC on dusty rose ioun stone, I understand that players wants to cheat, buy item from store, enhance it with continuous lightning and sell five times expensive, but thats exploit. Not a game mechanic but an NPC AI. Merchant wouldn't bought that. Maybe once, then he would realized you tricken him and stop trading with you.



Perhaps that is a problem with the AI, and one that is not limited to that specific scenario, as the AI just does not react realistically to anything not explicitly handled within it's scripting.  But that's not an exploit of the spell itself, that's just poor game design overall.  That's a clear distinction that has to be made between exploit and game design.


 


For the realism argument, it could easily be said as well that the merchant would gladly buy back those rings....  he is getting a whole stock of magically enchanted rings he can then sell at a higher price than he would have gotten for the plain non-magical ones, and he's controlling both the price he pays for the enchantents, and the price he charges his other customers for the finished products (which is, unless the buy/sell markups are equal), still a profit for him.


 


To frame the argument as the PC is tricking the merchant in an in-character context, you have to view it in the out-of-character context of the NPC merchant is not actually making a profit because he doesn't actually do business with other NPCs mechanics wise.


Likewise, realistically an adventurer finds a plain ring in a dungeon along with that magic dagger and magic spell scroll.  He casts continual light on the ring, and goes to sell all three... There's a break in immersion that the merchant he sells to somehow psychically knows that the gold ring is "stolen" while the other two items aren't, but if that very same ring were not enchanted it wouldn't be "stolen".


And gameplay wise, as I noted earlier... this doesn't actually fix the "exploit" anyway.  It just makes it a hassle for the player who has to sell to the black market merchant instead.


 


The player can *still* buy plain unenchanted goods from the stolen goods merchant, cast CF on them, and sell them back for a profit, so what is actually accomplished with it other than hassling the player?  The spell does exactly what it's supposed to, selling of magical goods works exactly as it's supposed to.  There's really no exploit here, just a lack of AI reaction routines and poor gameplay design that is just inherent in an old game which doesn't have sophisticated AI.


 



 


You wan't this to be removed so you could sell it, and also to drop cost so you won't be able to make a fortune. Which current solution already offers! As you said you can go to black market and sell this for lower profit.



That's not a contradiction.


The solution of changing the item property costs down to a bare mininum would still allow the sale, but not as a means to make a fortune, thus allowing players who DON'T intentionally mass produce light items to sell the ones they do make without having to go through the immersion-breaking routine of finding a black-market merchant for completely out of character reasons.


AND.... it actually solves the issue as it covers all merchants, not just some of them.  If the purpose is to eliminate relatively effortless cash-production with the spell, the current method is not doing it at all, as it creates it's own exploit of the very issue it's intended to fix (and that would be an exploit as it's using game mechanics to bypass the intended game mechanic implementation).


 



 


Yes, but it won't recognize holdable objects as weapons unless these new custom items are set as weapon in 2DA which they shouldn't unless its some improvised weapons. In short its now dependant on 2DA settings.



Excellent, thanks.  And yes, when I mentioned holdable objects, I was thinking specifically about the improvised weapon type items.  Needed to know so I could tweak the change notes to be a bit more clear.


               
               

               
            

Legacy_MannyJabrielle

  • Sr. Member
  • ****
  • Posts: 275
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #499 on: July 08, 2014, 02:50:37 pm »


               


Update: no I don't see it possible even with Item Cost Itemproperty. Because item cost is calculated by some weird and twisted multiplying. Thus the 20mWhite light increases cost of the mundane +0 dagger by 500gp but the same dagger with also keen property by 2500gp. The better item already, the higher value this adds - where you can now see the issue, don't you?




Offhand, I recall the item property costs are controlled actually by 2 separate 2das.  After work I planned on modifying some 2da's for my module, I can take a look at implementing the change effectively for the light property while I have the 2da editor open.  I see no issue preventing it from working as I can cite 3 item properties that behave in that exact manner already.


               
               

               
            

Legacy_Shadooow

  • Hero Member
  • *****
  • Posts: 7698
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #500 on: July 08, 2014, 03:11:30 pm »


               


Ok, will remove that from the new documentation.


Follow up... is that switch (and the AC one which I notice before) in version 1.70?




Not anymore. It was there but I made the "remastered" edition where I removed everything which was removed from 1.71 to make it more consistent.



 


The player can *still* buy plain unenchanted goods from the stolen goods merchant, cast CF on them, and sell them back for a profit, so what is actually accomplished with it other than hassling the player?  The spell does exactly what it's supposed to, selling of magical goods works exactly as it's supposed to.  There's really no exploit here, just a lack of AI reaction routines and poor gameplay design that is just inherent in an old game which doesn't have sophisticated AI.



Are you saying that since it doesn't prevent player from doing that and only make the whole process harder and less profitable its better to remove it? '<img'>


 


Are you the kind of player that would like to do this? Just so I know where we stand, because imo, from the builders perpective there is no problem, some even makes item plot or replaces the permanent light with temporary (for duration of 9999999999.0 which makes it almost permanent but not affecting price). From a player perspective - if you want to cheat, why not give yourself 1000000GP already?



 


AND.... it actually solves the issue as it covers all merchants, not just some of them.  If the purpose is to eliminate relatively effortless cash-production with the spell, the current method is not doing it at all, as it creates it's own exploit of the very issue it's intended to fix (and that would be an exploit as it's using game mechanics to bypass the intended game mechanic implementation).



What. If the current method still provided relatively effortless cash production, we wouldn't have this talk I believe because its not and you don't like it. And what exploiut this method creates, I don't follow?


 


EDIT: Ok, I realized the potentional issue, not sure its what you meant, but in pre-existing modules without any merchant buying stolen goods it might be a problem. If a player cast this spell on his equipment, he wouldnt be able to sell it later in game and thus missed gold to purchase better equip. Though, the circumstances under which this proves to be an issue are quite rare, I don't pretend I played every module but this seems to me very unlikely to happen.


 


Anyway, I agree the stolen flag is less than ideal solution, so lets discuss alternatives.



               
               

               
            

Legacy_Gruftlord

  • Sr. Member
  • ****
  • Posts: 490
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #501 on: July 08, 2014, 04:30:51 pm »


               I think the argument is more like: the current solution doesn't really fix the underlying issue. It only makes it less convenient to sell, less profitable and therefor more annoying to exploit. On the other hand, what the change completelly not does is make the ingame experience any more immersive, realistic or believable. It fails at that, and imho makes the shortcomings of the game only more visible.

It reduces the effectiveness of an exploit by making the game ultimatelly react even less realistic than before. We should search for a better fix
               
               

               
            

Legacy_Shadooow

  • Hero Member
  • *****
  • Posts: 7698
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #502 on: July 08, 2014, 04:42:24 pm »


               

Alright.


 


Maybe adding Item Cost Parameter C -1 (-500gp) could work? For completely mundane items this could work pretty well effectively restoring original cost as the light is worth 500 too. For a more expensive items, this would only slightly reduced the value since the light cost more there but the ICP C-1 still the same, but for items like these it shouldnt be problem. If player finds it in dungeon I think its okay to allow him increase cost of the item (aka the situation MannyJabrielle presented with rogue finding scroll of this spell). Since merchants sells items with increased cost by at least 10% I think that for anything other than mundane items the potential profit for bying/imbuing/reselling is zero or very small to be worth doing that.



               
               

               
            

Legacy_The Amethyst Dragon

  • Hero Member
  • *****
  • Posts: 2981
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #503 on: July 08, 2014, 05:48:59 pm »


               

Regarding continual flame...


 


The "fix" I made for Aenea was to alter the spell script so that the light property from that spell is temporary, lasting a (I think) week. As a temporary property, the item value is not affected, merchants don't pay extra for it, and the property seems to be stripped when such an item is sold.


 


It does mean the spell is no longer "permanent" and has to be recast sometimes, but does avoid the whole item value exploit issue. Plus, cheap scrolls of continual flame are easy to either have available in-game in shops, loot, or via PC scroll scribing.


 


For the Community Patch, the duration change option could be included in the spell script, but just be commented out so builders can decide to use it or not just by uncommenting one line of code. As long as it's documented somewhere, it shouldn't then be too difficult to find and change.



               
               

               
            

Legacy_MannyJabrielle

  • Sr. Member
  • ****
  • Posts: 275
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #504 on: July 08, 2014, 08:51:25 pm »


               


Are you saying that since it doesn't prevent player from doing that and only make the whole process harder and less profitable its better to remove it? '<img'>




It doesn't make it less profitable, unless you are absolutely counting on module builders to set their stolen goods merchants to a value you personally would like them to use.


It doesn't even solve the issue the change is supposed to address.  It simply hassles the player and breaks continuity of game mechanics and breaks immersion.  The player sells a plain ring and a light enchanted ring he finds on a goblin.  Player learns magic version of item sells for more than non-magic version of item.  He then finds another plain ring and enchants it with his own CF spell.  Suddenly he can't sell it to specific merchants, but can to others.  That is a breakdown of the rules of the game.  From a player standpoint, had I not known about this change in the CPP, I would have considered the game bugged, with no logical reason to consider that it was an intentional game mechanic because of how fundamentally flawed it is.


 



 


Are you the kind of player that would like to do this? Just so I know where we stand, because imo, from the builders perpective there is no problem, some even makes item plot or replaces the permanent light with temporary (for duration of 9999999999.0 which makes it almost permanent but not affecting price). From a player perspective - if you want to cheat, why not give yourself 1000000GP already?



 


Ok, I actually have to take offense to that.  I really would appreciate it if you did not outright insult me and call me a cheater because I do not agree with your opinion on this mechanic, or how you implement it as a standard within a project that is supposed to be a community patch, not a house-rules modification.


 


Instead of just insulting me, why don't you take a moment to consider that yes I do full well know how to use the console commands, I'm in the habit of wasting my time, and my reasons for thinking this particular change in the CPP is bad are based on thought out reasoning.


 


If I wanted to *cheat* and get a hundred million GP, I would damn well use the console command to get a hundred million GP, not waste my time tediously casting a spell over and over again rather than having fun playing the game, and most definitely not wasting my time arguing with someone who throws personal attacks at me without cause.


I made my stance on the topic, and I stated my reasons for it very clearly already.  The spell works completely as intended.  The mechanics of price mark up for special properties works completely as intended.  It is not an exploit.


 


Buying/selling items back and forth to the same merchant when your appraise skill is extremely high is an exploit.  Continual light is not.  It's a game balance issue, and frankly one that should be left up to the builders and players to decide on if they want, just like any other house-rule modification.


 


Yes, I am the type of player who will enchant my non-magical loot with a caster character from time to time.  There is absolutely no that and selling weapons or armor I crafted with crafting materials.  Are you honestly going to tell me that you consider it cheating for a player to make a longsword out of crafting materials for a profit?  In both instances, the character uses his skills, abilities, or resources to make money within the established rules of the game.


 



What. If the current method still provided relatively effortless cash production, we wouldn't have this talk I believe because its not and you don't like it. And what exploiut this method creates, I don't follow?



 


The exploit is in the very implementation.  If the mechanics intent is to stop cash production, it does not accomplish that as there is absolutely nothing stopping the player from selling the item to a different merchant, thus completely bypassing the intent of the game mechanic in the first place.


So what's the problem then if the player can just go to a different merchant?  The problem is implementing someone's personal set of house-rules as a non-optional rule-set in a module promoted as a community patch project.  I understand completely that you are really the only one working on it, but if it's going to include your personal house rules, then those should be as a separate package for the players and builders to decide on using optionally, or implemented as switches to turn on and off via builder and/or player, otherwise it's not really a patch anymore in it's intent.


 



 


EDIT: Ok, I realized the potentional issue, not sure its what you meant, but in pre-existing modules without any merchant buying stolen goods it might be a problem.



That was an aspect I hadn't thought of either.  IMO that's another reason to avoid the method of setting item flags.  Off the top of my head I think witch'swake is just such a module.  Not sure, but i don't think any of the merchants in it (there aren't many at all) are black market merchants... flagging items as stolen would really be frustrating until the player figured out that the CPP was breaking the game mechanics.


               
               

               
            

Legacy_MannyJabrielle

  • Sr. Member
  • ****
  • Posts: 275
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #505 on: July 08, 2014, 09:11:21 pm »


               

ok, toyed around with the 2da's.  I'm not sure how you got the numbers you did.  I tweaked down the cost parameter in just the itemprofdef.2da down to 0.1 and then again down to 0.01, and both times it drastically reduced the gp value of the light property, but it still multplied when added with other properties.  At the 0.1 setting, my keen +0 dagger was 2208 GP with bright light, 2004 without bright light, and 8 GP with bright light but no keen.  4 GP without any properties.  The default property cost is 1.0, which makes a keen bright dagger 4500 or so, a bright dagger 504, and a plain dagger, 4.


If intent on changing the CF-value issue, it seems 2da is the way.  I'm just not seeing whatever issue you said you saw with setting a target price this way.  I don't seem to get any value changes from messing with the lightcosts 2da, but I'm getting plenty of change with the itemprofdef 2da.


 


The only issue I see with it is actually that it's a 2da edit, and not a variable that can be switched.  The setting it up as a long lasting temp property would see to be the far more comprehensive tweak.  It covers the issue 100%, and the spell's behavior could be switched between temp prop behavior and default behavior.


 


 




For the Community Patch, the duration change option could be included in the spell script, but just be commented out so builders can decide to use it or not just by uncommenting one line of code. As long as it's documented somewhere, it shouldn't then be too difficult to find and change.



 



Switch for the spell's behavior even better.  It's no problem for builders to do that, but it's more of a PITA for the player wanting to put his sp modules back to the default behavior.  The widget method of setting switches is a perfect implementation for non-building players.



               
               

               
            

Legacy_Shadooow

  • Hero Member
  • *****
  • Posts: 7698
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #506 on: July 08, 2014, 09:47:30 pm »


               

I don't mind basically any other implementation, but someone else always will. So lets talk about what solution is most ideal for majority. If possible then a solution which wouldn't required option switch to toggle that to default.


 


Some notes:


 


- changing itemproperty base cost value, especially the Item Cost Parameter which is/was heavily used for changing item price is not an option - such change will changes cost on all preexisting items retroactively and thats always bad - UMD is the main reason, as the difference in cost itself should be insignifical


- making itemproperty temporary will completely disable the cost increase - which itself isnt the problem as MannyJabrielle said


- partial reducing the cost via Item Cost Parameter has minor problem in modules with old itemproperty 2DAs it won't work there - so even if this solution will be used, there should be some backup solution


- NWNX solution is least ideal in my opinion because NWNX is optional



               
               

               
            

Legacy_MannyJabrielle

  • Sr. Member
  • ****
  • Posts: 275
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #507 on: July 09, 2014, 05:54:24 am »


               

Having the spell switch between default bioware behavior (perma property) and a temporary property behavior is the best way I think.  Satisfies having a switch AND it more effectively and consistently addresses the CF cash production issue when switched to do so.



               
               

               
            

Legacy_Shadooow

  • Hero Member
  • *****
  • Posts: 7698
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #508 on: July 09, 2014, 01:54:53 pm »


               

I would like to avoid that - CPP cannot have a switch for every little thing that doesn't suit few players.


 


IMO, builders doesn't need a switch for this, they either already dealt with it in which case CPP spellscript won't be in play, or they doesn't care (SP modules). For the rest, whatever the new solution will be - they will have to find out whether its adequate for them or not yet.


 


When the player would want to revert the behavior to vanilla then? Or in other words, what functionality is desired? Should this spell be expected to increase item worth? As this effect is not documented, not that it wouldn't be logical...


So if it should increase cost, the solution to decrease worth by ICP -C (-500gp) seems best to me as it makes it less profitable, but not spoil the selling itself in any way.


If it shouldn't increase cost, then the ultimate solution would be to find a formula calculate which ICP properties are needed to decrease cost to original value but making the light temporary for very long duration should work too.


 


At any way, I would rather removed this feature completely than adding a switch for that. Seriously, switches are great and I think the current selection of switches is fine and desired, but the more switches the less tranparent this will be and the more confusing this will be. I wouldn't want to end in a situation that so many other mods similar to CPP ended where player is more changing the options than actually playing the game.



               
               

               
            

Legacy_Bogdanov89

  • Full Member
  • ***
  • Posts: 155
  • Karma: +0/-0
Community Patch discussion and development thread
« Reply #509 on: July 10, 2014, 06:08:34 pm »


               

ShadoOow, i think i encountered some bugs with your mod "Hyper-Gore Re-Revised Edition":


 


1. The NWN game seems to consider important monsters alive as long as their "corpse" exists.


Many important enemies that i had to kill the game would not consider "dead" until i right click-bashed their corpses (bashed corpses into blood and guts).


Example would be the Catapult Commanders (or catapult captains?) in chapter 3 of original campaign, where i can not destroy ("use") the catapults until their Catapult Commander's body was bashed into nothing.


Even after i kill the catapult commander and click on the catapult, the game tells me that the commander is still alive - but this issue goes away after i bash the commander's corpse.


 


2. Certain creatures, like the huge water and huge air elementals, get bugged upon their death - they levitate in the air in a death pose, which looks really silly.


 


3. Certain enemies, like some variant of the "Shadow Fiend" and "Invisible Stalker" creatures, bleed big amounts of (usually green) blood - but those creatures are either ghosts or elementals of shadow/air, and as far as i know they do not have any blood to begin with.


I am not sure of the exact name of the bleeding ghosts/elementals, but they look like the Shadow Fiend type of monster.


 


 


The first bug is really annoying to deal with, since i have to bash pretty much every important corpse for the game to register the death of those monsters.


As long as the game requires me to kill a creature (and not just show it's head that i can loot), i need to bash all the relevant corpses in order for the game to register their deaths.


Worst situation is if i need to kill all the creatures in a specific area for something crucial to happen - i need to bash the corpse of every enemy in that specific area, which can mean i need to bash 15++ corpses '<img'>