This mod causes Talking Trains Speechcraft to count that mod's level ups twice. I presume it's because that mod already triggers a level event, which this one then does also.
Many years ago I was part of a team maintaining code developed by others. Poorly commented code meant sometimes a total lack of understanding as to what the original developer was trying to achieve, and more often than not what they screwed up in their code.
So;
I must complement you on your very clean looking and well commented code in the main.lua file.
The generic mode should handle any custom dialog that raises skills. However, if you don't want to use that, you can add specific actors/ids to filter in quests.lua.
Alright I have tried again to add a new quest to the list which I edited to give two skill rewards for two different choices, but it does not work for some reason. no error messages in log. don't know what I could be doing wrong:
return { -- Widowmaker ['botrir'] = { '273691502665574168' }, -- The Price List ['mevure hlen'] = { '21438159911183310319' }, -- The Angry Trader ['tinos drothan'] = { '2211828993356731823', '12955751791531361', '1016458152883123224', '124578435416012955' }, -- The Silver Bowl ['piernette beluelle'] = { '28566261832327412815' }, -- The Tax Man ['foryn gilnith'] = { '2020127395768714958', '17975266221179513617' } }
Thank you very much for this. This perfectly resolves the issue of scripted skill increases not granting attribute/level progress (and not being detected by mods that use skillRaised). I've linked to this from CCCP. I think everybody should use this, but especially users of mods like CCCP and MULE that can now take advantage of it.
The only dialogue/quest reward skill increase this mod doesn't detect is the reward from Almalexia (in The Missing Hand) that increases your four armor skills by 5 each. It doesn't detect it because this one is implemented differently, as a permanent magical ability, and the ability isn't immediately gained upon seeing the dialogue response so the mod doesn't detect it.
It would be tricky to account for this though. Probably the best way of handling that particular case is a plugin that changes that reward option to something else (say, resist normal weapons), or just makes it give normal scripted skill increases so they'd be detected by this mod.
I felt that the reward from "The Missing Hand" was out of scope for this mod, since it was implemented differently. That quest reward seems like a deliberate choice by the developers, while the quests addressed by this mod seem more like a compromise.
14 comments
So;
I must complement you on your very clean looking and well commented code in the main.lua file.
return {
-- Widowmaker
['botrir'] = { '273691502665574168' },
-- The Price List
['mevure hlen'] = { '21438159911183310319' },
-- The Angry Trader
['tinos drothan'] = { '2211828993356731823', '12955751791531361', '1016458152883123224', '124578435416012955' },
-- The Silver Bowl
['piernette beluelle'] = { '28566261832327412815' },
-- The Tax Man
['foryn gilnith'] = { '2020127395768714958', '17975266221179513617' }
}
I am using the topic ID, is that correct?
The only dialogue/quest reward skill increase this mod doesn't detect is the reward from Almalexia (in The Missing Hand) that increases your four armor skills by 5 each. It doesn't detect it because this one is implemented differently, as a permanent magical ability, and the ability isn't immediately gained upon seeing the dialogue response so the mod doesn't detect it.
It would be tricky to account for this though. Probably the best way of handling that particular case is a plugin that changes that reward option to something else (say, resist normal weapons), or just makes it give normal scripted skill increases so they'd be detected by this mod.