DISCLAIMER: The fonts used in Simcity are still not well understood. The .MXF format is unknown, and does not match other known font specs. Within the simcity_1.dat is a 'fonts.ini' file, extensively commented, referencing Photoshop & the Fusion engine, but that is unhelpful info. Additionally, the game itself was distributed worldwide, with game strings localized by the 'SimCityLocale.DAT', located within a sub-directory labeled with the appropriate language.We can assume (???) that the specific fonts distributed within the 'Fonts' sub-directory are the same woldwide, but I cannot confirm that.
I CANNOT GUARANTEE THAT THIS MOD WILL FUNCTION CORRECTLY ON YOUR GAME INSTALLATION.
As always: USE AT YOUR OWN RISK. If this mod cleans out your bank account, and sells your identity to a hacker, I may be to blame, but will not accept responsibility.
In the un-modded game, within the aforesaid 'fonts.ini' file is this spec:
; ----------------------------------------------------------------
; Fonts used for signs and labels
; ----------------------------------------------------------------
Signpost = "StocletITC TT", "24", more parameters
Label = "Arta", "24", more parameters
This is what the default looks like in-game, at zoom 3:
This mod changes the font, and scales it, (more info below), so it appears like this at zoom 3:
This is a closer look at zoom 4:
This mod does two things. Not only does it scale the font, so that it will not take up the whole city tile, it changes the default font for 'Signs and Labels' to the Courier font. The Courier font has, in its high ASCII range (Google it!) a wealth of symbols, for box drawing, and various math, science, and engineering uses. Within MS Win95, Win98, & WinXP, those characters can be accessed using an old keyboard trick: with 'NumLock' on, hold down the 'ALT' key while typing a 3 or 4 digit ASCII code, and then releasing the 'ALT' key, will input that character into your app. This must be done for each character, and MAY NOT BE AVAILABLE ON OTHER OSs. The characters available to SC4, via the Courier font are shown in the folowing picture:
In-game, they appear like so:
Needless to say, fonts on water will be blue. There is a color parameter within the font specification, but it appears to be overridden by the .exe coding. I couldn't change it from the default green. More on the font parameters below.
I have also made an adjustment to the 'Label.UI' exemplar to allow for those symbols to be visually typed in the label & sign tools. In the UI for those tools, the original default fonts are specified and needed to be changed. While it would be possible to use the symbols without changing the UI, it would be difficult, as the character you typed would appear to be different from the result.
I use this mod in conjunction with my 'Planning Lots' mod, but neither requires the other.
There is also a 'KeyCfg.ini' mod that allows you to use a keyboard shortcut, instead of going to the Mayor menu for 'Signs& Labels'. Again, it is an indepent mod, and can be used with the default game labels. More info on that with that mod's 'Readme'.
A couple of notes about using this mod:
1) When you save your city, the CONTENT of the label (or sign) is saved, along with its relative placement, but not its scale, like so:
If you save your city, exit, the game, remove the scaled 'font.ini' and re-enter your city, you will get this:
Although it is close to its original placement, since the scale has changed, it will not reflect its original placement. (You will also revert any high ASCII symbology from the Courier font to whatever occupies that slot in the default font.)
2) As you know, dragging a label onto a road shrinks it down. This behavior is hard-coded in the .exe. It will do the same with the scaled font, making road designations impossible to read at higher zoom levels.
3) The .exe seems to create an invisible buffer area around labels, the size of which seems to be hard-coded. I couldn't find a way around that. The result is that if you have a number of closely spaced labels, you may have to move some to correctly pick and edit your choice. An iconvenience, but not a deal-breaker.
Have fun!
TECH NOTES:
Included with this mod are text copies of both the original & modded versions, so you can compare the changes. In the files, ";" denotes a commented line. In the file header is an explanation of the various parameters. Even so, it took much experimenting to get them just so. If you decide to try your hand at this, be prepared for some tedious experimenting. TURN OFF WORDWRAP WHEN VIEWING!!! ALL PARAMETERS MUST BE ON THE SAME LINE AS THE SPECIFIED FONT!!!
My changes (remember, all parameters on the same line):
; ----------------------------------------------------------------
; Fonts used for signs and labels
; ----------------------------------------------------------------
Signpost = "Courier LD", "16", "bold | aa=bg | gamma=.75 | sharpness=-0.10 | linespacing=2 | xscale=0.75 | yscale=0.85", 0x2c1fd612
Label = "Courier LD", "80", "bold | linespacing=36 | gamma=1.00 | sharpness= 1.00 | xscale=0.225 | yscale=0.225 | xadvancescale=0.725 | charspacing=3 ", 0xcc1fd62c
; The line below has experimental parameters, you could specify various changes
; and comment them out,for testing purposes.
;
;Label = "Courier LD", "24", "bold | aa=none | linespacing=2 | gamma=1.50 | sharpness=-0.10 | xscale=0.65 | yscale=0.65 | xadvancescale=0.85 " , 0xcc1fd62c
; The original label UI calls for a generic font in the input field, 'GenBodyLight' = "Arta"
; I changed that field to the name below, and some window size parameters.
; This was many years ago, the experiments with the UI are a little fuzzy.
;
LabelInput = "Courier LD", "20", "bold | linespacing=0 | xscale=0.8 | yscale=0.8 | charspacing=1 | xadvancescale=0.75", 0xcc1fd62d