I'm quite lost here.
There's not much info in the wiki aside of:
"2) Persuade lines that need to be marked as "lie" or "charm" - player
lines only: When a line that has been flagged in the toolset as a
"Persuade" line needs to me marked as a specific "lie" or "charm",
write Lie or Charm at the line's beginning. Then, use <desc> tags
around that word so that it will be set off from the rest of the line.
For example: <desc>Lie</desc> "Of course I didn't report
you to the authorities." appears in-game as: "(Lie) Of course I didn't report you to the authorities.""
Fine, but how do I get to set the level of cunning the PC must have in order to be successful in persuading? How do you mark the alternative dialog for the OWNER (when the persuasion fails)?
Thanks. :-)
Persuasion.
Débuté par
DLAN_Immortality
, janv. 01 2010 10:36
#1
Posté 01 janvier 2010 - 10:36
#2
Posté 01 janvier 2010 - 11:52
This isn't the most elegant way to do it, but it'll work.
To do it the way you're describing you'd have the player line:
[PLAYER]<desc>Lie</desc> "Of course I didn't report you to the authorities."
Then you'd add two OWNER lines after:
[OWNER]Aw, I trust you, it's OK.
[OWNER]You did! I can tell! Argghhh!
You'd put a script condition on each. For the top one, you can just use the following (for an easy check)
#include "utility_h"
int StartingConditional(){
object oHero = GetHero();
return UT_SkillCheck(SKILL_PERSUADE, UT_SKILL_CHECK_LOW, oHero);
}
For the second one you want the opposite result, so you need something like this:
#include "utility_h"
int StartingConditional(){
object oHero = GetHero();
if (UT_SkillCheck(SKILL_PERSUADE, UT_SKILL_CHECK_LOW, oHero)) {
return FALSE;
} else {
return TRUE;
}
}
You can just use different UT_SKILL_CHECK constants for different difficulties. I'm not 100% sure that UT function works on cunning, only skill level seems to make a difference in my module, but I've only used it for easy or moderate checks at lowish levels.
To do it the way you're describing you'd have the player line:
[PLAYER]<desc>Lie</desc> "Of course I didn't report you to the authorities."
Then you'd add two OWNER lines after:
[OWNER]Aw, I trust you, it's OK.
[OWNER]You did! I can tell! Argghhh!
You'd put a script condition on each. For the top one, you can just use the following (for an easy check)
#include "utility_h"
int StartingConditional(){
object oHero = GetHero();
return UT_SkillCheck(SKILL_PERSUADE, UT_SKILL_CHECK_LOW, oHero);
}
For the second one you want the opposite result, so you need something like this:
#include "utility_h"
int StartingConditional(){
object oHero = GetHero();
if (UT_SkillCheck(SKILL_PERSUADE, UT_SKILL_CHECK_LOW, oHero)) {
return FALSE;
} else {
return TRUE;
}
}
You can just use different UT_SKILL_CHECK constants for different difficulties. I'm not 100% sure that UT function works on cunning, only skill level seems to make a difference in my module, but I've only used it for easy or moderate checks at lowish levels.
#3
Posté 02 janvier 2010 - 01:45
Awesome, works like a charm! :-)
However, I was still persuading the NPC with "UT_SKILL_CHECK_HIGH" and I wanted something harder.
So to be absolutely sure of the level of persuasion, I used this instead of UT_SkillCheck:
if (HasAbility(oPC,100014))
nResult=TRUE;
else
nResult=FALSE;
break;
Where "100014" is Master persuasion, 100013 is Expert persuasion, 100012 is improved persuasion, and 100011 is persuasion; as per ABI_base.xls
Thanks a lot for your help! :-D
However, I was still persuading the NPC with "UT_SKILL_CHECK_HIGH" and I wanted something harder.
So to be absolutely sure of the level of persuasion, I used this instead of UT_SkillCheck:
if (HasAbility(oPC,100014))
nResult=TRUE;
else
nResult=FALSE;
break;
Where "100014" is Master persuasion, 100013 is Expert persuasion, 100012 is improved persuasion, and 100011 is persuasion; as per ABI_base.xls
Thanks a lot for your help! :-D
#4
Posté 02 janvier 2010 - 10:19
Just so you know, if you're making an add-in, you can to do basic skill checks using the plot gen00pt_skills under the _Global\\Generic folder and selecting the appropriate skill type/difficulty.
If it doesn't work in a standalone module, you should just be able to copy the plot and it's script into your module and use it that way - all the flags are defined flags .
Unfortunately there doesn't seem to be any plot to handle the PC bribing/paying people, so I'm doing that via script at the moment.
If it doesn't work in a standalone module, you should just be able to copy the plot and it's script into your module and use it that way - all the flags are defined flags .
Unfortunately there doesn't seem to be any plot to handle the PC bribing/paying people, so I'm doing that via script at the moment.





Retour en haut







