I found a list of various utf8 character translations that's as canonical as it gets, and it was pretty much right on with what I had proposed. There's of course additional characters and I'm happy to do all the data entry for this. I'm very happy with the current implementation, but I want to add some thoughts/start some discussion on maintainability, expandability, customization, etc.. Currently there's the utfcodes[] in stringutil.c which covers 0x2500 to 0x257F which is the 'Box Drawing' section of UTF8. After that it includes 0x25CF 0x25CC and 0x25CB, which are in the reverse order of what they should be, that should be fixed. I don't know how much this array will ever be expanded (or how much it shoul be expanded coded wise), but I think keeping it in order is definitely something to do, for maintainability and hackability. I think clear sections should be made for each type UTF8 category there is, be it just by a comment header for each section or something else code-wise, I think you'll know better than I the best way to do this. There are 149 sections to UTF8 currently, right now fallback implements one section plus an addition 3 characters. Should there be easy ways for others to modify/expand this list? Code-wise it might be best as one big array, but is that the best way to maintain it? There really shoul be a way for people to get a list of utf8 character; ascii fallback character; utf8 code ... something like '@list utf8 fallback' since the utf8 can't go into help.txt. The only other thought I had here is some other file that's both a reference for the array as well as parsed by a script to create the array. But basically to get people to start using this, they need to know what it is an what's available. There's +color/+palette for 256colors, and that works in softcode because we know the full limits of those colors. It seems there needs to be something that's at least partly hardcoded here. Those are the main things on my mind that I think should be thought about/discussed. What is done so far is awesome, and I'm super thankful for it. I really hope you all understand how appreciative I am of this. I'm also happy to help with this in any way I can, and I fully volunteer for all the data entry work related to any expansion of this. What happens to characters without fallback? The original intent of this was for box-drawing, I saw 'dots' were added, and I'm sure people will want to add more eventually. Is it better to drop the character, replace it with a '?' or replace it with a ' ' ... I think because of ' ' is handled, that's a bad idea. If it's not hideous to the CPU, I think '?' is the best option as it both keeps line alignment in place and allows for easier 'graphical debugging' But to circle back, the two most important things to consider: * How to maintain and keep order to that array. * How to easily make the conversions that array allows for visible to people in game. * Once people realize they can draw pretty boxes and have it work for all clients, what else might they want to do, and what should be considered so that this code can be internally elegant, rather than a magnet for messy hacks.