I have an idea but really would like some feedback. Part of the way macros work is that every spell eventually breaks down to a SpellID. This SpellID means that between languages Blizzard can change the name but the implementation is the same irrespective of language. While this is intelligent, instead of using /castspellbyid Blizzard uses /castspellbyname within macros. This means that all the spells have to be in your local language. About 40% of players play in enUS. This means that for each macro we create, 60% of the player base cannot use it.
In GSE1.2 a spell translator was bolted on that would enable you to take a macro written in one language and translate it into another. This required that you had a plugin that contained the languages. GSE was about 100k at the time and the languages alone was an extra 5mb. Ignoring that the way the translator worked, if you were in German (deDE) for example it would translate all your macros to German and then on the viewer popup a tab where you could select to look at that macro in enUS for example. The underlying bug was that this would translate the macro and replace your German one with an enUS one. When you wnet to do something it would check wait im playing in german but I have an enUS macro so I need to translate that again. It worked and it was a solution but it wasnt a great solution.
In GSE1.3 the translator was integrated better and the extra languages were a seperate addon. If you were playing in German but didn’t have the languages it would use the US Spell ID table that was part of GSE and then create a conversion list. This made the 5mb languages optional but it was still constantly translating. If you also played in Spanish (esES) on the same machine you had a problem if you were playing in German, all your macros were saved in German. When you restarted in Spanish, instead of enUS and deDE, you now had enUS and esES and it couldn’t translate all your German macros to Spanish unless you downloaded all the other languages.
What I want to propose for GSE2 is that all the storage and saving, importing and exporting is done in enUS but when you edit a macro it displays in your local language but when saving translates back. This means that no one will need the additional languages as it will always be exchanged in enUS but still be able to play in their local language. It also means that someone playing in German can send a macro via the “Send” function ingame to someone playing in Spanish, which currently cannot be done unless both players have the extra language plugin. When setting up the buttons behind the scenes the spells will be translated on the fly to the local language.
This will reduce the complexity and simplify the interface a little as you wont have to worry about changing languages all the time. You will still be able to identify what hasn’t translated properly and manually change it to your local equivalent. Does anyone see any problems with this approach?
For most of the vocal people on this forum its a non issue as we mainly use enUS but 60% of the player base is playing in a different language.