Hello!
It might be a niche thing, but maybe you could add support for punycode domains, when connecting to a server directly. I own a domain with a german umlaut and it is not possible to join my factorio server with that address. Instead one receives the message "... is not a valid address (No such host is known. )."
It is still possible to connect, but you need to know the actual address, that the domain would resolve into.
For example: The actual address of ö-is-a-german-umlaut.de would be xn---is-a-german-umlaut-p6b.de, but as you can imagine the latter is kinda hard to remeber. Punycode support would make sharing the server with other people somewhat easier in my opinion.
Thanks and have a merry christmas!
Punycode support
Moderator: ickputzdirwech
Re: Punycode support
I'd just like to add my voice in support of this request, though my reasons are perhaps more frivolous... I've got a domain that's punycode for an emoji, and I'd like to be able to host games at [some letters or a short word].[my emoji domain].
Looking at tcpdump, the game does appear to attempt an SRV record DNS lookup if I put in such a domain, but it's not well formed. For example, if I try to connect to '.io'[0,1], here's what I get[2] in the tcpdump output:
I would expect that to instead look (because xn--f28h is the expansion of in punycode) like this:
Footnotes:
[0] especially because this seems to be displaying strangely in the preview, I'll point out that that's the "GRINNING FACE WITH SMILING EYES" character (codepoint U+1F604), followed by .io
[1] this is NOT a domain I have, or that even exists (as far as I know), just something I'm using for the sake of demonstration.
[2] some details elided, and placed in brackets -- though the [1au] thing is actually part of the output of tcpdump, including the brackets.
Looking at tcpdump, the game does appear to attempt an SRV record DNS lookup if I put in such a domain, but it's not well formed. For example, if I try to connect to '.io'[0,1], here's what I get[2] in the tcpdump output:
Code: Select all
01:20:51.133293 IP [my host].33157 > [my nameserver].domain: 53938+ [1au] SRV? _factorio._udp.M-pM-^_M-^XM-^A.io. (51)
Code: Select all
01:20:51.133293 IP [my host].33157 > [my nameserver].domain: 53938+ [1au] SRV? _factorio._udp.xn--f28h.io. (51)
Footnotes:
[0] especially because this seems to be displaying strangely in the preview, I'll point out that that's the "GRINNING FACE WITH SMILING EYES" character (codepoint U+1F604), followed by .io
[1] this is NOT a domain I have, or that even exists (as far as I know), just something I'm using for the sake of demonstration.
[2] some details elided, and placed in brackets -- though the [1au] thing is actually part of the output of tcpdump, including the brackets.