Morrowind crime recognition

Post » Thu Nov 05, 2009 6:56 pm

Does Morrowind pick up what kind of crime that you commit and who it was to or does it just recognize that you committed a crime? If so, could this be applied to dialogue? Just for an example could I make it where if someone saw you steal something from a shop keeper, could they tell people and you start getting a greeting, that is something like, "hey you are the one who stole from that shop!"
User avatar
Lucky Boy
 
Posts: 3378
Joined: Wed Jun 06, 2007 6:26 pm

Post » Thu Nov 05, 2009 8:40 am

I could be wrong, but I'm pretty sure the game doesn't retain any info on exactly what crime you committed, it just remembers the total bounty.

What you want is probably possible, but it would take some careful scripting. You'd need to detect when the player's bounty has increased, and calculate the difference. If it changed by more than assault or lockpicking, but less than murder, you can probably guess that it was a theft. By looking at the player's current cell, you can decide if the crime occurred in a particular shop. If the conditions are true then you'd set some global variable that is read by the dialogue conditions.
A script like this would have problems if the player commits multiple crimes or changes cells before it's detected.
User avatar
c.o.s.m.o
 
Posts: 3419
Joined: Sat Aug 12, 2006 9:21 am

Post » Thu Nov 05, 2009 8:45 am

Ok, one more question. Does the game recognize who reports the crime?
User avatar
Lynne Hinton
 
Posts: 3388
Joined: Wed Nov 15, 2006 4:24 am

Post » Thu Nov 05, 2009 10:22 am

Ok, one more question. Does the game recognize who reports the crime?


No. I'm not near MWSFD atm but I think you can detect if an NPC has line of site on the player. You can also detect if an NPC is attacking the player. Along with MWSE which can be used to cycle through all the NPC's in a cell and check if they can see or are attacking the player a list of possible reporters could be built.
User avatar
Skivs
 
Posts: 3550
Joined: Sat Dec 01, 2007 10:06 pm

Post » Thu Nov 05, 2009 1:01 pm

For most crimes, the witness' disposition goes down, so you could maybe detect witnesses but I can't think of any way to determine exactly who reported it. For theft, it seems that the amount of the disposition drop depends on the value of the item you stole. It doesn't seem to matter who owned the item though.


Out of curiosity I did some crime experiments on Arrille. Also in the room is Tolvise Othralen. Both have a starting disposition to me of 40.
I don't know how useful any of this is to you, but I found it interesting and might as well post the data.
Stole a bottle (1gp) on Arrille's counter, which belongs to Elone - dispositions of both him and Tolvise stayed at 40, even though it was seen and reported and they attacked me.Added a bowl (5gp) on the floor that belongs to Fargoth, who isn't in the building.  Stole it, disposition of Arrille and Tolvise dropped to 38.Stole a book (25gp) which belongs to Arrille, disposition of him and Tolvise dropped to 28.  [So they always seem to drop by 1/2 value rounded down.]Stole a pitcher (12gp) upstairs which belongs to Elone, disposition of Hrisskar dropped only by 2 points from 85 to 83.  Maybe because we're both Nords?pickpocket Arrille, I saw an item and tried but failed to take it - disposition dropped to 0, Tolvise stayed the same.  Bounty went to 100, even though I didn't succeed.pickpocket Arrille, saw an item, closed without trying to take - disposition dropped to 15, Tolvise stayed the same.  Bounty 25.pickpocket Arrille, didn't see any items - disposition dropped to 15, Tolvise stayed the same.  Bounty 25.pickpocket Arrille, successfully stole 2 scrolls but was caught - disposition dropped to 15, Tolvise's disposition stayed the same.  Didn't check the bounty.assault Arrille - his disposition dropped to 25, and Tolvise's dropped to 0!  I guess she likes him.  Both attacked me.         Tried the opposite, assault on Tolvise, and her disposition dropped to 25, Arrille's to 0.  So witnesses get more angry than the victim in an assault.


When pickpocketed, only the victim notices, but when you steal an item in the open, or assault, then others will witness it and react. They drop disposition and usually attack.
Theoretically you could detect if somebody witnessed a crime by detecting a drop in the NPC's disposition at the same time as an increase in player's bounty. That won't mean they reported it though, and you'd have to check each NPC individually.


=====

I could be wrong, but I'm pretty sure the game doesn't retain any info on exactly what crime you committed, it just remembers the total bounty.

This wasn't quite right. It may not remember long-term, but I just noticed there's a scripting function called OnMurder which is set to 1 for one frame when the calling actor is murdered. So a script could detect murder at the moment it occurs. I don't see any function that detects theft though.
User avatar
Claire Mclaughlin
 
