[FIXED] Issues with the peacemaking skill
- Xuri
- Site Admin
- Posts: 3704
- Joined: Mon Jun 02, 2003 9:11 am
- Location: Norway
- Has thanked: 48 times
- Been thanked: 8 times
- Contact:
Issues with the peacemaking skill
The effects of the peacemaking skill are very hard to notice when used on aggressive NPCs, seeing as all it does is take the affected NPCs out of combat for a split second before they locate a new target.
On the official shards the peacemaking skill works a bit differently, in that it disables the affected NPCs ability to enter combat for a while. If they are damaged/attacked while "peacemaked", there's a chance (increasingly big for each time they're damaged) that they'll break out of it.
We need a way to stop them from acquiring new targets for a while after the peacemaking skill has effectively been used, and should possibly implement the "increasing chance of breaking peace" feature as well.
Another problem has been that there's been no difference between using peacemaking on a sheep and on a dragon, but after Grimson added the TOPEACE DFN tag and the .skillToPeace JS property, I've modified the PeaceMakeArea function of peacemaking.js script to make sure it checks the peacemaking skill against their TOPEACE value.
On the official shards the peacemaking skill works a bit differently, in that it disables the affected NPCs ability to enter combat for a while. If they are damaged/attacked while "peacemaked", there's a chance (increasingly big for each time they're damaged) that they'll break out of it.
We need a way to stop them from acquiring new targets for a while after the peacemaking skill has effectively been used, and should possibly implement the "increasing chance of breaking peace" feature as well.
Another problem has been that there's been no difference between using peacemaking on a sheep and on a dragon, but after Grimson added the TOPEACE DFN tag and the .skillToPeace JS property, I've modified the PeaceMakeArea function of peacemaking.js script to make sure it checks the peacemaking skill against their TOPEACE value.
Last edited by Xuri on Wed Apr 05, 2006 2:17 pm, edited 1 time in total.
-= Ho Eyo He Hum =-
-
Grimson
- Developer
- Posts: 802
- Joined: Sat Jun 04, 2005 1:52 am
- Location: Germany
- Has thanked: 0
- Been thanked: 0
Would a simple JS property .canAttack be enough? I think the delay before allowing a new attack can be handled by a JS timer and the chance to break out of it earlier by the onAttack event.Xuri wrote:We need a way to stop them from acquiring new targets for a while after the peacemaking skill has effectively been used, and should possibly implement the "increasing chance of breaking peace" feature as well.
-
Grimson
- Developer
- Posts: 802
- Joined: Sat Jun 04, 2005 1:52 am
- Location: Germany
- Has thanked: 0
- Been thanked: 0
Ok, this is how it will work:
there is a new JS property for chars .canAttack if this is set to 0 the char cannot attack a target.
The time after this is lifted has to be set using a js timer.
The chance that it is lifted will be calculated by the server code.
You can set the chance gain on hits by giving the TOPEACE tag a second number (as always use a space as seperator for the numbers).
For players the chance gain will be their own peacemaking skill.
there is a new JS property for chars .canAttack if this is set to 0 the char cannot attack a target.
The time after this is lifted has to be set using a js timer.
The chance that it is lifted will be calculated by the server code.
You can set the chance gain on hits by giving the TOPEACE tag a second number (as always use a space as seperator for the numbers).
For players the chance gain will be their own peacemaking skill.
-
giwo
- Developer
- Posts: 1780
- Joined: Fri Jun 18, 2004 4:17 pm
- Location: California
- Has thanked: 0
- Been thanked: 0
That's combat timeout. We set it on every swing based on your dex and weapon speed. If you want it to temporarily "paralyze" a creature and stop them from fighting, that would be the timer to use.
As a side note, just remember anytime you are talking about something like combat, that is VERY time-intensive and handled by UOX3 constantly, so be careful what areas you are letting JS handle.....
As a side note, just remember anytime you are talking about something like combat, that is VERY time-intensive and handled by UOX3 constantly, so be careful what areas you are letting JS handle.....
Scott
-
Grimson
- Developer
- Posts: 802
- Joined: Sat Jun 04, 2005 1:52 am
- Location: Germany
- Has thanked: 0
- Been thanked: 0
But this wouldn't stop them from using magic, or am I wrong?giwo wrote:That's combat timeout. We set it on every swing based on your dex and weapon speed. If you want it to temporarily "paralyze" a creature and stop them from fighting, that would be the timer to use.
Could you have a look at my latest CVS commit and give some comments? Maybe there is a better way to handle this.giwo wrote:As a side note, just remember anytime you are talking about something like combat, that is VERY time-intensive and handled by UOX3 constantly, so be careful what areas you are letting JS handle.....