This will tutorial will explain the issues with running a dedicated server on mods for coop lan games. First an explanation of the steps to set up a dedicated server and then and explantion from HDN about the problem of mods not seeing some coop supported maps.
Here are the steps:
- Install the stand alone BF1942 1.6+ server. This will create a 'Battlefield 1942 Server' folder under the EA Games folder.
- Install the MOD server version with all patches. These are sometimes not installers, so you need to know where these files go. I installed them into seperate folders and then copied the files under the mods folder of the server folder. Under the server folder, its the same file structure as other mods. So you should have this:
Program files/EA Games/Battlefield 1942 Server/mods/[mymod]
- Then I copied [mymod] into Program files/EA Games/Battlefield 1942 Server/mods
- If you start a dedicated server, it defaults to a pure server, which runs content checking, and the server won't let anyone join because the maps are not set in the contentcrc32.con file for coop. On a LAN, we really should not be worried about cheaters, so just turn content checking off.
in mods/BF1942/settings/serversettings.con look for
game.serverContentChecking 1
change to
game.serverContentChecking 0
Now when you start up the dedicated server, the Pure displays 0 instead of 1.
If there is an option for this setting in through the server launcher, I could not find it. Also be aware that this turns content checking off for all mods using the dedicated server.
Now if you are just trying to launch a coop game and have others join on a LAN, make sure you have content checking turned off. Bf1942 has the same settings as the dedicated server.
------------------
(From HDN - About dedicated servers not seeing coop maps when only the map extension [the files with a _ and numbers at the end like _001] has coop)
Yup, that's the exact problem. The server launchers only look at the base rfas for the level/GameType/ files, not the patch rfas. The easiest solution is to setup the map list file manually. The map list file is located in Battlefield 1942/Mods/bf1942/Settings/maplist.con. It should look something like this:
----
game.addLevel Battle_of_Orel-1943 GPM_COOP FH
game.addLevel Wake GPM_COOP FH
game.addLevel Bombing_the_Reich-1943 GPM_COOP FH
game.setCurrentLevel Battle_of_Orel-1943 GPM_COOP FH
----
The format is pretty simple
game.addLevel LEVEL_NAME GAMEPLAY_MODE MOD
Gameplay modes are:
GPM_CQ - conquest
GPM_COOP - coop
GPM_CTF - capture the flag
GPM_TDM - team death match
GPM_OBJECTIVEMODE - objective mode
The last line, game.setCurrentLevel has the same syntax as game.addLevel, it tells the server which map to load first.
You can of course mix and match mods and gametypes in the maplist.con file, and it can make for some really interesting LAN sessions
Only caveat here is that the battlefield dedicated server launcher overwrites this file when you run it, so you'll have to run the server directly from the command line. A nice trick is to first setup your server settings with the dedicated server launcher, then change the maplist and run the server from the command line.
---------------
Note from Dnamro: It appears that the dedicated server looks in the gametypes folder of the base map rfa (not the _00x files) for the available gamemodes. As long as the base map rfa has all correct gametypes, the rest of the single player files could be in a map extension rfa file ( like a _001 file).