This action is used to initially set your name, or to change it after it has been set.

It takes one string parameter, which is the new name you want to set for yourself.

You will not have the name instantly, but only once the server has replied, so do not do a name set and join channel action in the same event, as it will usually fail.

Triggered responses

If your name is approved by server, your first name set will trigger an Name > On name set event for your first approved name, and for later approved names, it will trigger an Name > On name changed event.

A custom server may edit the name you request before approving a name set, so it is important to read back the Self > Name expression in the events above, rather than expecting to have the name you requested.

If your name set is not approved by server, you will receive an Name > On name denied event instead.

If you are changing your name, all peers on channels you are joined to will receive a Channel > Peers > On peer changed name events. If the peer shares multiple channels with you, they will get the message once for each channel.

A custom server may set your name of its own accord, without you sending a set name request, but you will still receive the On name set or On name changed events.

Name restrictions

Names may have any characters, and may be requested at any length, but once approved by the server, the name must be 1-255 characters long.

By default, servers do not change the names before trying to approve them, so if you request a name too long, you will get your name set denied.

In Relay, this limit is 1-255 ANSI characters, and there is no way to use Unicode names. In Blue, it is 1-255 UTF-8 bytes.

ANSI and UTF-8 are described under Unicode notes.

You can get the byte count of a potential name with the Convert to UTF-8 and count bytes expression.

Some servers may allow newlines, tab characters and the like in a client name, but due to difficulty referring to or displaying these in one-line controls, this is usually not allowed… and if it is, you should not be using it.

Re-using names

In Relay, two clients on a server may have the exact same name at the same time, as long as they do not enter the same channels. An attempt to enter the channel with a user that has the same name will be denied with reason "Name already taken", and the name change will be denied with the same reason if you're already sharing a channel.

In Blue, client names are always unique, even if the users with same names do not share channels.

Blue also disallows similar names from being used. This is covered under Unicode notes.

Case sensitivity

Names maintain their casing (a.k.a. capitalization) but are case-insensitive; thus, "Jamie", "jamie", and "JAMIE" are considered to be the same name. All actions asking you to select a user by name will test insensitively, so a search for "JAMIE" will find the client with any of those three names.

Both Relay and Blue allow you to change your name to what it already was, with casing changes. This means you don't have to switch to a different name and back to rename from "adam" to "Adam".

However, due to a bug, Relay will deny you to change your name to what it already is, if you are joined to any channels…