Soulmask Wiki
Advertisement

Private servers are set up by individuals and support multiplayer online gaming on unofficial servers. You can opt to use the services of a private server provider for easier creation of private servers. The link for server rental is as follows:

ClawCloudhttps://claw.cloud/store/soulmask

G-portalhttps://www.g-portal.com/soulmask

Server Operating Environment:

  • The server operates on Linux(Server)/Windows(Server) operating systems.
  • A single server can run multiple game instances.
  • A single game process requires at least 16GB of memory and 2-4 CPU cores.
  • Bandwidth requirements: Each game server's inbound/outbound bandwidth is about 100kbps/player.
  • The game package size is about 1-2GB, requiring about 20GB of free disk space for operation.
  • The game uses the Steam platform, requiring the server to install the steamcmd tool.
  • Windows servers require the installation of the telnet tool.
  • Each game server process needs to open two UDP ports (default are 8777 and 27015, which can be modified through game command line parameters).

Server Startup Tutorial

1,Create a new folder in the server for SteamCMD.

2.Download SteamCMD for Windows

3.Extract the files in the zip to a folder in the root directory of your C drive,:

PS - 1

4.Search for cmd in Window and run Command Prompt

5.To open the steamcmd installation path on the command line, for example, enter the following command:cd C:\steamcmd

PS - 2

6.Use the following command to download the dedicated server:

PS - 3


steamcmd +login anonymous +app_update 3017310 validate +quit

Wait for a period of time, the server can be installed, the prompt success indicates that the download is successful.

PS - 4

Starting the server (taking Windows as an example)

Open StartServer.bat to run the server, the path is: C:\steamcmd\steamapps\common\Soulmask Dedicated Server For Windows\StartServer.bat

PS - 5

Shutting down the server (taking Windows as an example)

1.Start the telnet tool to connect to the server.

  • In Windows, search for cmd and run the Command Prompt. Then enter:
telnet 127.0.0.1 18888


2.Shutting down the server

  • Enter the following command:
quit 180

Please do not directly close the server window, as this may lead to data rollback.

Customized server settings:

1.First, you can make a copy of StartServer.bat to edit and customize the file.

2.Edit StartServer - copy.bat

Delete the original file content and replace it with:

call StartServer.bat

Then add the parameters you need to customize at the end of the line, with spaces separating each parameter.

3.Commonly used parameters:

Setting the server name: -SteamServerName=\"your server name\"

Setting the max players on the server: -MaxPlayers=50

Server password: -PSW=\"yourpassword\"

Enable GM access password: -adminpsw=\"yourGMpassword\"

Setting to PVP mode: -pvp

Setting to PVE mode: -pve

At the end, what StartServer - copy.bat might look like:

call StartServer.bat -SteamServerName=\"your server name\" -MaxPlayers=50 -PSW=\"yourpassword\" -adminpsw=\"yourGMpassword\" -pve

Run StartServer - copy.bat and the Server will start with your new settings.

Save path:

Windows save path: WindowsServer/WS/Saved

Linux save path: LinuxServer/WS/Saved

Advanced - Common Startup Parameters

The first parameter specifies the game level name, currently there is only one: Level01_Main.

Parameters
-server No change needed.
-log Turns on game console output.
-SteamServerName Specifies the name of the game instance displayed in the server list, string type.
-MaxPlayers Specifies the maximum number of players the game instance can support.
-backup Specifies the interval for writing the game database to disk (unit: seconds).
-saving Specifies the interval for writing game objects to the database (unit: seconds).
-MULTIHOME Specifies the local listening address. Use 0.0.0.0 or the local network card address.
-Port Specifies the game port, UDP, needs to be open to the public.
-QueryPort Specifies the Steam query port, UDP, needs to be open to the public.
-EchoPort Maintenance port, used for local telnet server maintenance, TCP, does not need to be open.
-initbackup Backs up game saves when the game starts.
-backupinterval Specifies how often (minutes) to automatically back up the world save.
-forcepassthrough Must be specified.
-PSW Server password, private servers can specify a password, players must enter the password to enter the server.
-adminpsw GM activation password.Open GM Panel (gm key [password])

Advanced - Launch Related:

Refer to the documentation for installing Windows with SteamCMD

Refer to the documentation for installing Linux with SteamCMD

Command for Download Dedicated Server

