[Content Patcher] Using EditData with i18n and a translation that falls back to its default breaks cutscene 7
donedonedone278 opened this issue ยท 2 comments
Describe the bug
I wouldn't log a bug if this wasn't my absolute last resort.
This config causes cutscene 7 (Maru dropping the flask) to hang when the user answers "Tell Harvey it was an accident.":
{
"Format": "2.0.1",
"Changes": [
{
"Action": "EditData",
"Target": "Data/Events/Hospital",
"Entries": {
"7/f Maru 1000/p Maru": "{{i18n:thisisafakekey |default={{i18n:dddtest}}}}"
}
}
]
}
i18n/default.json: (The text is directly from the base game)
{
"dddtest": "Hospital_Ambient/-1000 -1000/farmer -10000 -10000 0 Maru 9 15 3 Harvey 7 10 0/skippable/changeSprite Maru Hospital/changePortrait Maru Hospital/showFrame Maru 18/viewport 10 15/pause 4000/speak Maru \"*sigh*... I'm so sick of preparing these samples...$s\"/pause 2000/playSound doorClose/warp farmer 10 19/pause 100/playSound throw/showFrame Maru 17/shake Maru 2000/jump Maru/specificTemporarySprite maruBeaker/move farmer 0 -1 0/pause 1250/showFrame Maru 0/faceDirection Maru 2/pause 100/speak Maru \"Agh! Oh no!... $4\"/pause 600/showFrame Maru 16/pause 1000/speak Maru \"The whole sample is ruined... Harvey's going to kill me...$s\"/pause 600/showFrame Maru 0/faceDirection Maru 0/pause 1500/faceDirection Maru 2/pause 400/speak Maru \"$q 38 null#@, what should I do?#$r 38 -50 Event_Hospital_1#Just scoop it off the floor. He won't know the difference.#$r 39 -20 Event_Hospital_2#Tell Harvey it was my fault.#$r 38 50 Event_Hospital_3#Tell Harvey it was an accident.\"/move Harvey 3 0 2/move Harvey 0 2 2/doAction 10 13/move Harvey 0 1 2/faceDirection Maru 1/speak Harvey \"What happened? I heard something break.\"/pause 500/speak Maru \"$p 38#I accidentally dropped one of the samples... I'm so sorry.$s|@ came in and slammed the door so loud I dropped this sample.$u\"/fork toldTruth/move Harvey 0 2 3/emote Harvey 40/speak Harvey \"You shouldn't blame others for your own problems, Maru.$a\"/pause 300/faceDirection Harvey 1/speak Harvey \"*sigh*... I'll have to call the patient back in to recollect this sample.$s#$b#This'll probably put us in the red for another month...$s\"/pause 600/faceDirection Maru 2/pause 1000/showFrame Maru 16/pause 500/emote farmer 28/end"
}
Here's a minimal content pack I made as testing evidence: https://github.com/donedonedone278/content_patcher_bug_proof
To Reproduce
- Download this minimal content pack: https://github.com/donedonedone278/content_patcher_bug_proof
- Download some other mod that lets you trigger events.
- Start up Stardew and trigger the "Maru dropping a flask" event.
- When given an option, say "Tell Harvey it was an accident."
- Wait for the hang after the textbox where Maru says "I accidentally dropped one of the samples...". Harvey never walks forward.
Log file
https://smapi.io/log/c32d860611a34857a44fdb8c4e127ebc
I'm sorry in advance if it turns out that I'm just missing something. Thank you for making content patcher ๐
Hi! The i18n
token is fully replaced with the text it contains, so it should have no effect on the event logic. You can enter patch export Data/Events/Hospital
in the SMAPI console window to see the actual event data that the game sees.
Can you come ask #making-mods-general on the Stardew Valley Discord so we can help you find the issue? If you don't get an answer, feel free to ping me there with @pathoschild
.