How To Install Sven Coop Maps

How To Install Sven Coop Maps

февраля 18 2021

How To Install Sven Coop Maps

Sven Co-op's Install_OpFor_Support.bat port to bash.
Install_OpFor_Support.sh

Sven co-op install map. Sven Co-op Sven Co-op: วิธีติดตั้ง Addon. 3 years ago Gametoon. Jul 10, 2012  Using Sven Co-op HLSP campaign as a base for the conversion. Scripted weapons (not all) to mimic the original weapons behaviour, as well as a workaround for the irreplaceable client side sounds. Removed almost every duplicate sound file (my ears). Original intro logo. Less time spent installing multiple copes of HLDS and Sven Co-op. Less time spent installing custom content (map packs). Less space consumed due to a single set of game files. Less effort required modifying/repairing game files (ripent, etc). ANY configuration file can be profile specific or use a shared one.

#!/usr/bin/env bash
HLDIR='/home/caesim/.local/share/Steam/steamapps/common/Half-Life'
SCDIR='/home/caesim/.local/share/Steam/steamapps/common/Sven Co-op Dedicated Server/svencoop'
szGame='Opposing Force'
szModDir='gearbox'
scVersion='5.0'
if [ '$(uname -m)''x86_64' ];then
ripent=ripent
else
ripent=ripent_32
fi
mapList=(
of0a0 of1a1 of1a2 of1a3 of1a4 of1a4b of1a5 of1a5b of1a6 of2a1 of2a1b of2a4
of2a5 of2a6 of3a1 of3a2 of3a4 of3a5 of3a6 of4a1 of4a2 of4a3 of4a4
of4a5 of5a1 of5a2 of5a3 of5a4 of6a1 of6a2 of6a3 of6a4 of6a4b of6a5
)
szBaseContentDir=$HLDIR/$szModDir
if [ !-d'$szBaseContentDir' ];then
echo Could not find $szBaseContentDir directory
echo Check that $szGame is installed
exit
fi
echo
echo -= Half-Life: $szGame map support for Sven Co-op $scVersion =-
echo
echo Warning: Around 80MB of free disk space required.
echo Installation may take a few minutes; please be patient.
echo
echo
echo ----------------------------------------------------------------------------
echo IMPORTANT: To install $szGame support, you must own 'Half-Life:
echo$szGame' and have it fully downloaded and installed!
echo ----------------------------------------------------------------------------
echo
cd'$SCDIR'
if [ !-f'maps/$ripent' ];then
echo Missing $ripent
exit
fi
if [ !-f'$szBaseContentDir/maps/${mapList[0]}.bsp' ];then
echo Missing maps
exit
fi
echo
echo Copying official maps from installed game...
echo
formin'${mapList[@]}';do
cp '$szBaseContentDir/maps/$m.bsp' maps/
done
cp '$szBaseContentDir/gfx/env/*' gfx/env/
echo
echo -= Valve's original Half-Life $szGame maps have been copied. =-
echo
echo
echo Preparing...
echo
unzip -o opfor_support.sven -d maps
cd maps
echo
echo Importing entity data...
echo
formin'${mapList[@]}';do
./$ripent -import -noinfo $m.bsp
done
echo
echo Flushing temporary data...
echo
rm of?a?.ent
rm of?a?b.ent

commented Apr 2, 2018

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment


Sven Co-op is a first person co-operative action game. The dedicated server component can be run as a Windows service using FireDaemon Pro, which allows you to start the dedicated server automatically at boot prior to login, start multiple instances of the dedicated server. This guide will show you how to set up Sven Co-op Dedicated Server as a Windows Service with FireDaemon Pro. You can also use FireDaemon Fusion to manage FireDaemon Pro and other Windows services via a web browser.



Download and Install SteamCMD

Download SteamCMD for Windows. Unpack the contents of the ZIP file into the directory of your choice (eg. C:SteamCMD). There's only one file in the zip file: steamcmd.exe. Double click steamcmd.exe to download related support files and update SteamCMD.


Download and Install FireDaemon Pro

Download FireDaemon Pro for your CPU architecture (32-bit or 64-bit). Look for the Download buttons. Then install FireDaemon Pro.


Download and Install Sven Co-op Dedicated Server

Go to the directory where you installed SteamCMD (eg. C:SteamCMD) and create a shortcut to 'SteamCMD.exe' called Sven Co-op. Edit the Properties of the shortcut and edit the Target to read:


C:SteamCMDsteamcmd.exe +login anonymous +force_install_dir 'C:SvenDS' +app_update 276060 validate +quit


The shortcut dialog should look like this:




Now double click the shortcut you created and let it run to download the Sven Co-op dedicated server files. It might take some time for the game server to download. You should also run the shortcut every week or so to grab the latest server updates. Make sure to stop your server first prior to applying updates.



Setup the Sven Co-Op Dedicated Server as a FireDaemon Pro Service

Next step is to start FireDaemon Pro and click on the New button in the toolbar (or type Ctrl+N). Complete the FireDaemon Pro Program settings per the screenshot below.



The FireDaemon Pro Program tab settings are summarised in the table below:


Field
Description
Recommended Value
Short Name
Short Name of the FireDaemon Pro Service
Sven Co-op
Display Name
Display Name of the FireDaemon Pro Service
Sven Co-op
Description
Description of the FireDaemon Pro Service
Sven Co-op Dedicated Server
Executable
Full path the svends.exe file
C:SvenDSsvends.exe
Working Directory
Directory containing the svends.exe file
C:SvenDS
Parameters
Dedicated game server parameters (described below)
-console -game svencoop -secure +ip '1.2.3.4' -port 27015 -no_ipx +maxplayers 12 +log on +map '_server_start'
Startup Mode
How Windows launches the game server on machine boot
Automatic (Delayed Start)


The Sven Co-op dedicated server parameter options are summarised in the table below:


Option
Description
-console
Enables a text base server display. The server can only be automatically restarted in text based mode.
-game svencoop
Load the game server mod
-secure

Enables VAC (Valve Anti-cheat) protection of your server. If you do not want to enable VAC on your server you must use the “-insecure” switch instead, however this opens your server to the possibility of abuse

+ip '1.2.3.4'
This should be the IP address of your computer (not 127.0.0.1). If your computer only has a private/LAN IP address assigned (such as 10.x.x.x, 172.16-31.x.x, or 192.168.x.x) you must use this or your server will not be connectable.
-port 27015

This is the default server port. You can change it to anywhere from 27015 to 27020. You would only change this if you host multiple servers as each server has to use its own port when using the same IP

-no_ipx
Disable the IPX protocol
+maxplayers 12

This controls the maximum of amount of players that can connect to your server at once. Since Sven Co-op is a co-operative game, game play is severely affected when there are more than 12 players. So keep the +maxplayers to nore more that 12. You can only control the max players on server startup. If you plan to primarily play the Half-Life campaign consider lowering this to value to 8

+log on

Displays the output of information on the screen and logs events to file. You can turn it off by using +log off instead. Keeping this value on makes it easier to debug any errors you might encounter, and for reviewing player misbehavior

+map '_server_start_'

Loads a specified map on server startup. You should ideally keep this as the stub map “_server_start” particularly if you are running plug-ins, as some need at least 1 map to pass to properly initialise. the stub map will terminate within a few seconds and then your map cycle will continue as normal.


Now click on the FireDaemon Pro Settings tab per the screenshot below. If you DON'T want to see your dedicated server running, uncheck the Interact with Desktop check box and select Hidden from the Show Window dropdown. Ideally you should run the Sven Co-op Dedicated Server as a non-administrative user with “Login as a batch job” and “Login as service” rights for security purposes. You will need to create that user account manually and set a password. In the Logon Account field type that account username (e.g. SvcSvenDS) and then enter the user's password twice in the Password and Confirm fields. If you do decide to take this approach, you will need to ensure this user has the “Modify” NTFS security permissions set on the folder “C:SvenDS” and child folders. You should not set permissions to Full Control for your user as it's not required.

Maps


You can change the Process Priority to allocate more CPU time to the dedicated server or specify which CPU or core the dedicated server will run on (in the case of multi-processor, hyperthreaded or multi-core CPUs). Realistically the Sven Co-op Dedicated Server will only require 2 threads at most, the majority of the CPU time being spent on a single thread.



Now click on the FireDaemon Pro Lifecycle tab per the screenshot below. Uncheck Graceful Shutdown as the Sven Co-op Dedicated Server doesn't support it.



Now click on the FireDaemon Pro Dialogs tab per the screenshot below. Enable this feature, then click Insert. Specify title “Error” and button text “OK”. Even if your service is configured to be hidden the Sven Co-op Dedicated Server may still display an error dialog behind the scenes, causing your server to become stuck doing nothing until manually restarted.



Now click on the FireDaemon Pro Scheduling tab per the screenshot below. Change Schedule A Restart to 'At specific time' then specify the restart time. You should ideally schedule a game server restart every 24 hours, particularly if you plan to run any custom maps. This is because of the vast catalogue of custom maps has not been quality tested, meaning certain buggy maps can leave your server frozen until manually restarted.




Now click OK to finish the setup and start your Sven Co-op Dedicated Server! The server will run on Session 0 so you will need to switch desktop to see it running by clicking on the 'Session 0' button in the FireDaemon Pro toolbar. The screenshot below shows the Sven Co-op Dedicated Server running on Session 0 along with FireDaemon Session 0 Viewer.



Sven Co-op Configuration File

Sven Co-op uses one configuration file to store its settings called 'server.cfg'. It's located in the svencoop folder under the folder where you installed the game server (eg. C:SvenDSsvencoop). The vanilla server.cfg file contains the basics you need to configure your server, however at an absolute minimum you should set the following in server.cfg:


