Skip to main content

Features

caution

Custom accounts are only available for games released in 2023 or earlier. New games must integrate LI PASS. For more details, see LEVEL INFINITE PASS.

Link custom account to another channel

If the game provides multiple login channels, such as the custom account channel, the third-party channel, and the guest channel, it is possible to link a custom account to other channels. The next time a user logs in, the user can log in to the same account through any linked channel.

note

The custom account that is linked to the player's other login channels must not have been logged in before.

Verification process guide

Login with other channel + Link custom account

Image: Custom account bind

  1. The player logs in as a guest or through a third-party channel.

  2. Call QueryUserInfo to check whether the login account has been linked to a custom account. If it has been linked, the player will not be able to link another account unless they first unlink their current account.

  3. Call SetAccountInfo to set custom account channel information.

  4. Call QueryCanBind to check if the account entered by the player has been linked or has already been registered.

  5. If this account has not been linked yet, collect the login/registration credentials of the account and pass them as extra_json to the Bind API. The type field in extra_json is used to determine whether to register or log in with a custom account.

    note

    If an account has not been registered yet, the account can be registered. Otherwise, the account can be logged in with either a verification code or password. In the flowchart, the steps for registration and verification code login are provided as reference, refer to Bind for more information.

  6. Call the Bind API.

Login with custom account + Link other channel

Image: Custom account bind

  1. A player logs in to a custom account.
  2. Call QueryUserInfo to check whether the login account has been linked to the channel of interest. If it has been linked, the player cannot link another account.
  3. If it has not been linked, call the Bind API.

Map custom accounts to other channels

If the game provides its user authentication function through the custom account channel yet players must use a third-party channel, such as Steam or PS5 to log in, it is recommended to use the LoginWithMappedChannel verification process to map custom accounts to third-party channels. This provides the following advantages:

Simplified login process

Generally, game platforms require players to log in to the game platform before logging in to a game. However, when a player's custom account is mapped to third-party channels, players only need to log in through a third-party channel once. Then, Player Network SDK will perform ID authentication on the player's custom account.

For example, the first time a player logs in to the game through the Steam platform, the player must first log in to a Steam account and then log in to a custom account. Player Network SDK will create a mapping between the player's Steam account and custom account. The next time, the player will only need to log in to Steam. Player Network SDK will find the player's custom account based on the mapping relationship.

Account mapping across multiple games

Because accounts can be mapped across games, if a player plays multiple games that use the same custom account system, the player can use a simplified login process to access the other games.

Supported third-party channels:

  1. Steam (21)
  2. PS5

Verification process guide

Image: Recommended auth process

Recommended verification process:

  1. Call InitSDK.

  2. Call SetAccountInfo to set custom account channel information.

  3. The third-party channel calls LoginWithMappedChannel.

    • If the return result is successful, this means the player's third-party channel account is mapped to a custom account and additional custom account login/registration is not required. Login is successful and the process ends.
    • If the return result fails, this can indicate one of the following situations:
      • The third-party account is not mapped to a custom account. In this situation, LoginWithMappedChannel will return ThirdCode=1801. The player must successfully log in/register a custom account and then perform BuildMapWithLoggedinChannel.
      • If the custom account is already mapped to a PlayStation account, but this relationship has been canceled and the custom account is mapped to a different PSN account, the error code 1802 is returned.
      • The third-party account is mapped to a custom account, and the player must log in to the custom account again. For example, the player must go through authentication when logging in to a new game or when the authentication token has expired. In this case, LoginWithMappedChannel will return RetCode=27. The player must successfully log in/register a custom account and perform BuildMapWithLoggedinChannel.
      • Third-party channel login has failed. Prompt the player to log in to the third-party channel again to proceed to the next step.
  4. After the player has logged in to a custom account, call BuildMapWithLoggedinChannel.

    • If this is the first time the player calls this function, a mapping relationship is created between the third-party channel account and the custom account, and the third-party channel AuthResult is returned.
    • If this is not the first time the player calls this function, only AuthResult is returned.
  5. This completes the authentication process.