Lav said:1. Took 1.143 module system.Caba`drin said:Without making these merchant changes, however, your merchants will cease to stock helmets, gloves, and a couple other item types as the way the engine handles some of the operations has changed and the content of the script/trigger code changed slightly to accommodate.
2. Moved all code from script_refresh_whatever scripts into their respective triggers.
3. Commented out all calls to script_refresh_whatever scripts in the code.
4. Started a new game.
5. Cheated a million bucks.
6. Bought out all arrows, bolts, helmets and gloves in Praven.
7. Stayed in the inn for a week (triggers are set every 168 hours == 1 week).
7.5. Had enough time to think about my own stupidity for not changing triggers to a shorter period.
8. Went to marketplace.
7. Enjoyed the sight of successfully refreshed arrows, bolts, helmets and gloves.
In short: there is no real need to refresh merchants through scripts. Triggers worked perfectly fine in 1.134 and they work perfectly fine in 1.143. I don't know what happened in 1.142, but apparently it was not engine changes but simple and pure programmers' mistakes.
Caba`drin said:So, I've done a few more "let the game simulate itself" tests...with some disappointing results.
It would appear that the fix for bolts/arrows/gauntlets/boots works for Native (with old save games or new, running Native 1.143, these item types do not disappear). BUT, this is not the case for mods, where the changes in the production system (and the relationship between the .exe and the Module System it would seem on these issues) still result in these particular items disappearing. This means for the equipment to not disappear in non-Native mods, the mods will need to make the appropriate Module System changes and port to 1.143.
I'm sorry, this is definitely not intentional.Caba`drin said:Perhaps I'm making it up, but your responses frequently seem to assume I make comments without testing things or am otherwise not speaking from experience; I find this apparent assumption confusing.
Well, that's right, they did change the engine somewhat which caused the old scripts to malfunction and didn't fix the scripts to match the engine. And then they went and fixed the scripts. However, all those changes are of absolutely zero relevance to the BareBones module because both 1.134 and 1.143, when stripped to BareBones, become absolutely identical (save for header_operations). That's the point I was making and defending (apparently against a non-existent challenge as you meant something else entirely ).Caba`drin said:The 1.143 code in script_refresh_whatever is not the same as the code in 1.134 triggers, however. The new code adds (troop_clear_inventory, ":cur_merchant"), with every call. Somehow without this, there are issues (see all the complaints with the release of version 1.142 or the attempts of people to run 1.134 mods on 1.142/3). If you use the 1.134 triggers code on the 1.143 engine and let the game simulate for 2 months or so, there will be 0 bolts, gloves, and helmets with the merchants and they will never reappear. I and others have replicated this numerous times.