Carleton Fonts: Difference between revisions

From The DarkMod Wiki
Jump to navigationJump to search
Geep (talk | contribs)
article created
 
Geep (talk | contribs)
 
(6 intermediate revisions by the same user not shown)
Line 2: Line 2:


== The Carleton Family in a Nutshell ==
== The Carleton Family in a Nutshell ==
Carleton is a squarish print-style serif font. The lower case letters look like smaller versions of the upper case letters, so this font can also be referred to as "Carleton Caps". Within TDM, there are four members of the Carleton family:
Carleton is a squarish print-style serif font. The lower case letters look like smaller versions of the upper case letters, so this font can also be referred to as "Carleton Caps", [[Fonts_Screenshots#Carleton_Caps_only | as in this screenshot]]. Within TDM, there are four members of the Carleton family:
* carleton
* carleton
* carleton_bold
* carleton_bold
Line 10: Line 10:
Base-font carleton is used extensively throughout the main menu system. It may appear by itself, in black, for non-interactive subheadings and descriptions. (In a few places, like the "Downloadable Missions" title, a "headline" style using carleton_bold is deployed.)
Base-font carleton is used extensively throughout the main menu system. It may appear by itself, in black, for non-interactive subheadings and descriptions. (In a few places, like the "Downloadable Missions" title, a "headline" style using carleton_bold is deployed.)


Or it may participate in dynamic text highlighting for user interactions. Typical overlay combinations are:
Or it may participate in dynamic text highlighting for user interactions, using overlay combinations like:
* carleton and carleton_glow
* carleton and carleton_glow
* carleton_bold and carleton_glow
* carleton_bold and carleton_glow, for titles and headlines
* carleton, carleton_bold and carleton_glow
* carleton, carleton_bold and carleton_glow, for certain "new game" buttons


The latter 3-way stacks provide attractive mouse-over highlighting for "buttons" like "Back" or "Main Menu".
For FMs, there are standard readable sheet and scroll prefabs and sign text decals that use carleton, just by itself. The style of this font makes it a good choices for notices; between title and body, and upper and lower case, there can appear to be four different sizes of "capital" letters.
For FMs, there are standard readable sheet and scroll prefabs and sign text decals that use carleton, just by itself. The style of this font makes it a good choices for notices; between title and body, and upper and lower case, there can appear to be four different sizes of "capital" letters.


All these usages predominately involve mid-sized and large text (e.g., GUI textscale 0.24 and up), that draws on the 24pt and 48pt size bitmaps. The "english" form of 24pt and 48pt both offer TDM’s full European glyph set. Glyphs are stylishly done for 48pt and for ACSII characters of 24pt; the accented characters of 24pt are rough-hewn and merely adequate.
All these usages predominately involve mid-sized and large text (e.g., GUI textscale 0.24 and up), that draws on the 24pt and 48pt size bitmaps. The "english" form of 24pt and 48pt both offer TDM’s full European glyph set. Glyphs are stylishly done for 48pt and not bad for ASCII characters of 24pt; the accented characters of 24pt are rough-hewn and merely adequate.


While 48pt carleton_bold actually has bold (thickened) glyphs, 24pt glyphs are the same as regular carleton. A revision of the 24pt glyphs moved them to larger bitmaps, resulting in crisper characters (but really of benefit only to ASCII so far, as noted.)
While 48pt carleton_bold actually has bold (thickened) glyphs, 24pt carleton_bold glyphs are merely copies of regular 24pt carleton, so not bold.


== File Naming and Content Sharing across the Carleton Family ==
== File Naming and Content Sharing across the Carleton Family ==
Line 27: Line 26:
  shaderName fonts/Carleton_0_24.tga
  shaderName fonts/Carleton_0_24.tga


and it will say "Carleton_..." in all cases, not for instance "Carleton_condensed_..."
and it will say "Carleton_..." in all cases, not for instance "Carleton_condensed_...". (As is typically the case in TDM, a shader filetype of .tga actually resolves to .dds, and shaderName is case-insensitive; the actual filenames are all lower-case.)


There is also file content sharing (i.e., duplication). As shown in the tables below, the sharing pattern is more complex, and arguably incoherent. This may reflect errors in distribution, or perhaps some member/size combinations not really being used.
There is also file content sharing (i.e., duplication). As shown in the tables below, the sharing pattern is more complex, and arguably incoherent. This may reflect errors in distribution, or perhaps some member/size combinations not really being used.


{| class="wikitable" style="margin:auto"
{| class="wikitable" style="margin-left: 0px; margin-right: auto;"
|+ '''Table of 2.12 English Carleton Family DAT Files Sharing File Names and in Some Cases Contents.''' The content of each file is unique, unless shown here by "SAME", which refers to only to matching another file’s content IN THE SAME ROW.
|+ '''Table of 2.12 English Carleton Family DAT Files Sharing File Names and in Some Cases Contents.''' The content of each file is unique, unless shown here by "SAME", which refers to only to matching another file’s content IN THE SAME ROW.
|-
|-
Line 44: Line 43:




{| class="wikitable" style="margin:auto"
{| class="wikitable" style="margin-left: 0px; margin-right: auto;"
|+ '''Table of 2.12 English Carleton Family DDS Files Sharing File Names and in Some Cases Contents.''' The content of each file is unique, unless shown here by "SAME", which refers to only to matching another file’s content IN THE SAME ROW.
|+ '''Table of 2.12 English Carleton Family DDS Files Sharing File Names and in Some Cases Contents.''' The content of each file is unique, unless shown here by "SAME", which refers to only to matching another file’s content IN THE SAME ROW.
|-
|-
Line 76: Line 75:


See also [[Refont#Carleton_Family]] for corresponding refont commands.
See also [[Refont#Carleton_Family]] for corresponding refont commands.
== Anomalies of Carleton and Carleton Bold 24pt Glyphs ==
As mentioned above, 24pt Carleton Bold is identical to 24pt Carleton; so not really bold. The remaining discussion applies equally to 24pt Carleton and Carleton Bold.
Evidently, the original generation of the 24pt size, into two 256x256 bitmaps "carleton_0_24.dds" and "carleton_1_24.dds", contained only ASCII alphanumeric characters and limited punctuation, with no accented/Latin-1 glyphs. Later, these bitmaps were scaled up to 512x512 bitmaps, to ease drawing in the missing characters by hand. The resulting new characters are coarser than the generated and scaled ASCII characters.
You can see this aspects in the main menu, under Settings/Video/Language, where, in the list of 16 languages, accented letters are thicker.
Also, if viewed in GIMP, the white characters have a faint black border, not seen elsewhere (e.g., in the 48pt bitmaps). This is true of both scaled-up ASCII and drawn Latin-1 characters, though far more prominent in the latter. However, TDM's monochrome rendering (defined by forecolor in the GUI) may mask such a border effect.
== Carleton & Carleton Glow in the Main Menu System ==
== Carleton & Carleton Glow in the Main Menu System ==
This pairing occurs basically everywhere thorough the main menu system. Against a parchment background, typical presentations:
This pairing occurs basically everywhere thorough the main menu system. Typical presentations, against a parchment background, are as follows:
* Major menu-page-selection keywords are by default rendered in black with no glow, but will turn white with blood-red glow highlighting when either selected (as if a tab for the current page) or moused-over. This will also play a sound and often show a text hint.
* Major menu-page-selection keywords are by default rendered in black with no glow, but will turn white with blood-red glow highlighting when either selected (as if a tab for the current page) or moused-over. This will also play a sound and often show a text hint.
* Value keywords for a particular setting are shown in white with a faint black outline glow. This presentation style is also used for row items within lists.
* Value keywords for a particular setting are shown in white with a faint black outline glow. This presentation style is also used for row items within lists.


Implementation of this starts under \tdm_gui01\guis\mainmenu_defs.gui, with:
=== Example Implementation ===
  #define MM_GLOW_FONT "fonts/carleton_glow"
TDM uses a number of different "button" (i.e., selectable text) styles, driven by #defines in \tdm_gui01\guis\mainmenu_defs.gui. For example, those of the main menu home page use:
  #define MM_FONT_RIGHT_GLOW font MM_GLOW_FONT forecolor INVISIBLE textscale 0.24 visible 1 textalign 2
#define MM_NORMAL_FONT "fonts/carleton"
  #define MM_FONT_LEFT_GLOW MM_FONT_RIGHT_GLOW textalign 0
  #define MM_GLOW_FONT "fonts/carleton_glow"
  #define MM_FONT_CENTER_GLOW MM_FONT_RIGHT_GLOW textalign 1
  #define MM_FONTSCALE 0.33
#define MM_BUTTON_HEIGHT 18
 
For colors, the text is black initially, with glow highlighting invisible. Upon mouse hover, the text becomes white, and the glow red. RGBA colors are defined for this, in vector and string (with S prefix) forms:
 
#define NORMAL_COLOR 0,0,0,0.90 // black, not entirely opaque
#define SNORMAL_COLOR "0 0 0 0.90"
#define INVISIBLE 0, 0, 0, 0
#define SINVISIBLE "0 0 0 0"
#define GLOW_WHITE_COLOR 0.98,0.93,0.82,1
#define SGLOW_WHITE_COLOR "0.98 0.93 0.82 1"
#define GLOW_RED_COLOR 0.6,0.1,0.1,0.5 // semi-transparent
#define SGLOW_RED_COLOR "0.6 0.1 0.1 0.5"
 
To be specific, consider a simplified imaginary main menu "button" we'll call "Simple". (We're avoiding the layout calculations and other complications of a real button.) For our button, there are 3 aligned windowDefs in mainmenu_defs.gui, with these locations:
 
#define MM_POS_SIMPLE_BUTTON rect 40, 445, 160, MM_BUTTON_HEIGHT * 1.3
#define MM_POS_SIMPLE_BUTTON_GLOW rect 41, 446, 159, MM_BUTTON_HEIGHT * 1.3 - 1
  #define MM_POS_SIMPLE_ACTION MM_POS_SIMPLE_BUTTON
 
The windowDefs positioned by these will also do the following:
* MM_POS_SIMPLE_BUTTON: set the default appearance of the button text.
* MM_POS_SIMPLE_BUTTON_GLOW: set the default appearance of the glow "highlight" text. Note this text is offset down and to the right by one pixel, compared to MM_POS_SIMPLE_BUTTON, to give the glow a "drop shadow" flavor. This is a frequent treatment, though in some cases only the right shift is done.
* MM_POS_SIMPLE_ACTION defines the mouse-over and mouse-selection dynamic behaviors. (Be aware that in some actual cases, this is combined into the first windowDef.)
 
Then, besides the rects, the other attributes are defined for the two default windowDefs:
 
#define MM_FONT font MM_NORMAL_FONT forecolor SNORMAL_COLOR textscale MM_FONTSCALE visible 1 textalign 1 // centered text
  #define MM_FONT_GLOW font MM_GLOW_FONT forecolor INVISIBLE textscale MM_FONTSCALE visible 1 textalign 1
 
(This is a simplification; for the main menu, MM_FONT's forecolor is #defined as INVISIBLE, then transitions to SNORMAL_COLOR in 1/2 second.)


These are then used in the glow layers (i.e., defWindows) of .gui for particular menu pages and their paired and aligned carleton-base layers. Associated mouse handlers can specify and turn on a glow color (temporarily or sticky if selected) and make other state changes as required.
Within an overall page layout given by mainmenu_main.gui (but with our button shoved in), we might have nested:


  #define MM_FONT_HEADLINE font MM_BOLD_FONT forecolor NORMAL_COLOR textscale MM_FONTSCALE*0.85 visible 1 textalign 1
  windowDef SimpleTextH
{
rect MM_POS_SIMPLE_BUTTON_GLOW
MM_FONT_GLOW
visible "gui::showSimple"
text "#str_01234" // "Simple"
}
windowDef SimpleText
{
rect MM_POS_SIMPLE_BUTTON
MM_FONT
visible "gui::showSimple"
text "#str_01234" // "Simple"
}
windowDef SimpleAction
{
rect MM_POS_SIMPLE_ACTION
visible "gui::showSimple"
float exit;
onMouseEnter
{
set "exit" 0;
transition "SimpleText::forecolor" SNORMAL_COLOR SGLOW_WHITE_COLOR "50" ;
transition "SimpleTextH::forecolor" SINVISIBLE SGLOW_RED_COLOR "50" ;
set "cmd" "play sound/meta/menu/mnu_hover";
}
onMouseExit
{
if ("exit" == 0)
{
transition "SimpleText::forecolor" SGLOW_WHITE_COLOR SNORMAL_COLOR "50" ;
transition "SimpleTextH::forecolor" SGLOW_RED_COLOR SINVISIBLE "50" ;
}
}
onAction
{
transition "SimpleText::forecolor" SGLOW_WHITE_COLOR SNORMAL_COLOR "50" ;
transition "SimpleTextH::forecolor" SGLOW_RED_COLOR SINVISIBLE "50" ;
set "cmd" "play sound/meta/menu/mnu_select;";
set "cmd" "onSimpleClicked"; // tell engine
// And any additional commands here to switch states, resetTime, etc.
}
}


[need to say more here about 2-way and 3-way layering and dynamic color changes]
The "H" (highlighted) windowDef is shown first, to draw behind the main text. onMouseEnter turns the text color from black to white in 50 milliseconds, and the glow from invisible to red. onMouseExit reverses that. onAction, when the button is mouse-selected, does the visual transition as mouse exit, but plays a different sound... and then does whatever "Simple" is supposed to do.


== Carleton in Assets for FMs ==
== Carleton in Assets for FMs ==
In the tables below, most content has a textscale above 0.30, so draws from the 48pt size, '''indicated in bold'''. Otherwise, with a textscale of 0.16 to 0.30, from 24pt.
In the tables below, most content has a textscale above 0.30, so draws from the 48pt size, '''indicated in bold'''. Otherwise, with a textscale of 0.16 to 0.30, from 24pt.


{| class="wikitable" style="margin:auto"
{| class="wikitable" style="margin-left: 0px; margin-right: auto;"
|+ '''Carleton in Standard Readable Prefabs.'''
|+ '''Carleton in Standard Readable Prefabs.'''
Within \tdm_prefabs01\xdata\prefabs.xd, "gui_page<n>" : "guis/readables/..."
Within \tdm_prefabs01\xdata\prefabs.xd, "gui_page<n>" : "guis/readables/..."
Line 104: Line 190:
| .../books/...  none ||  ||
| .../books/...  none ||  ||
|-
|-
| .../scrolls/scroll_print_carleton.gui || ''''0.40'''' || 0.28
| .../scrolls/scroll_print_carleton.gui || '''0.40''' || 0.28
|-
|-
| .../sheets/sheet_paper_print_carleton_caps.gui || '''0.40''' || '''0.31'''
| .../sheets/sheet_paper_print_carleton_caps.gui || '''0.40''' || '''0.31'''
|}
|}


In Sign Text
{| class="wikitable" style="margin-left: 0px; margin-right: auto;"
Within \sign_text_decals\
textscale
sign_text_carleton.gui 2
sign_text_carleton_small.gui 1
 
{| class="wikitable" style="margin:auto"
|+ '''Carleton in Sign Text.''' Within  \sign_text_decals\
|+ '''Carleton in Sign Text.''' Within  \sign_text_decals\
|-
|-
Line 148: Line 228:


The actual limited uses in the main menu systems are seen as you survey the downloadable missions. Specifically, when looking at a candidate mission, the Mission Details page has a Description section, whose body text is carleton_condensed with textscale 0.17. Compared to other similar text section here (that use regular carleton with textscale 0.18), this is slightly smaller and condensed. Also, the Next >> and << Prev buttons for cycling through screenshots have their button captions in this font (with textscale 0.23).
The actual limited uses in the main menu systems are seen as you survey the downloadable missions. Specifically, when looking at a candidate mission, the Mission Details page has a Description section, whose body text is carleton_condensed with textscale 0.17. Compared to other similar text section here (that use regular carleton with textscale 0.18), this is slightly smaller and condensed. Also, the Next >> and << Prev buttons for cycling through screenshots have their button captions in this font (with textscale 0.23).
== For More ==
* Character-set coverage of Carleton family is included in the the [https://forums.thedarkmod.com/index.php?/topic/22427-analysis-of-212-tdm-fonts/ summary analysis of 2.12 TDM fonts], based on applying 'refont -stats ...' to all 'english' DAT files.
{{tutorial}} [[Category:Fonts]]

Latest revision as of 21:27, 9 January 2025

By Geep, 2025. The analysis here as of TDM 2.12 and for "english" (including European) unless indicated otherwise.

The Carleton Family in a Nutshell

Carleton is a squarish print-style serif font. The lower case letters look like smaller versions of the upper case letters, so this font can also be referred to as "Carleton Caps", as in this screenshot. Within TDM, there are four members of the Carleton family:

  • carleton
  • carleton_bold
  • carleton_condensed (i.e., more tightly spaced in the horizontal dimension)
  • carleton_glow

Base-font carleton is used extensively throughout the main menu system. It may appear by itself, in black, for non-interactive subheadings and descriptions. (In a few places, like the "Downloadable Missions" title, a "headline" style using carleton_bold is deployed.)

Or it may participate in dynamic text highlighting for user interactions, using overlay combinations like:

  • carleton and carleton_glow
  • carleton_bold and carleton_glow, for titles and headlines
  • carleton, carleton_bold and carleton_glow, for certain "new game" buttons

For FMs, there are standard readable sheet and scroll prefabs and sign text decals that use carleton, just by itself. The style of this font makes it a good choices for notices; between title and body, and upper and lower case, there can appear to be four different sizes of "capital" letters.

All these usages predominately involve mid-sized and large text (e.g., GUI textscale 0.24 and up), that draws on the 24pt and 48pt size bitmaps. The "english" form of 24pt and 48pt both offer TDM’s full European glyph set. Glyphs are stylishly done for 48pt and not bad for ASCII characters of 24pt; the accented characters of 24pt are rough-hewn and merely adequate.

While 48pt carleton_bold actually has bold (thickened) glyphs, 24pt carleton_bold glyphs are merely copies of regular 24pt carleton, so not bold.

File Naming and Content Sharing across the Carleton Family

The four members share bitmap naming. For instance, if you examine any of the 4 derived fontimage_24.ref files, you see references like:

shaderName fonts/Carleton_0_24.tga

and it will say "Carleton_..." in all cases, not for instance "Carleton_condensed_...". (As is typically the case in TDM, a shader filetype of .tga actually resolves to .dds, and shaderName is case-insensitive; the actual filenames are all lower-case.)

There is also file content sharing (i.e., duplication). As shown in the tables below, the sharing pattern is more complex, and arguably incoherent. This may reflect errors in distribution, or perhaps some member/size combinations not really being used.

Table of 2.12 English Carleton Family DAT Files Sharing File Names and in Some Cases Contents. The content of each file is unique, unless shown here by "SAME", which refers to only to matching another file’s content IN THE SAME ROW.
filename /carleton/ /carleton_bold/ /carleton_condensed/ /carleton_glow/
fontimage_12.dat SAME SAME SAME SAME
fontimage_24.dat SAME SAME unique SAME
fontimage_48.dat SAME SAME unique SAME


Table of 2.12 English Carleton Family DDS Files Sharing File Names and in Some Cases Contents. The content of each file is unique, unless shown here by "SAME", which refers to only to matching another file’s content IN THE SAME ROW.
filename /carleton/ /carleton_bold/ /carleton_condensed/ /carleton_glow/
carleton_0_12.dds SAME unique SAME unique
carleton_0_24.dds SAME SAME unique unique
carleton_1_24.dds SAME SAME unique unique
carleton_0_48.dds SAME unique SAME unique
carleton_1_48.dds SAME unique SAME unique
carleton_2_48.dds SAME unique SAME unique
carleton_3_48.dds SAME unique SAME unique
carleton_4_48.dds SAME unique SAME unique
carleton_5_48.dds SAME unique SAME unique
carleton_6_48.dds SAME unique SAME unique
carleton_7_48.dds SAME unique SAME unique

Bitmap File Sizes across the Carleton Family

The english 24pt DDS files shown in bold above have 512x512 bitmaps. All other files (including those for Russian, not in the table) have the default 256x256 bitmaps. This includes carleton_glow. Observe that it is not required that the base & glow have identical bitmap sizes (although that is helpful to allow GIMP layering).

See also Refont#Carleton_Family for corresponding refont commands.

Anomalies of Carleton and Carleton Bold 24pt Glyphs

As mentioned above, 24pt Carleton Bold is identical to 24pt Carleton; so not really bold. The remaining discussion applies equally to 24pt Carleton and Carleton Bold.

Evidently, the original generation of the 24pt size, into two 256x256 bitmaps "carleton_0_24.dds" and "carleton_1_24.dds", contained only ASCII alphanumeric characters and limited punctuation, with no accented/Latin-1 glyphs. Later, these bitmaps were scaled up to 512x512 bitmaps, to ease drawing in the missing characters by hand. The resulting new characters are coarser than the generated and scaled ASCII characters.

You can see this aspects in the main menu, under Settings/Video/Language, where, in the list of 16 languages, accented letters are thicker.

Also, if viewed in GIMP, the white characters have a faint black border, not seen elsewhere (e.g., in the 48pt bitmaps). This is true of both scaled-up ASCII and drawn Latin-1 characters, though far more prominent in the latter. However, TDM's monochrome rendering (defined by forecolor in the GUI) may mask such a border effect.

Carleton & Carleton Glow in the Main Menu System

This pairing occurs basically everywhere thorough the main menu system. Typical presentations, against a parchment background, are as follows:

  • Major menu-page-selection keywords are by default rendered in black with no glow, but will turn white with blood-red glow highlighting when either selected (as if a tab for the current page) or moused-over. This will also play a sound and often show a text hint.
  • Value keywords for a particular setting are shown in white with a faint black outline glow. This presentation style is also used for row items within lists.

Example Implementation

TDM uses a number of different "button" (i.e., selectable text) styles, driven by #defines in \tdm_gui01\guis\mainmenu_defs.gui. For example, those of the main menu home page use:

#define MM_NORMAL_FONT		"fonts/carleton"
#define MM_GLOW_FONT		"fonts/carleton_glow"
#define MM_FONTSCALE		0.33
#define MM_BUTTON_HEIGHT	18

For colors, the text is black initially, with glow highlighting invisible. Upon mouse hover, the text becomes white, and the glow red. RGBA colors are defined for this, in vector and string (with S prefix) forms:

#define NORMAL_COLOR		0,0,0,0.90 // black, not entirely opaque
#define SNORMAL_COLOR		"0 0 0 0.90"
#define INVISIBLE		0, 0, 0, 0
#define SINVISIBLE		"0 0 0 0"
#define GLOW_WHITE_COLOR 	0.98,0.93,0.82,1
#define SGLOW_WHITE_COLOR 	"0.98 0.93 0.82 1"
#define GLOW_RED_COLOR		0.6,0.1,0.1,0.5 // semi-transparent
#define SGLOW_RED_COLOR		"0.6 0.1 0.1 0.5"

To be specific, consider a simplified imaginary main menu "button" we'll call "Simple". (We're avoiding the layout calculations and other complications of a real button.) For our button, there are 3 aligned windowDefs in mainmenu_defs.gui, with these locations:

#define MM_POS_SIMPLE_BUTTON		rect	40, 445, 160, MM_BUTTON_HEIGHT * 1.3 
#define MM_POS_SIMPLE_BUTTON_GLOW	rect	41, 446, 159, MM_BUTTON_HEIGHT * 1.3 - 1
#define MM_POS_SIMPLE_ACTION		MM_POS_SIMPLE_BUTTON

The windowDefs positioned by these will also do the following:

  • MM_POS_SIMPLE_BUTTON: set the default appearance of the button text.
  • MM_POS_SIMPLE_BUTTON_GLOW: set the default appearance of the glow "highlight" text. Note this text is offset down and to the right by one pixel, compared to MM_POS_SIMPLE_BUTTON, to give the glow a "drop shadow" flavor. This is a frequent treatment, though in some cases only the right shift is done.
  • MM_POS_SIMPLE_ACTION defines the mouse-over and mouse-selection dynamic behaviors. (Be aware that in some actual cases, this is combined into the first windowDef.)

Then, besides the rects, the other attributes are defined for the two default windowDefs:

#define MM_FONT		font MM_NORMAL_FONT forecolor SNORMAL_COLOR textscale MM_FONTSCALE visible 1 textalign 1 // centered text
#define MM_FONT_GLOW	font MM_GLOW_FONT forecolor INVISIBLE textscale MM_FONTSCALE visible 1 textalign 1

(This is a simplification; for the main menu, MM_FONT's forecolor is #defined as INVISIBLE, then transitions to SNORMAL_COLOR in 1/2 second.)

Within an overall page layout given by mainmenu_main.gui (but with our button shoved in), we might have nested:

windowDef SimpleTextH
{
	rect 		MM_POS_SIMPLE_BUTTON_GLOW
	MM_FONT_GLOW
	visible		"gui::showSimple"
	text 		"#str_01234" // "Simple"
}
windowDef SimpleText
{
	rect 		MM_POS_SIMPLE_BUTTON
	MM_FONT
	visible		"gui::showSimple"
	text 		"#str_01234" // "Simple"
}
windowDef SimpleAction
{
	rect 		MM_POS_SIMPLE_ACTION
	visible 	"gui::showSimple"	
	float 		exit;
		
	onMouseEnter
	{
		set "exit" 0;
		transition "SimpleText::forecolor" SNORMAL_COLOR SGLOW_WHITE_COLOR "50" ;
		transition "SimpleTextH::forecolor" SINVISIBLE SGLOW_RED_COLOR "50" ;
		set "cmd" "play sound/meta/menu/mnu_hover";
	}
		
	onMouseExit
	{
		if ("exit" == 0)
		{
			transition "SimpleText::forecolor" SGLOW_WHITE_COLOR SNORMAL_COLOR "50" ;
			transition "SimpleTextH::forecolor" SGLOW_RED_COLOR SINVISIBLE "50" ;
		}
	}

	onAction
	{
		transition "SimpleText::forecolor" SGLOW_WHITE_COLOR SNORMAL_COLOR "50" ;
		transition "SimpleTextH::forecolor" SGLOW_RED_COLOR SINVISIBLE "50" ;

		set "cmd" "play sound/meta/menu/mnu_select;";
		set "cmd" "onSimpleClicked"; // tell engine
		
		// And any additional commands here to switch states, resetTime, etc.
	}
}

The "H" (highlighted) windowDef is shown first, to draw behind the main text. onMouseEnter turns the text color from black to white in 50 milliseconds, and the glow from invisible to red. onMouseExit reverses that. onAction, when the button is mouse-selected, does the visual transition as mouse exit, but plays a different sound... and then does whatever "Simple" is supposed to do.

Carleton in Assets for FMs

In the tables below, most content has a textscale above 0.30, so draws from the 48pt size, indicated in bold. Otherwise, with a textscale of 0.16 to 0.30, from 24pt.

Carleton in Standard Readable Prefabs. Within \tdm_prefabs01\xdata\prefabs.xd, "gui_page<n>" : "guis/readables/..."
Prefab Title textscale Body textscale
.../books/... none
.../scrolls/scroll_print_carleton.gui 0.40 0.28
.../sheets/sheet_paper_print_carleton_caps.gui 0.40 0.31
Carleton in Sign Text. Within \sign_text_decals\
Decal Textscale
sign_text_carleton.gui 2
sign_text_carleton_small.gui 1

Carleton_condensed

As indicated above, Carleton_condensed DDS files are all 256x256.

12pt Size

The main menu system does not use this size. In your FM, it is recommended to NOT invoke 12pt carleton_condensed (i.e., by specifying a GUI textscale of 0.15 or less). Instead, use regular carleton, possibly with a slightly smaller textscale.

Although 12pt carleton_condensed exists, its DAT file and single DDS file are mere placeholders that are identical to those of carleton 12pt.

48pt Size

The main menu system does not use this size. In your FM, it is recommended to NOT invoke 48pt carleton_condensed (i.e., by specifying a GUI textscale of above 0.30). Instead, use regular carleton, possibly with a slightly smaller textscale.

The set of eight DDS files for 48pt carleton_condensed are identical to those for 48pt carleton. However, the DAT file has different content, though the difference is not due to horizontal "condensation".

A one time, Tels drafted a Font Patcher command file for 48pt carleton_condensed, to reduce the width and xSkip of a selected subset of the carleton’s ASCII alphanumeric characters, presumably those most generously spaced to begin with. Evidently this was not finalized and deployed. Instead, inspection of the current 48pt DAT file for carleton_condensed suggests it was based on an early version of carleton, at a time when only some of the accented characters were implemented. (In particular, the DAT lacks re-implemented metrics for chars 128-139 and 145-155.)

24pt Size

The main menu system uses this, but sparingly. Since a "glow" form of carleton_condensed was never developed, only regular non-glow uses are applicable.

The contents of the DAT file and the set of two DDS files for 48pt carleton_condensed DIFFER from those for 48pt carleton.

For the main menu system, where carleton was used for English-language players, the more-compact carleton_condensed was briefly considered as a method of accommodating European language translations. However, this would require dynamic language switching, and was found to be a hill too far, compared to just reducing Carleton’s textscale value.

The actual limited uses in the main menu systems are seen as you survey the downloadable missions. Specifically, when looking at a candidate mission, the Mission Details page has a Description section, whose body text is carleton_condensed with textscale 0.17. Compared to other similar text section here (that use regular carleton with textscale 0.18), this is slightly smaller and condensed. Also, the Next >> and << Prev buttons for cycling through screenshots have their button captions in this font (with textscale 0.23).

For More