Text Label
The Text Label is a fundamental building block of any interface. It allows you to display text directly on your Custom Launcher canvas. While it may seem simple, it is highly flexible and perfectly tailored for presenting both static information and dynamic variable data to your users.
Whether you are building a simple title screen, showing the current download progress text, or displaying a user's logged-in username, the Text Label is your primary tool for visual communication in your Custom Game Launcher.
Text Label Overview
A Text Label holds a single string of text that can be styled extensively using the built-in typography and color controls. It integrates seamlessly with the variable system, allowing you to embed dynamic values like %-%user_name%-% directly into the text field.
Typical Uses
- ❖ Displaying game titles and subtitles
- ❖ Showing real-time connection or server statuses
- ❖ Creating dynamic welcome messages for logged-in users
- ❖ Indicating currently installed game versions
- ❖ Providing text descriptors for buttons or input fields
Default Settings
When you add a Text Label to your page, it comes with sensible defaults that look great out of the box.
| Property | Default Value |
|---|---|
| Dimensions | Width: 200, Height: 30 |
| Text Color | #ffffff |
| Background Color | #000000 (with Opacity control) |
| Typography | Font: Poppins, Size: 16, Weight: 400 |
| Alignment | Left |
Properties
The visual editor gives you fine-grained control over exactly how the label looks and behaves within your launcher's design language.
Content
- Label Text: Enter the literal text you want to display. You can freely insert system variables here (e.g.,
Welcome, %-%username%-%) to make the text dynamic upon loading. - Variable Name: Assign a unique variable identifier to this specific label if you plan on targeting it with complex scripts or external data parsers.
Colors
- Text Color: Choose the main color for your font.
- Background Color and Opacity: By default, labels have a transparent-feeling background, but you can assign a solid color and adjust the opacity slider from 0 (invisible) to 1 (solid).
Typography
- Font Family and Size: Select from premium built-in fonts like Poppins, Inter, or Roboto, and dial in the exact pixel size.
- Font Weight: Adjust the thickness of the characters ranging from 100 (Thin) to 900 (Black).
- Text Align: Set the horizontal alignment (Left, Center, or Right) relative to the object's width.
- Italic and Underline: Quick toggles for added text emphasis.
Text Label Events
Text Labels are visual display objects. Because they are not intended to act as interactive elements like Buttons or Checkboxes, they do not possess innate click or hover events of their own. Instead, they react to Global Events or act as the target for Actions fired by other objects.
All Possible Actions for the Text Label
You can dynamically manipulate a Text Label during runtime using the following actions.
| Action | How it works |
|---|---|
| Change Text Label | Instantly replaces the string displayed by the Label. You can pass raw text or variable structures into this action. |
| Push to Variable | Reads the 'text' property currently stored in the Label and pushes it into a global variable for later use. |
| Set Object Property from Variable | Updates the 'text' property of the Label using a value stored inside a global variable. |
Additionally, you can use general object actions like Show Objects, Hide Objects, Move Object, Resize Object, and Destroy Object to orchestrate complex UI animations or transitions.
Building Logic with the Text Label
Labels are rarely static in a modern launcher environment. Here is how you can use them to display real-time logic.
Example 1: Dynamic Download Status
Keep your users informed by updating a Text Label based on download progression.
- Place a Text Label near your Progress Bar. Name it
StatusLabeland set its default text to "Waiting to download...". - On the button that initiates your Download File action, add a Change Text Label action immediately before it, changing the text to "Downloading...".
- In your download complete or success event, use Change Text Label again to update it to "Download Complete! Ready to play."
Example 2: Reading from a Configuration File
Load the user's previously saved character name into a label upon launcher boot.
- Go to your page's On Launcher Start global event.
- Use the Set Variable from INI File action to read the user's chosen character name from your game's config file and store it in a variable called
SavedCharName. - Use the Set Object Property from Variable action, select your Text Label, and target its
textproperty with theSavedCharNamevariable. The label will instantly reflect their character name upon load.
Custom CSS Example
If you have access to the Developer Edition, you can use Custom CSS to apply advanced styling to your labels, such as neon glows or letter spacing.
When applying Custom CSS in the Developer Edition, ensure you use !important to successfully override the default properties. You do not need to scope the object manually. Do not override geometry properties like width, height, top, or left, as this will break dynamic positioning in the editor.
This live preview demonstrates how static text overlays like letter spacing, text transformations, and multi-layered text shadows can completely transform a simple label. Try hovering over the text!
/* Developer Edition Custom CSS Example for Text Label /
/ No manual object scoping needed */
/* Alter the text color with high priority */
color: #93c5fd !important;
/* Add spacing and force uppercase */
letter-spacing: 0.15em !important;
text-transform: uppercase !important;
/* Apply a multi-layered electric blue glow */
text-shadow: 0 0 10px rgba(59, 130, 246, 0.8),
0 0 20px rgba(59, 130, 246, 0.4) !important;
/* Smooth transition for when we add a hover state */
transition: text-shadow 0.3s ease !important;
/* Adding an intensified glow on hover */
&:hover {
text-shadow: 0 0 15px rgba(59, 130, 246, 1),
0 0 30px rgba(59, 130, 246, 0.6) !important;
}
Summary
The Text Label is a vital component for conveying information clearly and stylishly within your Custom Game Launcher. By leveraging the built-in typography features, global variable embedding, and runtime actions, you can transform static words into a living, responsive interface.