I’m working my way through Avionics Framework as I’m interested in coding instruments, not aircraft, so I have no familiarity with the Aircraft Editor tool. I am however a fan of many third-party aircraft from devs such as A2A, COWS, Black Square and JustFlight. They do; however, all seem to have one thing in common. Their text in the Description section of the in-game aircraft selection screen under SEE SPECIFICATION appear to have been written by someone either terrified of paragraphs or, more likely, this may be a result of text written in an editor set to use LF as the end-of-line feed instead of CRLF. The result is a large blob of unformatted text. Not great presentation. Some devs write nothing at all and leave what seems to be default dev tool text in there (looking at you COWS)
Is the only way to edit this text restricted to the Fltsim section of Aircraft Editor or is an actual config file created containing this information? If so, it might be worth opening this in an editor and ensuring the end-of-line feed is set to CRLF before saving. Does the dev tools Aircraft Editor allow escape sequences so that \r\n end-of-line might be used? If an actual config file is created, VS Code would be my choice to edit it and if you look at bottom right of VS Codes UI, you will see the selected end-of-line either LF or CRLF, click on it to change that.
Or, considering my total unfamiliarity with aircraft content creation, is this a more complicated problem related to Marketplace restrictions. The default Asobo aircraft seem to use paragraphs? In-game presentation is important after all
This text seems to come from the [GENERAL] section of aircraft.cfg. The line endings are directly escaped in the text e.g. the first part of the C172: performance = "Maximum Speed\n126 kts 203 km\/hr\n\nCruise Speed\n124 kts 200 km\/hr\n\n"
Maybe you can try changing that \n to \r\n in notepad or your editor of choice and see if it has any effect.
The actual SPECS text block always seems nicely formatted with horizontal rule lines. What I refer to is the DESCRIPTION text block. Here’s the description of the latest aircraft I’ve downloaded, Just Flight’s PA38. It’s just one large, poorly formatted blob of text, which is poor presentation. The text shown in that screenshot is definitely not in aircraft.cfg so I’m wondering where it comes from so I can maybe edit it.
The only field in the aircraft.cfg file that I think may be related to this is:
Almost all third-party aircraft have this issue. Some are even worse with placeholder text from the build tools just showing.
I suspect that TT:AIRCRAFT.DESCRIPTION is like an environment variable that’s populated with the text later and useful for localization requirements. Maybe the text for that is only available for editing in the devs package source files. I’m dabbling with creating avionics packages so I’ve yet to work on all the aircraft configuration files in the Developer Mode editors so I’m not sure where this description text is created. Wherever it is, third-party developers need to realise text blobs like that below is poor presentation and paragraphs are your friend
Here’s how it’s done properly. Text from the default Asobo 172 Skyhawk. I can’t see this being anything more complex than simply ensuring developers use the \r\n escape sequence instead of simply a \n newline character. Although looking at the PA38 text might not even be using a \n. Always be mindful that attention to detail matters.
As I typed the word localisation in a comment above, I suddenly realised that this text might be in the language locPak files usually found in the root folder for the aircraft. Sure enough, when I opened en-US.locPak I saw the description text in there and the string had \n\n in a number of places but it seems the MSFS engine is ignoring this escape sequence.
So, looking at some Asobo default aircraft language files I discovered they are using a <br><br> sequence, which means MSFS is internally treating this text as a either HTML or MarkDown string. Back into the PA38 en-US.locPak I use VS Code’s string replace feature and change all \n\n to <br><br> and here’s the successful result.
So, devs should avoid using slash escape characters and be mindful that this string is represented internally as a HTML or MarkDown string and the <br> tag is required for line breaks.
If it is HTML I sure hope Asobo decode this HTML string properly to avoid HTML embedding type security issues. Just how would it treat a script tag pair?
Note the reason that you are probably seeing this issue in most third-party aircraft is that we are supplied with this text by the Marketplace team at Microsoft, via their localisation supplier. We simply include those LOC files in our packages when submitting to the Marketplace, although some developers might have chosen to edit them locally for formatting.
Did not know the Marketplace procedure meant Microsoft supplies the localisation files. Cool. Also note I edited my original post to clarify that the locPak file strings may either be being treated internally as HTMLorMarkDown, which is why \n\n line break escape sequences are ignored and your Hangar description text is one big block of unformatted text.
The <br> tag is the same for both HTML and MarkDown if I remember correctly.