Setting up your own dedicated server for Soulmask can significantly enhance your gameplay experience, allowing for customized environments and persistent worlds for you and your friends. This guide provides a detailed walkthrough on how to configure your Soulmask Dedicated Server Settings, ensuring optimal performance and personalized gameplay. Whether you are a seasoned server admin or new to game server hosting, this comprehensive guide will equip you with the knowledge to get your Soulmask server up and running smoothly.
Understanding Soulmask Dedicated Server Basics
Before diving into the specifics of Soulmask dedicated server settings, it’s crucial to grasp the fundamentals. A dedicated server runs independently of a game client, providing a stable and consistent environment for all players. This setup is ideal for communities wanting persistent, always-online Soulmask worlds.
This guide focuses on setting up a server on Windows, but many principles are applicable to Linux environments, albeit with differences in file paths and script commands. We will cover installation, configuration, essential settings, and troubleshooting to ensure a seamless server operation. We prioritize a hands-on approach, detailing manual configuration without relying on server management software, giving you full control over your server environment.
Installation and Initial Setup
The first step in configuring your Soulmask dedicated server settings involves installing the necessary server files. This section will guide you through using SteamCMD, a command-line tool from Steam, to download and update your server files.
Installing SteamCMD
SteamCMD (Steam Command-Line Utility) is essential for downloading the Soulmask dedicated server files directly from Steam.
-
Download SteamCMD: Navigate to the official SteamCMD wiki or use this direct link for the Windows version.
-
Extract SteamCMD: Create a dedicated folder, for example,
C:SteamCMD
, and extract the contents of the downloaded ZIP file into this folder. -
Run SteamCMD: Execute
steamcmd.exe
. SteamCMD will automatically update itself. Once the command prompt appears withSteam>
, typequit
and press Enter to close it.Caption: Configuring UDP ports in Windows Firewall for Soulmask Dedicated Server.
Tip: For easier access, add the SteamCMD installation directory (e.g.,
C:SteamCMD
) to your system’sPath
environment variable. This allows you to run SteamCMD commands from any directory in your command prompt.
Choosing the Server Installation Location
Select a location for your Soulmask dedicated server files. It’s recommended to choose a path without spaces to avoid potential issues. Create a new folder for your server files, such as C:SoulmaskServer
.
Creating the Update Script
An update script automates the process of installing and updating your Soulmask server files. We’ll create a batch script for Windows.
-
Enable File Extensions: In Windows File Explorer, go to the “View” menu and check the “File name extensions” option.
-
Create
update.bat
: Inside your server installation folder (C:SoulmaskServer
), create a new text file and rename it toupdate.bat
. -
Edit
update.bat
: Right-clickupdate.bat
and select “Edit”. Copy and paste the following script into the file:@echo off set root=%~dp0 if %root:~-1%== set root=%root:~0,-1% pushd %root% steamcmd.exe +force_install_dir "%root%" +login anonymous +app_update 3017310 +quit copy /Y *.dll WSBinariesWin64*.dll popd pause
-
Run
update.bat
: Double-clickupdate.bat
to execute it. This script uses SteamCMD to download the Soulmask server files to your chosen directory. Review the output for any errors. If successful, press any key to close the window.Run this script whenever Soulmask releases an update to keep your server current. Remember to stop your server before running the update script.
Setting Up the Startup Script
With the server files installed and updated, the next step in configuring your Soulmask dedicated server settings is creating a startup script. This script will launch your server with your desired configurations.
Creating serve.bat
(Startup Script)
-
Create
serve.bat
: In your server installation folder, create a new text file and rename it toserve.bat
. -
Edit
serve.bat
: Right-clickserve.bat
and select “Edit”. Copy and paste the following script into the file:@echo off set root=%~dp0 if %root:~-1%== set root=%root:~0,-1% cd %root% set SteamAppId=2646460 WSBinariesWin64WSServer-Win64-Shipping Level01_Main -log -server -UTF8Output -PORT=8777 -QueryPort=27015 -EchoPort=18888 -forcepassthrough -SteamServerName="My Soulmask Server" -PSW="serverpassword" -adminpsw="adminpassword" -saving=600 -backup=900
-
Customize Settings: Edit the following parameters in the script to tailor your Soulmask dedicated server settings:
-SteamServerName="My Soulmask Server"
: Replace"My Soulmask Server"
with your desired server name. This name will be visible in the server list.-PSW="serverpassword"
: Set your server password. Remove this parameter for a public server. It’s advisable to keep a password during initial setup.-adminpsw="adminpassword"
: Define a strong admin password. This password grants full access to server settings and admin commands.
-
Run
serve.bat
: Double-clickserve.bat
to start your Soulmask server. A console window will appear, displaying server logs. Allow a few minutes for the server to fully start. Once the log output stabilizes, your server is ready. PressCtrl+C
in the console window to gracefully shut down the server.You might encounter warnings or errors during startup, some of which are normal. If the server continues running despite errors, monitor for any issues later. If the server crashes, refer to the Troubleshooting section.
Optional: Combined Update and Startup Script
For convenience, you can combine the update and startup scripts into a single script to ensure your server updates every time it starts.
-
Create
start.bat
(Combined Script): Create a new text file in your server folder and rename it tostart.bat
. -
Edit
start.bat
: Copy and paste the following combined script:@echo off set root=%~dp0 if %root:~-1%== set root=%root:~0,-1% cd %root% steamcmd.exe +force_install_dir "%root%" +login anonymous +app_update 3017310 +quit copy /Y *.dll WSBinariesWin64*.dll set SteamAppId=2646460 WSBinariesWin64WSServer-Win64-Shipping Level01_Main -log -server -UTF8Output -PORT=8777 -QueryPort=27015 -EchoPort=18888 -forcepassthrough -SteamServerName="My Soulmask Server" -PSW="serverpassword" -adminpsw="adminpassword" -saving=600 -backup=900
-
Customize and Run
start.bat
: Customize the server name and passwords as described before. Runningstart.bat
will now update the server files before starting the server.
Advanced Server Configuration
Once your server is running, you can further customize your Soulmask dedicated server settings using various command-line parameters. These settings allow you to fine-tune gameplay, server performance, and administration.
General Server Settings Parameters
Modify your serve.bat
or start.bat
script to include these parameters after WSServer-Win64-Shipping Level01_Main
. Here’s a table of common and useful parameters for Soulmask dedicated server settings:
Parameter | Description |
---|---|
-server |
Required. Designates the process as a server. |
-log |
Runs the server in a console window, displaying logs. Highly recommended for monitoring and debugging. |
-forcepassthrough |
Required. Enables necessary server functionalities. |
-UTF8Output |
Ensures correct display of non-Latin characters in server logs. Keep this enabled. |
-PORT=[port] |
Specifies the UDP port for game client connections. Default is 8777. Choose an available UDP port. |
-QueryPort=[port] |
Sets the UDP port for server queries. Default is 27015. Use an available UDP port. |
-EchoPort=[port] |
Defines the TCP port for telnet connections, accessible only from the server machine (loopback adapter 127.0.0.1). Default is 18888. Use an available TCP port. |
-MULTIHOME=[ip] |
Binds the server to a specific local IP address. Useful for multi-homed servers. Defaults to 0.0.0.0 (all adapters). Usually not needed for home setups. |
-MaxPlayers=[count] |
Sets the maximum player capacity. Adjust based on server hardware to maintain performance. |
-gamedistindex=[index] |
Defines the server region, affecting in-game event timings. Values: 0 (Test), 1 (Asia), 2 (North America), 3 (Europe), 4 (Mainland China), 5 (South America), 6 (Oceania), 7 (Africa). Note: Doesn’t affect server listing region. |
-pve |
Forces Player vs Environment mode. |
-pvp |
Forces Player vs Player mode. |
-saving=[seconds] |
Interval in seconds for saving the world state to in-memory database. Doesn’t save to disk immediately but prepares for disk backup. |
-backup=[seconds] |
Interval in seconds to save the in-memory database to world.db on disk. |
-initbackup |
Creates a backup of world.db every server startup. |
-backupinterval=[minutes] |
Automatically backups world.db at the specified minute interval. Backups accumulate; manual cleanup is needed to manage disk space. |
-rconpsw=[password] |
Enables Remote Console (RCON) with the specified password. Allows remote administration via RCON clients. |
-rconaddr=[ip] |
Sets the IP address for the RCON listener. Defaults to MULTIHOME IP. If neither is set, RCON is disabled. |
-rconport=[port] |
Specifies the TCP port for RCON connections. Default is 19000. |
-GongHuiMaxMember=[count] |
Overrides the in-game tribe member limit. Sets the maximum players per tribe. Defaults to game settings if not specified. |
-serverpm=[mask] |
Enables permission lists (whitelist/blacklist). See Permissions Lists & Banning for details. |
While some settings can be configured in WS/Saved/Config/WindowsServer/Engine.ini
, command-line parameters take precedence and are generally recommended for simplicity and clarity in managing Soulmask dedicated server settings.
RCON Remote Access Configuration
For remote server management, RCON (Remote Console) is invaluable. Ensure you’ve set -rconpsw
, -rconport
, and optionally -rconaddr
in your startup script. To allow RCON access from specific IPs, edit WS/Saved/Config/WindowsServer/Engine.ini
and add:
[Server.SafeIP]
IP=xxx.xxx.xxx.xxx
IP=yyy.yyy.yyy.yyy
Replace xxx.xxx.xxx.xxx
and yyy.yyy.yyy.yyy
with the IP addresses you wish to whitelist for RCON access.
Permissions Lists & Banning
Soulmask dedicated servers support permission lists for whitelisting or blacklisting players. These lists enhance server security and management, working alongside server passwords.
Permissions are managed via in-game admin console commands and can be manually edited in files when the server is offline. Use the -serverpm=[mask]
command-line parameter to enable specific lists.
For detailed information on permissions, including banning players, consult the [Server Permissions documentation](server_permissions.php – replace with actual link if available).
Ensuring Server Accessibility
To make your Soulmask server accessible to players over the internet, you need to configure your local firewall and router for port forwarding.
Configuring Local Firewall
Windows Firewall, or any third-party firewall, must allow incoming traffic to your Soulmask server ports.
For Windows Firewall:
-
Open “Windows Defender Firewall with Advanced Security” from the Start Menu.
-
Select “Inbound Rules” and click “New Rule…” in the right panel.
-
Create UDP Port Rules:
- Select “Port” and click “Next”.
- Choose “UDP” and “Specific local ports”.
- Enter your Game Port and Query Port (e.g.,
8777,27015
), separated by a comma. - Click “Next”, select “Allow the connection”, “Next”, keep default profiles, “Next”.
- Name the rule (e.g., “Soulmask UDP Ports”) and click “Finish”.
-
Create TCP Port Rules: Repeat the process, but choose “TCP” and enter your Echo Port and RCON Port (e.g.,
18888,19000
). Name this rule (e.g., “Soulmask TCP Ports”).Caption: Configuring TCP ports in Windows Firewall for Soulmask Dedicated Server.
Setting a Static Local IP
Assign a static local IP address to your server machine. This can be done via your router’s DHCP settings (static DHCP binding) or by configuring your network adapter on the server PC. A static IP ensures consistent port forwarding.
Router Port Forwarding
Configure your router to forward incoming traffic on your server ports to your server machine’s static local IP. The process varies by router model; consult your router’s documentation for specific instructions.
You need to forward the following ports:
- Game Port: UDP, e.g., 8777 (External Port) to 8777 (Internal Port), IP: your server’s static local IP (e.g., 192.168.1.4).
- Query Port: UDP, e.g., 27015 (External Port) to 27015 (Internal Port), IP: your server’s static local IP.
- RCON Port: TCP, e.g., 19000 (External Port) to 19000 (Internal Port), IP: your server’s static local IP (only if RCON is enabled).
Name | Protocol | External Port | Internal Port | Internal Address |
---|---|---|---|---|
soulmask_game | UDP | 8777 | 8777 | 192.168.1.4 |
soulmask_query | UDP | 27015 | 27015 | 192.168.1.4 |
soulmask_rcon | TCP | 19000 | 19000 | 192.168.1.4 |
After configuring port forwarding, your server should be accessible. Use a [server query tool](server_query.php – replace with actual link if available) to verify if your server is discoverable.
Connecting to Your Soulmask Server
Players can connect to your Soulmask server through several methods.
Invitation Code
The invitation code is the simplest method for joining.
-
Find Invitation Code:
- Check your server logs for “SERVER UNIQUE ID”. The code is at the end of this line.
- Alternatively, use an RCON client to connect to your server and execute the command
QueryInvitationCode
.
-
Join via Invitation Code: In the Soulmask server selection screen, enter the invitation code in the top right corner. You’ll be prompted for the server password if set.
Direct Connect
Direct connect requires server IP and port information.
- Gather Server Details: You need your server’s public IP address (or local IP if on the same network) and the Game Port (default 8777).
- Direct Connect: In the server selection screen, click “Connect to the server directly” and enter the IP, Port, and password if required.
Favorite Server (Steam)
Adding your server to Steam favorites ensures it appears at the top of the in-game server list.
- Get Server IP and Query Port: You need your server’s public IP and Query Port (default 27015).
- Add to Steam Favorites:
- Open Steam client, go to “View” > “Game Servers”.
- Go to the “Favorites” tab and click “+”.
- Enter your server IP and Query Port in the format
IP:QueryPort
(e.g.,1.2.3.4:27015
). Ensure your server is running to add it successfully.
Your server should now appear in the “Private Servers” list in Soulmask.
Gameplay Configuration
Customize your Soulmask server gameplay settings to match your community’s preferences. This includes adjusting resource rates, experience multipliers, and enabling/disabling game features.
Refer to a dedicated [Soulmask Gameplay Settings Guide](gameplay_settings_guide.php – replace with actual link if available) for detailed instructions on modifying gameplay parameters.
Server Management Best Practices
Effective server management is crucial for maintaining a healthy Soulmask server environment.
Server Shutdown and Restart Procedures
Properly shutting down your server is essential to prevent data loss or world rollbacks.
Safe Shutdown Methods:
- Ctrl+C in Console: Select the server console window and press
Ctrl+C
to initiate a save and immediate shutdown. - In-Game Admin Command: Use the in-game console command
gm exit
(requires admin privileges). - Telnet/RCON Shutdown Command: Connect via Telnet or RCON and use the command
shutdown [seconds]
(e.g.,shutdown 300
for a 5-minute warning).
Avoid Unsafe Shutdowns:
- Do not close the console window directly.
- Do not terminate the server process via Task Manager.
For automatic restarts after crashes or shutdowns, consider using external tools like Process Runner or scripting solutions tailored to your operating system.
Server Update Management
Follow these steps to update your Soulmask server:
- Graceful Shutdown: Shut down your server using a safe method.
- Run Update Script: Execute your
update.bat
orstart.bat
script. Wait for the update process to complete. - Restart Server: Run your
serve.bat
orstart.bat
script to restart the updated server.
Implementing Regular Backups
Regular backups are vital for data recovery and server stability.
Automated Backups (In-Game): Configure -backupinterval
and related parameters in your startup script for automatic world backups. Remember to manually manage backup file cleanup to save disk space.
Manual Backup Solutions: Implement custom backup scripts or use tools like Windows Task Scheduler to regularly backup important files:
WS/Saved/Worlds/Dedicated/Level01_Main/world.db
: Your world save data.WS/Saved/GameplaySettings/GameXishu.json
: Gameplay settings file.
Consider backing up the entire WS/Saved
directory for comprehensive coverage, and also keep a backup of your startup script for easy server restoration.
Admin Commands and In-Game Console
Admin commands provide powerful control over your Soulmask server directly from within the game.
Accessing the In-Game Console:
- Press the grave/tilde key (`) or number pad minus key (-) to open the console (a black bar at the bottom of the screen). Keyboard layout may affect the key.
Becoming an Admin:
- In the console, type
gm key [admin password]
and press Enter. Replace[admin password]
with your server’s admin password. - The admin menu will appear, and you can now use admin commands. Use the “Away from Admin” button in the menu to revert to player status.
Explore the [Soulmask Console Commands documentation](console_commands.php – replace with actual link if available) for a detailed list of commands and functionalities.
Telnet and RCON for Remote Administration
Telnet (local) and RCON (remote) offer alternative methods for executing admin commands.
- Telnet: Accessible from the server machine. Use the Echo Port.
- RCON: Allows remote access if configured and ports are forwarded. Use the RCON Port.
Recommended RCON Client: rcon-cli.
Connect using your chosen client and use commands. Type help
in the Telnet/RCON console for a list of special commands, and consult the [Soulmask Remote Console documentation](remote_console.php – replace with actual link if available) for a full command list. Note that not all in-game console commands are available via Telnet/RCON.
Troubleshooting Common Server Issues
Encountering issues is part of server administration. This section addresses common problems and solutions related to Soulmask dedicated server settings.
“Unable to Initialize Steam” Error
This error, indicated by the log message:
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.
…means the server cannot find necessary Steam DLL files.
Solutions:
- Use Provided Scripts: The
update.bat
script copies required DLLs to the correct directory, andserve.bat
/start.bat
run the server executable from the binaries directory, bypassing the issue. - Install Steam Client: Install a Steam client on the server machine and run it once to update Steam files. This is not needed if using the provided scripts.
Server Shutdowns After ~30 Minutes
If your server shuts down after approximately 30 minutes and logs repeated:
LogOnlineGame: Error: REGISTER SERVER ERROR!!!
…it indicates a Steam registration failure, often due to blocked communication or Steam outages. Investigate firewall settings and check for Steam service disruptions.
Server Fails to Start
For general startup failures, examine the server log file (WS/Saved/Logs/WS.log
). Errors in the log can pinpoint the issue. Check for messages related to the troubleshooting topics in this section. If the cause isn’t clear, seek help as described in Asking for Help.
Cannot Find or Connect to Server
If players cannot find or connect to your server:
-
Startup Time: Allow sufficient server startup time (2+ minutes) after the log output stabilizes.
-
Run from Server Files: Ensure you are running the server from the downloaded server files, not directly from a Steam client installation.
-
Connection Methods: Review the Connecting to Your Soulmask Server section and try different connection methods (invitation code, direct connect, favorites).
-
Port Forwarding and Firewall: Double-check your router port forwarding and firewall rules as detailed in Ensuring Server Accessibility. Verify ports match your startup script parameters. Test your server’s query response using a [server query tool](server_query.php – replace with actual link if available).
- No Server Listing: Likely a Query Port or Steam registration issue. Check for “REGISTER SERVER ERROR” in logs.
- Server Listed but Cannot Connect: Likely a Game Port issue.
If troubleshooting steps are insufficient, seek community support.
Asking for Help
For unresolved issues, the official Soulmask Discord server is a valuable resource.
Join the Discord server and look for the private-server
channel, which has a pinned thread for server admin support. Provide detailed information about your setup, problem description, and server logs (redacting passwords before posting). Community server admins are often willing to assist.
Alternative Help Sources: Explore community forums or platforms if you prefer not to use Discord.
Further Resources
Explore additional Soulmask guides and data through the navigation menu or on the [home page](/soulmask – replace with actual link if available).
This comprehensive guide should provide you with all the necessary information to effectively manage your Soulmask dedicated server settings. Enjoy creating your customized Soulmask experience!