ResourceBundle
Messages can be localized by calling `L10n.getMessage`, which also formats named arguments. Furthermore the extension function `Player.getMessage` determines the locale to use by invoking `L10n.localeProvider`.