Skip to content

Text to Speech Engine

Ever wondered how Miis are able to speak in Tomodachi Life: Living the Dream?

Unlike the original game, Tomodachi Life: Living the Dream appears to use a more modern Text-to-Speech system. Based on current findings, the game uses ReadSpeaker for Mii voice synthesis.

This page documents the voices discovered so far for each supported language and region.

ReadSpeaker is a global voice specialist providing dozens of languages and lifelike voices. Using its own industry-leading technology, the company delivers some of the most natural-sounding synthesized voices on the market.

ReadSpeaker uses next-generation Deep Neural Network (DNN) technology to structurally improve voice quality at all levels.


The files can be found in the VoiceText folder of the romfs. And files are named after: tts_single_db(D32-{Voice}).vtdb2 where Voice is the ‘actor’ name, which can be found on this list:

Region / LanguageVoice
JapaneseHIKARI
American EnglishASHLEY
American SpanishGLORIA
American FrenchCHLOE
American Portuguese
European EnglishBRIDGET
European SpanishLOLA
European FrenchROXANE
GermanLENA
ItalianELISA
European Portuguese
DutchANNE
Russian
KoreanHYERYUN
Traditional ChineseHONG
Simplified ChineseYAFANG

Despite the file name indicating a 32KHz version of the TTS Model, seems the models are actually D16 (16KHz) according to many paths in the file metadata.

The original models were built on Jul 26 2019 by ReadSpeaker, with the exception of HONG and YAFANG (both Chinese models) that were built on Feb 17 2025 by Nintendo itself.

OffsetSizeTypeDescription
0x04uint32Record Count
0x44uint32String Size, the game expects it to be exactly 0x200
0x84uint32Ceasar Shift
0xC0x200stringRoot record, the size come from the “String Size”
0x20C-Record[recordCount]Records

Again, the 0x200 in both Ceaser Strings come from the String Size in header, which in Tomodachi Life: Living the Dream is expected to be exactly 0x200.

OffsetSizeTypeDescription
0x00x200Caesar StringRecord Path
0x2000x200Caesar StringPath
0x4004uint32Offset
0x4044uint32Size

The game engine locates records by using the file name on Record Path, searching for:

  • db_build.date
  • %s/hashparams
  • %sl.pat
  • %sf.bin
  • %sg.bin
  • %sd.bin
  • %sp.bin