Jump to content

"I kind of miss human skin" message (identifying popups/monologue)


Recommended Posts

Made this xEdit script a while back. Horribly slow, but a thousand times faster than searching by hand.

{
  Find message
}
unit UserScript;

function Initialize: integer;
var
  i: integer;
  j: integer;
  f: IInterface;
  e: IInterface;
  sig: string;
begin
  // iterate over loaded plugins
  for i := 0 to Pred(FileCount) do begin
    f := FileByIndex(i);
    
    for j := 0 to Pred(RecordCount(f)) do begin
        e := RecordByIndex(f, j);
        sig := Signature(e);
        if sig <> 'MESG' then
            Continue;
        
        Search(e)
    end;
  end;
end;

procedure Search(e: IInterface);
var
    m: string;
begin
    m := GetElementNativeValues(e, 'DESC');
    
    if pos('I kind of miss human skin', m) > 0 then
        AddMessage(IntToHex(GetLoadOrderFormID(e), 8));
end;

end.

 

Link to comment
1 hour ago, traison said:

Made this xEdit script a while back. Horribly slow, but a thousand times faster than searching by hand.

{
  Find message
}
unit UserScript;

function Initialize: integer;
var
  i: integer;
  j: integer;
  f: IInterface;
  e: IInterface;
  sig: string;
begin
  // iterate over loaded plugins
  for i := 0 to Pred(FileCount) do begin
    f := FileByIndex(i);
    
    for j := 0 to Pred(RecordCount(f)) do begin
        e := RecordByIndex(f, j);
        sig := Signature(e);
        if sig <> 'MESG' then
            Continue;
        
        Search(e)
    end;
  end;
end;

procedure Search(e: IInterface);
var
    m: string;
begin
    m := GetElementNativeValues(e, 'DESC');
    
    if pos('I kind of miss human skin', m) > 0 then
        AddMessage(IntToHex(GetLoadOrderFormID(e), 8));
end;

end.

 

Thanks, where/how do I run this?

 

Link to comment

In that case it found nothing. It would dump the formids between those 2 lines. Either the text you provided ('I kind of miss human skin') is not 100% correct (capitalization, number of whitespaces used etc.) or the message comes from a call to Debug.Notification.

 

To find messages created from a script you'll need script sources (*.psc files). If you already have those for all/most of your mods, you can use something like Notepad++ to quickly search through all your mods for that same line: 'I kind of miss human skin'

 

If you're unsure of the exact string to search for, you can obviously also try a part of it like 'human skin'. The string to search for in the xEdit script is near the end of the script.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use