Windows with SteamCMD

steamcmd +login anonymous +app_update 3017310 validate +quit

Linux with SteamCMD

steamcmd +login anonymous +app_update 3017300 validate +quit

Note: Each game instance requires a separate sh/bat launch. Perform some configurations in the batch file, such as:

./StartServer.sh -SteamServerName='your server name' -MaxPlayers=50 -PSW='yourpassword' -adminpsw='yourGMpassword' -pve -Port=8777 -QueryPort=27015 -EchoPort=18888

Advanced - Server-Related Configuration Files:

Engine.ini

Path: WS\Saved\Config\WindowsServer\Engine.ini on Windows, WS/Saved/Config/LinuxServer/Engine.ini on Linux.

[URL]
Port=8777

[OnlineSubsystemSteam]
GameServerQueryPort=27015

[Dedicated.Settings]
SteamServerName=UNNAMED_SERVER
MaxPlayers=20
pvp=False
backup=900
saving=600

FAQ

I have followed the instructions to install Soulmask Let Loose dedicated server, but the launch failed.

  • The Soulmask server is designed to support only the Steam platform; therefore, the Steam-related settings must be correctly initialized during the server startup process.


How can one determine if the server has successfully completed the Steam initialization?

  • Check the server startup log file located in the server installation directory: /WS/Saved/Logs/WS.log
  • Starting from around line 126, there will be the following output (indicating successful initialization):
LogOnline: STEAM: [AppId: 2646460] Game Server API initialized 1
LogOnline: STEAM: Initializing SteamNetworking Layer
LogOnline: STEAM: Missing P2PCleanupTimeout key in OnlineSubsystemSteam of DefaultEngine.ini, using default
LogOnline: STEAM: AUTH: Steam Auth Enabled
  • The output for a failed initialization may be as follows:
LogOnline: OSS: Creating online subsystem instance for: steam
LogSteamShared: Warning: Steam Dedicated Server API failed to initialize.
LogOnline: STEAM: [AppId: 0] Game Server API initialized 0
LogOnline: Warning: STEAM: Failed to initialize Steam, this could be due to a Steam server and client running on the same machine. Try running with -NOSTEAM on the cmdline to disable.

