Oh, that's good to know Does Obscurity cause "Soul of Female Breton" kind of names to appear? It still makes sense that you don't know the name of a person whose soul you trapped, but might look a bit weird
Yes, either disable Obscurity feature if you just want to always see their names or change in the ini file sDefaultName in Obscurity section if you prefer a simple ??? It other placeholder.
Getting a strange bug in the latest version. 1. Some named NPC get a name. For example i had Utgerth, that is a vanilla NPC and she is a guard for the Skyland temple, got a new name... 2. Some creatures that suppose dont need a name are getting one: In my case i saw this to happen to mudcrabs and Charus in the marsh lands. Also Slaughterfish too
Huh, that's weird, could you take a look at their keywords with More Informative Console? And share a screenshot it sounds like they didn't get a keywords they were supposed to or the other way around - got a keyword they were not supposed to. In any case, this sounds like something in SPID that I'll need to take a look.
Oh, you should revert SPID to 7.1 SPID 7.1.1 was broken, as you see on the screenshot it just distributed all possible keywords like if there are no filters.
In theory it can (you'll need to install at least Tamrielic Names to provide the names). But blank names are not okay and you'd probably want to investigate why that happened. Also, perhaps Fix Blank Names would do it for you if you only care to see original names again.
Ah, I see. Most likely you have NPCs whose reference's names were set to blank. You can try Name Fixer feature of NND 2. While it was created to reset stuck names from NND 1, it can also be used to reset any name (including blank one) on demand. See Name Fixer section at the bottom of the description page
It works in a weird way, it shows Obscuring Names but still can't interact with them, when I disables Obscuring Names in the ini it changes back to Blank Names Other than not being able to collect gear from corpses, the rest looks good.
I found that the problem may come from the synthesis patcher, so the ESP record itself may have issues. In addition, the hotkey seems to conflict with IED on my end, as only IED's menu appears when I use it.
Do you know where the translation file for [sex] is? It comes from sDefaultName. For some reason [race] is translated correctly in my game but [sex] is not.
}, "Conjunctions": {·}, "Shortened": ["First"]}Can I make · for Conjunctions?Doesn't seem to be functioning properly: [json.exception.parse_error.101] parse error at line 846, column 22: syntax error while parsing object key - invalid literal; last read: '"锘緾onjunctions": {?; expected string literal
Yes you can, your conjunctions must be wrapped in double, though, so that json file could be properly parsed.
Not sure where translations
Also, you can change hotkeys to whatever you want in ini but if you’re saying that esp itself has empty names then no amount of trickery will restore their names because they are simply not there
Also, for some reason, the names on the TrueHUD's EnemyHUD for hostile animals have disappeared. It's not due to the blank name bug because I can see the name normally if it turns into a corpse.
TrueHUD is a known issue at the moment. There is a fix pending on TrueHUD's side, meanwhile you can downgrade NND to 2.3 to avoid the problem. It comes from integration between NND and TrueHUD, which was introduced in NND 2.4.
Conjunctions are meant to follow the same structure as other sections. It can actually vary depending on sex. So what you want is: "Conjunctions": { "Any": ["."] }
Sorry, I never got a chance to upload updated example file containing all the structure. This is mentioned in the Dev Guide, but without a full example.
Also, that particular error you've shown tells you that inside curly brackets {} JSON expects key:value pairs, so it tells you that you've written a key "." but then didn't include the : "value". To provide a list of values you'd need to use square brackets [].
For some reason Conjunctions still doesn't seem to work for me (it shows spaces). But there are no errors in the log. Some of my files, if you have time to look through them:NordOrc
I'll have to check how empty conjunctions is handled exactly. I don't remember adding any restrictions for that, but it was a long time ago gonna test and let you know later today.
Also, is there a reason you have two double quotes in your first names section? If you want to decorate names with quotes you can use Prefix and Suffix to do that for all names in the section for you.
Each section (First, Middle, Last) have it's own prefix/suffix configuration so if you declare prefix/suffix for First name section it will wrap only names provided in the First section.
Let me upload an example real quick, it should help you better understand everything you can do with the Name Definition. UPD: Done. Check out Example Name Definition.
I've copied your ini and it seems there is an unexpected character right in the key's name, so NND does not recognize it and falls back to its default:
This was a tricky one but luckily, I saw this happen to other people.
After testing most races conjunction can now work properly, but for some reason Orc's Conjunction still can't work, it may be caused by Prefix or there's some other formatting error I don't know about.
Yeah, in most modern text editors there should be an option to show invisible characters. They should appear similarly to what’s on my screenshot. Those characters don’t make the format wrong, but they are equivalent of a misspelled word, causing the field to be ignored by NND. I’ll go through all code snippets on description page and see if there are any.
If obscurity feels too weird for you, you can always disable it in a press of one hotkey: Right Ctrl + O as well as re-enable later if you want to give it another try
Is it possible to put the new Name in the brackets instead of the vanilla name? Because as it is now Mantella (Bring NPCs to life with AI) does not recognise any of the NPCs because it works on a spreadsheet where every NPC name (also for popular mods) is stored and linked to a handwritten bio.
I am stupid, it is in the ini: sFormat = [title] ([name]) - I guess so, does that make it work with mods that seek for vanilla names?
Hey, interesting case I checked Mantella's sources and it looks like it uses GetDisplayName, which must be hooked by NND and return name from "Other" context. I need to confirm this by looking at Skyrim's scripts sources, though
This should make Mantella distinguish all generic NPCs. All uniquely named NPC should work the same. Unless there are other spots where Mantella gets names differently. NND does not actually rename any NPC, it only adds an extra layer which swaps names displayed on UI, so if Mantella bypasses this layer, then it will see original names.
The sFormat is used for "Display Name Style", which, by default, is only shown when you're pointing crosshair at NPC.
Ah I see and thank you very much for the investigation! <3 Yes I noticed that if I talk to a Whiterun Guard and ask about their duty they just say they are no guards and use the generic dialogue that is used when Mantella could not identify the NPC from the csv. When I ask about their title they dont say they have one but if I ask for the name, they call out their NND given name.
Maybe you don't need to because I just tested that Mantella works fine with exaclty this config:
; See Name Context section on mod's Description. [NameContext] sCrosshair = title sCrosshairMinion = title sSubtitles = title sDialogue = full sDialogueHistory = full sInventory = full sBarter = short sEnemyHUD = full sOther = title
[Obscurity] ; Enables or disables Obscuring Names. bEnabled = false
Ah, well, that's a workaround, if there is no title NND will fallback to their default name because at any point there might appear a new mod that gives titles to unique NPCs. I have such mod in progress Your configuration will cause NND to show their titles instead of actual names.
I have a question about capitalization in names. In my game, Female Imperials are appearing as "Female IMPERIALS," while all other races are correctly capitalized, like "Female Nord," "Male Breton," etc. I was reading that this might be linked to text strings, but I'm not sure how to find and fix any errors in regards to that.
Do you have any insight or ideas on how to solve this?
Yes, the game stores all text strings as case-insensitive, so the first word "Imperial" that game loads will be used for all other instances of that text, regardless of its capitalization. It happens to be that there is "IMPERIAL" somewhere in the game that gets loaded first, so every other "ImPeRiAl" texts will use "IMPERIAL" hope that didn't confuse you even more.
Anyways, one can definitely fix this, by configuring Obscuring Name Definitions and providing race names manually this will avoid using in-game stored texts and instead will use proper case-sensitive names from the files.
I'm working on a new add-on that will do exactly this (along with adding other cool stuff to Obscuring).
Thanks for clearing that up! So, to track down where the override's coming from, should I dive into SSEEdit? I get that each load order's its own puzzle; I just need a hint where to start.
And about manually setting race names with NND, is that not a thing yet? Sorry if I got mixed up on features.
Oh, and will this new feature help fix those 'Male Old Person Race' instances?
There is no overwrite in this case. "IMPERIAL" is something in the base game.
"Setting race names" as you currently see, is a feature of default Obscurity. It just substitutes a special placeholder in default obscurity text with race name that it pulls dynamically in-game. Hence why you see "IMPERIAL" because this is what game returns as Imperial's race name.
"Manually setting race names" doesn't require any new features. NND as a framework already supports all kinds of naming rules. Just like Tamrielic Names defines pool of names for each race, this new add-on can define similar pool but exclusively for Obscuring names, e.g. the names that will be distributed to people whom you don't know yet.
In other words, it's all already in there, I just didn't have time to make this add-on complete. But anyone can do proper obscurity with nice race names (including "Old Race People" which is also just a race name in-game), as well as adding variety to such names if you want to try it you can grab Tamrielic Names, change its definitions to be obscuring and replace names with what you want to see for unknown NPCs for each race).
I know this isn't mod related but I was trying to get to the bottom of the uppercase IMPERIAL all day, from disabling mods, to updating dependencies etc. Completely uninstalled Skyrim and restarted from the base game and for some reason the uppercase IMPERIAL persisted after a fresh install with no mods installed. So I give up. Launching a save from the main menu loads the correct text until the cell is changed or a save is loaded, which is when it reverts to the uppercase version.
Also tried digging around in Tamrielic Names and I wasn't quite sure what you meant by changing it's definitions to obscuring. Obscuring as far as I understand is done through NND for the instance of [Gender] [Race] and those values are pulled directly from the base game, which is what causes the uppercase text strings. I apologize but I am not very experienced with the SPID dist workflow.
Looking forward to future updates and thank you for a must-have mod
Yeah, there isn’t much you can do about default race name and capitalization.
I meant basically creating a small mod that would name races correctly. If you’re interested in doing this you can refer to a Dev Guide article, it has all the details needed for it otherwise, you could wait for me to finish the add-on.
Yeah, I've been there. In fact, this issue with strings was one of the reasons to remake NND 2.0 as an SKSE plugin, NND 1 was simpler Papyrus-based implementation and the capitalization plagued the mod anyways, keep an eye on new mods of the week one day you'll see an add-on that will avoid this annoying problem
Hm, there is no MCM, that's correct. Nameless NPCs however are not. Perhaps, you have enabled Obscurity? this would hide real names behind their generic ones (e.g. Travelers will be shown as "Traveler" unless you speak to them). Otherwise, please share a log file. Refer to pinned troubleshooting comment for details. The log should be enough.
Hey, so there are some NPCs from different mods which I'd like to patch for your awesome mod!
"A mod adds NPCs that have a name, but are not marked as Unique:
In this case a _DISTR file needs to distribute NNDNotUnique keyword to such NPCs."
So I've done exactly this, NPC has this keyword if I check it by More Informative Console, but there is still no obscurity and NPC gets new name. What can be wrong?
Thank you once again for this mod and the recent update. I can barely understand how I dealt with Bandit #3,542. You should be hired for pretty much all free-roam rpgs like this. With this latest update, it even makes the "my character knows absolutely nothing even from looking at them" bit drop away.
oh, about that, I'm working on an add-on to actually give you some slight information that can be inferred from people's look. Similarly to how you can see that this is a "Whiterun Guard" standing in front of you, based on NPC's outfit/appearance. The same way you'd see "Jarl", "Cook", "Warrior", etc. based on visual ques I'm really not comfortable with generic fallback of "Female Nord". Looks cheap
That's a nice idea, but I went for completely manual approach since this only touches unique/named NPCs. So I just go through them on UESP and pick the right trait for them This also give an ability to provide additional info in form of titles after you reveal their info, for example, "Jarl's son" or other kind of relationships/statuses.
1014 comments
Seems like there is some confusion. I'm gonna duplicate the message here, to clarify why you don't see real names right away:
1. Some named NPC get a name. For example i had Utgerth, that is a vanilla NPC and she is a guard for the Skyland temple, got a new name...
2. Some creatures that suppose dont need a name are getting one: In my case i saw this to happen to mudcrabs and Charus in the marsh lands. Also Slaughterfish too
Sure.
Also i am using the las update of SPID
It works in a weird way, it shows Obscuring Names but still can't interact with them, when I disables Obscuring Names in the ini it changes back to Blank Names
Other than not being able to collect gear from corpses, the rest looks good.[json.exception.parse_error.101] parse error at line 846, column 22: syntax error while parsing object key - invalid literal; last read: '"锘緾onjunctions": {?; expected string literal
Not sure where translations
Also, you can change hotkeys to whatever you want in ini but if you’re saying that esp itself has empty names then no amount of trickery will restore their names because they are simply not there
will show"Conjunctions": {"·"},
"Shortened": ["First"]
}
[json.exception.parse_error.101] parse error at line 846, column 29: syntax error while parsing object separator - unexpected '}'; expected ':'
"Conjunctions": {
"Any": ["."]
}
Sorry, I never got a chance to upload updated example file containing all the structure. This is mentioned in the Dev Guide, but without a full example.
Also, that particular error you've shown tells you that inside curly brackets {} JSON expects key:value pairs, so it tells you that you've written a key "." but then didn't include the : "value". To provide a list of values you'd need to use square brackets [].
"Conjunctions": {
"Any": [""]
},
Some of my files, if you have time to look through them:Nord Orc
Also, is there a reason you have two double quotes in your first names section? If you want to decorate names with quotes you can use Prefix and Suffix to do that for all names in the section for you.
Let me upload an example real quick, it should help you better understand everything you can do with the Name Definition.
UPD: Done. Check out Example Name Definition.
I've copied your ini and it seems there is an unexpected character right in the key's name, so NND does not recognize it and falls back to its default:
This was a tricky one but luckily, I saw this happen to other people.
I'm not used to the obscuring names feature but it's immersive.
I am stupid, it is in the ini: sFormat = [title] ([name]) - I guess so, does that make it work with mods that seek for vanilla names?
This should make Mantella distinguish all generic NPCs. All uniquely named NPC should work the same. Unless there are other spots where Mantella gets names differently. NND does not actually rename any NPC, it only adds an extra layer which swaps names displayed on UI, so if Mantella bypasses this layer, then it will see original names.
The sFormat is used for "Display Name Style", which, by default, is only shown when you're pointing crosshair at NPC.
; See Name Context section on mod's Description.
[NameContext]
sCrosshair = title
sCrosshairMinion = title
sSubtitles = title
sDialogue = full
sDialogueHistory = full
sInventory = full
sBarter = short
sEnemyHUD = full
sOther = title
[Obscurity]
; Enables or disables Obscuring Names.
bEnabled = false
races are correctly capitalized, like "Female Nord," "Male Breton," etc.
I was reading that this might be linked to text strings, but I'm not sure how to find and fix any errors in regards to that.
Do you have any insight or ideas on how to solve this?
Thanks!
Anyways, one can definitely fix this, by configuring Obscuring Name Definitions and providing race names manually this will avoid using in-game stored texts and instead will use proper case-sensitive names from the files.
I'm working on a new add-on that will do exactly this (along with adding other cool stuff to Obscuring).
And about manually setting race names with NND, is that not a thing yet? Sorry if I got mixed up on features.
Oh, and will this new feature help fix those 'Male Old Person Race' instances?
Thanks a bunch for your help
"Setting race names" as you currently see, is a feature of default Obscurity. It just substitutes a special placeholder in default obscurity text with race name that it pulls dynamically in-game. Hence why you see "IMPERIAL" because this is what game returns as Imperial's race name.
"Manually setting race names" doesn't require any new features. NND as a framework already supports all kinds of naming rules. Just like Tamrielic Names defines pool of names for each race, this new add-on can define similar pool but exclusively for Obscuring names, e.g. the names that will be distributed to people whom you don't know yet.
In other words, it's all already in there, I just didn't have time to make this add-on complete. But anyone can do proper obscurity with nice race names (including "Old Race People" which is also just a race name in-game), as well as adding variety to such names if you want to try it you can grab Tamrielic Names, change its definitions to be obscuring and replace names with what you want to see for unknown NPCs for each race).
Also tried digging around in Tamrielic Names and I wasn't quite sure what you meant by changing it's definitions to obscuring. Obscuring as far as I understand is done through NND for the instance of [Gender] [Race] and those values are pulled directly from the base game, which is what causes the uppercase text strings. I apologize but I am not very experienced with the SPID dist workflow.
Looking forward to future updates and thank you for a must-have mod
I meant basically creating a small mod that would name races correctly. If you’re interested in doing this you can refer to a Dev Guide article, it has all the details needed for it otherwise, you could wait for me to finish the add-on.
Seriously though this mod is fantastic. Can't have a list without it now.
Yeah, I've been there. In fact, this issue with strings was one of the reasons to remake NND 2.0 as an SKSE plugin, NND 1 was simpler Papyrus-based implementation and the capitalization plagued the mod anyways, keep an eye on new mods of the week one day you'll see an add-on that will avoid this annoying problem
Any ideas?
Submitted as a bug report.
"A mod adds NPCs that have a name, but are not marked as Unique:
In this case a _DISTR file needs to distribute NNDNotUnique keyword to such NPCs."
So I've done exactly this, NPC has this keyword if I check it by More Informative Console, but there is still no obscurity and NPC gets new name. What can be wrong?
Gonna fix the description now.
EDIT: Done now it reads correctly:
Thank you. Love your mod very much.
You should be hired for pretty much all free-roam rpgs like this.
With this latest update, it even makes the "my character knows absolutely nothing even from looking at them" bit drop away.
oh, about that, I'm working on an add-on to actually give you some slight information that can be inferred from people's look. Similarly to how you can see that this is a "Whiterun Guard" standing in front of you, based on NPC's outfit/appearance. The same way you'd see "Jarl", "Cook", "Warrior", etc. based on visual ques I'm really not comfortable with generic fallback of "Female Nord". Looks cheap