Stardew Valley
0 of 0

File information

Last updated

Original upload

Created by

aedenthorn

Uploaded by

aedenthorn

Virus scan

Safe to use

About this mod

Allows content patcher mods to create customized versions of ExtraDialogue and some StringsFromCSFiles strings

Requirements
Permissions and credits
Changelogs
After downloading Mister Ginger, I saw that the game tries to make him use hoomen speech because the response to dumpster diving is hardcoded for all adult NPCs. This mod unhardcodes such strings, letting you create versions specific to a certain NPC, so that when they are the one saying the dialogue, it displays a custom version in your content pack instead.


Usage

To create a Content Patcher pack that works with this mod, you first need to know the keys (i.e. the labels) for the strings (i.e. the text) you want to change. For a list of keys that this mod can change, please see this article.

Once you've found the text you want to create a custom version of for a specific NPC, you can add the key for it to your NPC's dialogue file, following these rules:

  • For string keys from Characters.json, add "Characters_" to the beginning. I.e. "WipedMemory" becomes "Characters_WipedMemory".
  • For string keys from ExtraDialogue.json, add "ExtraDialogue_" to the beginning. I.e. "Town_DumpsterDiveComment_Adult" becomes "ExtraDialogue_Town_DumpsterDiveComment_Adult".
  • For string keys from Strings\StringsFromCSFiles.json just use the exact key from the file. E.g. "NPC.cs.4420" or "Event.cs.1503".

Once you have the proper key, you can use Content Patcher to create a custom version for a specific NPC as though it were an ordinary dialogue string from Characters\Dialogue\<YourNPC>. For example, the string in the screenshot above requires a content patcher mod with a content.json patch like:

{
    "Changes": [
        {
            "Action": "EditData",
            "Target": "Characters/Dialogue/MisterGinger",
            "Entries": {
                "ExtraDialogue_Town_DumpsterDiveComment_Adult": "Mr. Ginger thinks you should stop rooting around in HIS trash bins.$s",
            }
        }
    ]    
}

If the text is used for an NPC without a custom version, it simply reverts to using the default generic string.

Because the mod expects all these strings to be used solely for NPC dialogue, it replaces text with an identifier tag. If a string is used outside of character dialogue, you might accidentally see a tag instead of text. Let me know if you see anything strange and I can patch it.


Technical

Requires SMAPI, uses Harmony.

Code is at https://github.com/aedenthorn/StardewValleyMods.

If you want to complain or ask for help or help me test my mods, you can visit my Discord server.

A list of all my mods for Stardew Valley is available at https://www.nexusmods.com/stardewvalley/articles/895.