The common reasons for initialization failure are as follows:

  • Missing steam_appid.txt file located at WS/Binaries/Win64/steam_appid.txt (It's a text file with only a single line of digits, specifically: 2646460)
  • The ports specified by -Port or -QueryPort are unavailable.


How do I find out what my server's invitation code is?

  • The server's invitation code is a Base36 encoded GUID, 25 characters in length. A unique invitation code is automatically generated by the game server upon its first run. (Clients can use this invitation code to find the server in the server list.)
  • During the server startup process, the invitation code will be printed to the Console and Log file. You can find the invitation code by checking the server log file (WS/Saved/Logs/WS.log). The relevant content will look as follows:
[2024.06.01-16.25.53:517][  0]logStoreGamemode: Display: [SERVER UNIQUE ID:] 6U1WE0O933CC7H4RFBSQ8ND47.
  • 6U1WE0O933CC7H4RFBSQ8ND47 is the unique invitation code for the server.


The server has started, but it is not visible in the server list. This situation usually occurs if the game port (specified by -Port, or default 8777) and the query port (specified by -QueryPort, or default 27015) are not accessible.

  • Check the computer's firewall to see if it has allowed network permissions for the server program WSServer.exe.
  • Check if the computer's firewall is blocking access to ports 8777/27015.
  • If the computer is connected to the internet through a router, also check if NAT mapping has been done for ports 8777 and 27015.


How should I become a game administrator?

  • Activate the console from the client by pressing ~.
  • Enter gm key [administrator password] (specified by -adminpsw) and press enter. This will open the GM control panel.
  • After opening the GM panel, enter the administrator password and click to become an administrator.


How do I ban players on the server?

  • How to ban players on the private server?
    • Execute the GM command: AddServerPermissionList 1 steamID(e.g. 76561************) How to unblock players on the private server?
    • Execute the GM command: RemoveServerPermissionList 1 steamID(e.g. 76561************)
    • How to mute players on the private server?
      • Execute the GM command: AddServerPermissionList 4 steamID(e.g. 76561************)
    • How to unmute players on the private server?
      • Execute the GM command: RemoveServerPermissionList 4 steamID(e.g. 76561************)

How to unban a player

How to unban a player

  • Execute the GM command: RemoveServerPermissionList 1 steamID

How to save the game

How to save the game

  • To save the world archive while the server is running, execute the GM command: gm BaoCun

How to Use the Maintenance Port? The maintenance port is a simple way to maintain the server, specified through the command line parameter: -EchoPort. During server operation, use a Telnet tool to connect to the maintenance port as follows:

How to Use the Maintenance Port? The maintenance port is a simple way to maintain the server, specified through the command line parameter: -EchoPort. During server operation, use a Telnet tool to connect to the maintenance port as follows:

  • Execute the Windows run command: telnet 127.0.0.1 18888
  • Upon entering the telnet interface, type help to view the available maintenance commands for the server.
  • To shut down the server after 30 seconds, enter: quit 30
  • To save, enter: saveworld 1

Common GM Command:

Command Name Command Code Description
Open GM Panel gm key [password] Effective for server owner only
Quick Teleport N/A Open the map (M), hold left Crrl + Right Click directly on the target location
Teleport gm go [position_x] [position_y] [position_z] XYZ represents specific coordinates. Press M to open the map, then press F to display coordinates
Add Experience gm add_exp [value] Effective for server owner only
Add Mask Experience gm add_mask_exp [value] Effective for server owner only
Add Hunting Experience gm add_hunting_exp [value]
Free Camera N/A Press "/" to Enter free camera mode
Follow Player View gm follow_player_view 1 After activating the command, choose a player to follow their view. Press M to enter free camera mode, press M again to return to that player’s view
Disable Follow Player View gm follow_player_view 0 Stops following player's view. If your view does not return to your own after disabling this effect, double-tap the [/] key
Unlock All Map Information gm show_map Effective for server owner only
Unlock All Tech Tree gm unlock_techs Effective for server owner only
View Server Status Information Debuginfo 1 Displays server frame rate, number of online players, etc.
Hide Server Status Information Debuginfo 0 Stops displaying server frame rate, number of online players, etc.
Refresh Vegetation in Range gm refresh_vegetation_in_range [value] Centered on server owner, [value] is the radius of the circle, 100 = 1 meter, maximum value 35,000
Destroy Vegetation in Range gm destroy_vegetation_in_range [value] Centered on server owner, [value] is the radius of the circle, 100 = 1 meter, maximum value 35,000
Force Join Targeted Tribe gm join_target_tribe N/A
Force Join Specified Tribe gm join_tribe [index] Press J to open the tribe list and see the position of the tribe you want to join. Enter the corresponding [index] number; the tribe in the first position is counted as 0. If the tribe you want to join is in the third position, please enter 2.
Gain Chief Permissions for Current Tribe gm take_over_target_tribe Take over the tribe of the player targeted by the mouse crosshair
Delete Tribe Sorted at index-1 gm DeleteGuild <Index> N/A
Destroy Buildings Within Radius gm CuiHuiViewGongHuiJianZhuByRadius <Radius> Centered on server owner, [Radius] is the radius of the circle, 1 = 1 meter, maximum value 400
Manual Save gm BaoCun Manually Save Server Data
Reset Skills gm reset_abilities Effective for server owner only
Quick Recruit NPC (aim at target) gm recruit Recruits the barbarian targeted by the crosshair
Clear All NPCs gm clear_all_npcs Clear All NPCs on the server
Show Own Information, Quality, Proficiency, Talents, etc. gm ShowInfo 1 Shows the server owner's own information
Show Character Information, Quality, Proficiency, Talents, etc. gm ShowInfo 0 Shows information of the character targeted by the crosshair
Set All Proficiency Levels gm set_all_pros_level [value] Effective for server owner only
Repair Mask Nodes gm unlock_nodes Effective for server owner only
Show Invasion Heat Information Chart gm show_fever Displays the fever at the server owner's location
Clear All Barbarian Invasion Heat gm clear_fever Clears the fever at the server owner's location
Increase Barbarian Invasion Heat at Current Location gm add_fever [value] Increases the fever at the server owner's location, maximum value 8,000,000
View Current Location GPS Effective for server owner only
Enable Invisibility gm SetAttr YinShen 1 Enter Invisibility Mode, can be detected by [Q]
Disable Invisibility gm SetAttr YinShen 0 N/A
Advertisement