Setting
Description
hostname
This changes the name of your server as seen in the server browser and score board. If you can’t think of anything just use your on-line name, e.g. “Adambean’s server”
rcon_password
Setting a strong password here is important. Leaving this password as weak/simple could leave your server open to anyone running remote console commands, effectively taking control of your Sven Co-op instance. If you do not want the remote console enabled at all leave this setting undefined or commented out (with the two // at the beginning of the line), however, this will deny even yourself from any in game management abilities.
password
If you want your server to be private for just yourself and a closed group of your friends set a shared password here. Otherwise leave this undefined or commented out with the two // at the beginning of the line.
sv_region
This should match the region of the world your server is located in as per Steam’s documentation. This will allow the Steam server browser to allow players to find servers in their region.


For a comprehensive version of 'server.cfg' please refer to the server.cfg found in C:SvenDSsvencoopserversexample. The majority of this configuration file will not need to be changed. Ideally, just copy and amend what you need into your own 'server.cfg' file. Setting descriptions can be found in the official server configuration guide.


Updating Sven Co-op


Now that you have the Sven Co-op Dedicated Server installed and running it is worth taking a step to help you keep your server up to date. Updates typically come out every 1-2 months so you should not require a scheduled task, however creating a batch file will allow you to update your server with one click!


Open your favorite plain text editor such as Notepad or Sublime, and into a new file paste the following text:


@ECHO OFF

How To Install Sven Coop Maps Download

ECHO Stopping Sven Co-op DS ...

net stop 'Sven Co-op'

Sven Coop Download

How To Install Sven Coop Maps

ECHO.

ECHO Updating Sven Co-op DS ...

C:SteamCMDsteamcmd.exe +login anonymous +force_install_dir 'C:SvenDS' +app_update 276060 validate +quit

ECHO.

ECHO Starting Sven Co-op DS ...

net start 'Sven Co-op'


Save this file as 'updated.cmd' in your Sven Co-op installation folder (eg. C:SvenDSupdate.cmd). If you wish you can make a shortcut to this, otherwise simply run this batch file to update your server. Your Sven Co-op server will shut down while the update is applied, so you should ideally check to see if anyone is playing first prior to updating.


Running Multiple Sven Co-op Servers Simultaneously

Sven Co-op fully supports running multiple instances in parallel with a single set of configuration files. This is known as configuration profiling, whereby you define multiple basic configuration files with different settings (even if only the hostname changes) but each instance can all access the same content.


This is particularly useful for saving time and disk space, which becomes paramount if you decide to run lots of custom maps. It is also commonly done so that multiple servers can run a different standard cycle of maps while still allowing a much broader/complete range of maps to be played if voted for. (See 'mapvote.cfg'for a list of voteable maps.)


A full guide of this functionality is available in the Sven Co-op manual, but the basic steps are:

  • Install Sven Co-Op Dedicated Server via SteamCmd as normal. If you have already done this you won’t need to do it again
  • Create multiple services in the same way as the first FireDaemon Pro service you created, or use the clone feature in FireDaemon Pro to do this quickly
  • Instead of naming each service as “SvenDS” with description “Sven Co-op Dedicated Server” give them different names/descriptions such as:
    • “SvenDS-1” with description “Sven Co-op Dedicated Server: Public #1”
    • “SvenDS-2” with description “Sven Co-op Dedicated Server: Public #2”
    • “SvenDS-3” with description “Sven Co-op Dedicated Server: Public #3”
    • “SvenDS-Private” with description “Sven Co-op Dedicated Server: Private” – this one could be password just for your friends to use.
  • Change the “port” parameter of each server. This is because only one instance can listen on 27015 at a time. Generally you should increment each instance port by 5 or 10 (27025, 27035, 27045, etc.) in case you have a plug-in that wants to listen on an additional port
  • You will now want to specify some extra parameters to help you split up your instance settings, logs, and map cycle. Add the following parameters to each service instance, but replace “svends-1” matching the service name you used
    • +servercfgfile “servers/svends-1/server.cfg”
    • +mapcyclefile “servers/svends-1/mapcycle.txt”
    • +motdfile “servers/svends-1/motd.txt”
    • +logsdir “servers/svends-1/logs”
  • For each instance you created, navigate to “C:SvenDSsvencoopservers”, and create a sub-folder for the matching service name you used in your parameters, e.g. “C:SvenDSsvencoopserverssvends-1”
  • Inside each server folder you now need to copy your base “server.cfg”, “mapcycle.txt”, “motd.txt”, and create a “logs” sub-folder, then adapt the 3 files to be specific to your instance. This applies, even if you’re just changing the hostname to number your servers
  • In each “server.cfg” file make sure you define parameters “servercfgfile”, “mapcyclefile”, “motdfile”, and “logsdir” but without the “+” before, pointing to the same locations mentioned in the parameters. If you don’t do this these parameters could become lost during a bad map change.
  • Add each service to your “update.cmd” script twice, so that each service instance is stopped before updating, then started again after updating.

How To Install Sven Coop Maps Online

You will now have multiple Sven Co-op Dedicated Server instances on a single installation!


Conclusion

That’s all for the FireDaemon Pro specific aspects of Sven Co-op Dedicated Server. If you require extra support on the specifics of Sven Co-op including running/configuring your server(s) there is plenty of information in the game manual including some advanced topics, and there is an active community willing to help at the server support message board.

How To Install Sven Coop Maps

Leave a Reply

Cancel reply