Localization support

Forums 💬 NodeCanvas 🗨️ General Discussion Localization support

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #13851
    aschearer
    Participant

      What are the plans regarding localization and the dialog tree? At the moment I don’t see a way to do so. It would be great if NodeCanvas allowed me to specify “string ids” or even better integrate with a plug-in like I2. Without localization support it’s doubtful I can take advantage of the dialog tree functionality.

      #13855
      Gavalakis
      Keymaster

        Hello,

        While there is no built-in support for localization as of yet, a few people have already localized NC Dialogue Trees, by using the “Meta Data” field that all dialogue text come along with, for defining “String IDs”. (All relevant node inspectors have that Meta Data field).
        Then by implementing a custom UI (or simply building up the included one), whenever a dialogue text is about to be shown, you can use the “Meta Data” string that is passed to the UI (within the Statement data class) to fetch a localized version of the text from within some dictionary/table lookup.

        If you want more information on the above, please let me know.

        #13854
        textusgames
        Participant

          Hello What is the status of localization support in DT?

          Could you add official extension support for most popular localization solution on asset store I2 Localization?

           

          #13853
          zsoik
          Participant

            Adding localization is actually pretty easy for DialogueTrees compared to other solutions we’ve evaluated. For starters, you can easily create custom node types which, instead of letting you directly type in text, let you choose string ids / work directly with your localization database. You’d only be left with your UI having to take the string IDs and translate them before showing them. We have done exactly that and more to allow us having a really dynamic system with localization, dynamic actor choice and voice-overs. The most beneficial thing is that, in the end, we could really easily export all Voice-Over permuations for all actors and dialogue lines in a single click and we had a game with almost 30k spoken words.

            #13852
            Gavalakis
            Keymaster

              Sounds great @zsoik! 🙂

              Another solution I know people are using (if you don’t want to create custom nodes), is to use the “MetaData” field that all ‘statement’ nodes have for an ID, and then create a custom GUI (probably based on the existing one), and use that “MetaData” to localize the text (or even the audio.)

              The “MetaData” is a field member of the class “Statement”. The Statement class is one of the arguments that is passed to the “OnSubtitlesRequest” event, which the GUI is using, and which basically contains the things like “Text”, “Audio” and “MetaData” that is entered in the nodes Inspector GUI (in the graph editor).

            Viewing 5 posts - 1 through 5 (of 5 total)
            • You must be logged in to reply to this topic.