Posts: 3361
Joined: Mon Jul 31, 2006 6:55 am

Post » Thu Nov 05, 2009 7:48 am

Ok thanks that helps a lot. One more question I just thought of ( this is the last one I promise ). How does the game flag a stolen item?
User avatar
Rob
 
Posts: 3448
Joined: Fri Jul 13, 2007 12:26 am

Post » Thu Nov 05, 2009 10:53 am

I don't think the stolen flag is visible from a script, but hopefully somebody can correct me if I'm wrong.

Internally, once you steal an item, the game will flag all identical items as stolen and belonging to some particular NPC (as you may already know). I don't know if it updates to a new NPC when you steal from someone else, or if it retains the original NPC forever.
There is a console command "ToggleFullHelp" which will reveal the ownership flag to the player, but unfortunately I don't think it's possible to read this info from a script.
User avatar
Greg Cavaliere
 
Posts: 3514
Joined: Thu Nov 01, 2007 6:31 am

Post » Thu Nov 05, 2009 1:26 pm

Ok, thanks for all of your help!
User avatar
Samantha Mitchell
 
Posts: 3459
Joined: Mon Nov 13, 2006 8:33 pm

Post » Thu Nov 05, 2009 2:53 pm

What about the "alarm" (IIRC) level? Don't npc's have the ability to comunicate crimes to another npc with this?

Silentthief
ps, this is mostly from my faulty memory and an Xbox morrowid. Computer bit the dust and I cannot test anything :(
User avatar
Claire
 
Posts: 3329
Joined: Tue Oct 24, 2006 4:01 pm

Post » Thu Nov 05, 2009 6:25 am

Internally, once you steal an item, the game will flag all identical items as stolen and belonging to some particular NPC (as you may already know). I don't know if it updates to a new NPC when you steal from someone else, or if it retains the original NPC forever.

It's forever, apparently. This stuff is recorded in the savegame "STLN" (stolen) records, which contain a list of Actor (or Faction) owners who you stole the item from. Decoded, they look something like this:

Record: STLN "misc_soulgem_lesser" Flags:0x0000 ()
NAME: ID:Misc_SoulGem_Lesser
FNAM: Owner_Faction:TR_MagesGuild
ONAM: Owner_Actor:TR_m1_O_Ararvyne_Senim

I don't think there's any limit to the number of owners that can be remembered. Apparently, my character likes to steal saltrice:

Record: STLN "ingred_saltrice_01" Flags:0x0000 ()
NAME: ID:ingred_saltrice_01
ONAM: Owner_Actor:bolvyn venim
ONAM: Owner_Actor:bolyn elval
ONAM: Owner_Actor:bivale teneran
ONAM: Owner_Actor:Orvas Dren Druglord
ONAM: Owner_Actor:mal mibishanit
ONAM: Owner_Actor:yapal esatliballit
ONAM: Owner_Actor:TR_m1_Veranon
ONAM: Owner_Actor:TR_m1_T_Faruna
ONAM: Owner_Actor:TR_m2_Olcarya
ONAM: Owner_Actor:TR_m2_Gandela Dralor
User avatar
Trish
 
Posts: 3332
Joined: Fri Feb 23, 2007 9:00 am

Post » Thu Nov 05, 2009 8:51 pm

I don't think there's any limit to the number of owners that can be remembered. Apparently, my character likes to steal saltrice:

Record: STLN "ingred_saltrice_01" Flags:0x0000 ()
NAME: ID:ingred_saltrice_01
ONAM: Owner_Actor:bolvyn venim
ONAM: Owner_Actor:bolyn elval
ONAM: Owner_Actor:bivale teneran
ONAM: Owner_Actor:Orvas Dren Druglord
ONAM: Owner_Actor:mal mibishanit
ONAM: Owner_Actor:yapal esatliballit
ONAM: Owner_Actor:TR_m1_Veranon
ONAM: Owner_Actor:TR_m1_T_Faruna
ONAM: Owner_Actor:TR_m2_Olcarya
ONAM: Owner_Actor:TR_m2_Gandela Dralor

Interesting. So it remembers every owner, that's a lot better than I assumed.
Too bad it doesn't remember a date for each owner, so it could "forget" at some reasonable point.
User avatar
Rachael Williams
 
Posts: 3373
Joined: Tue Aug 01, 2006 6:43 pm

Post » Thu Nov 05, 2009 3:57 pm

is this something that you can test for? I mean prolly using MWSE or something, but can you use a script to return a value based upon this information?

SilentThief
User avatar
yessenia hermosillo
 
Posts: 3545
Joined: Sat Aug 18, 2007 1:31 pm


Return to III - Morrowind