NPC dialogues

Everything about development and the OpenMW source code.
User avatar
greye
Posts: 47
Joined: 21 Jul 2012, 16:00

Re: NPC dialogues

Post by greye »

Zini wrote:According to MSfD 02 Rank Requirements also checks the faction reputation. Where the heck do I find the faction reputation requirement for a rank? There is nothing in the ESX data structures.
ESM::Faction::mData.mRankData.mFactionReputation
trikorder
Posts: 44
Joined: 07 Feb 2012, 16:33

Re: NPC dialogues

Post by trikorder »

Zini wrote:According to MSfD 02 Rank Requirements also checks the faction reputation. Where the heck do I find the faction reputation requirement for a rank? There is nothing in the ESX data structures.
google give me this, but I have no idea from where they collected these numbers.
http://elderscrolls.wikia.com/wiki/Factions_(Morrowind)
User avatar
Zini
Posts: 5538
Joined: 06 Aug 2011, 15:16

Re: NPC dialogues

Post by Zini »

ESM::Faction::RankData::mFactionReputation
I do not see such a member in RankData:

Code: Select all

struct RankData
{
    int mAttribute1, mAttribute2; // Attribute level

    int mSkill1, mSkill2; // Skill level (faction skills given in
    // skillID below.) You need one skill at
    // level 'skill1' and two skills at level
    // 'skill2' to advance to this rank.

    int mFactReaction; // Reaction from faction members
};
User avatar
greye
Posts: 47
Joined: 21 Jul 2012, 16:00

Re: NPC dialogues

Post by greye »

Zini wrote:I do not see such a member in RankData
Misspelled it, but it is what you're looking for (mFactReaction).
User avatar
Greendogo
Posts: 1467
Joined: 26 Aug 2011, 02:04

Re: NPC dialogues

Post by Greendogo »

PC Health returns the PC's current health, not Max Health. Just tested it.
User avatar
Greendogo
Posts: 1467
Joined: 26 Aug 2011, 02:04

Re: NPC dialogues

Post by Greendogo »

62 Attacked
65 Creature Target
71 Should Attack
These are the ones I'm not sure about.
62 could be the PC attacked the target NPC, that makes the most sense, like you said. This should be easy to test by attacking and then calming an NPC.
More likely, 62 Attacked mirrors the script function "getAttacked" which returns a Boolean value relating to the NPC's status of having ever been attacked. 1 for yes, 0 for no.

65, I have no idea.

71 could have something to do with being in a state with a disposition low enough to attack, but then why not run a disposition check instead? Probably more going on here.

Btw, Friend Hit is in MSfD.
User avatar
Zini
Posts: 5538
Joined: 06 Aug 2011, 15:16

Re: NPC dialogues

Post by Zini »

Update: 57 of the 78 filter functions are functional now. And I also finished the dialogue manager clean up.
Chris
Posts: 1626
Joined: 04 Sep 2011, 08:33

Re: NPC dialogues

Post by Chris »

Greendogo wrote:71 could have something to do with being in a state with a disposition low enough to attack, but then why not run a disposition check instead? Probably more going on here.
Perhaps if the NPC is in combat with the player. Like guards when they're going to confront you for a crime.
User avatar
Greendogo
Posts: 1467
Joined: 26 Aug 2011, 02:04

Re: NPC dialogues

Post by Greendogo »

I wish there was a way to search the dialogue topics by their filters. That would make determining the use of the filters easier.

Alas, there are thousands of topics, and it seems these unknown ones aren't used very often.
User avatar
Zini
Posts: 5538
Joined: 06 Aug 2011, 15:16

Re: NPC dialogues

Post by Zini »

First a correction: The total number of function filters is 72, not 78.

The remaining unimplemented functions are:

0 Rank Low
1 Rank High
3 Reputation
47 Faction Rank Diff
48 Detected
49 Alarmed
59 Weather
62 Attacked
65 Creature Target
71 Should Attack

For these I have either no data, guesses or insufficient data. Any help welcome.

Anyway, at this point what is missing from quest functionality are mostly script functions used in the script section of the dialogues. For the near future I will focus on adding a few more of these.
Post Reply