[bf1942] +overlayPath and friends

"Einar S. Idsø" esi at itk.ntnu.no
Mon Jun 20 10:43:54 EDT 2005

Thank you Steven. I read your mail back then, but had already forgotten
about your solution to this problem. ;)

However, I seem to be unable to make it work. I placed the script
multi_admin.py alongside default.py in the admin-dir. I then changed my
serversettings.con to read sv.adminScript "multi_admin". I also made a
file in the same dir as the maplist.con called adminsettings.con in
which I've written the following:

When I start the server, the port is still not 4713. It even seems like
the script isn't properly executed: I added the following at the
beginning of the script (just after the definition of the writer class):
f = file("/home/server/tmp/bf2test.txt",'w')
f.write("Using multi_admin.py\n")

But nothing is written to the file. I know this part works, since if I
put the three lines into default.py it works fine.

Also, is the a_debug part supposed to work? If I change to a_debug = 1,
there is nothing written to admin_debug.log.


Steven Hartland wrote:
> I agree this is a huge step back from bf1942, which was a very
> elegant solution.
> I've updated admin.py to do what u want, posted it a week or
> so ago on this list multiplay.py. It determines the path to use
> for "adminsettings.con" from where the maplist is stored. Not
> the most elegant solution but it works :)
> +multi ignore from what I can gather its for the client not the
> server ( load testing feature maybe ).
>    Steve / K
> ----- Original Message ----- From: ""Einar S. Idsø"" <esi at itk.ntnu.no>
> To: <bf1942 at icculus.org>
> Sent: Monday, June 20, 2005 11:40 AM
> Subject: [bf1942] +overlayPath and friends
>> In BF1942 and Vietnam, we had the option +overlayPath which indicated an
>> alternative directory in which to place settings-files such as
>> serversettings.con, maplist.con, punkbuster-files etc. This was quite
>> handy since we could keep all settings in one dir away from the main
>> installation and thereby run more than one instance of BF2 on a box with
>> a single installation of the server software.
>> In BF2 I have only found the following (./start.sh +help):
>> +config  -  Sets path to the ServerSettings.con file to use
>> +mapList  -  Sets the path to the MapList.con file to use
>> +pbPath  -  Set the path to use for PunkBuster on multi-instance
>> configurations (defaults to {install_dir}/pb
>> The first two have to point to specific files, whereas the second points
>> to a pb directory. In serversettings.con we can set all the involved
>> ports so as to avoid port collission when running more than one server
>> on a box. However, there is one port that is handled differently: rcon.
>> It is "hardcoded" in admin/default.py, but it is possible to override
>> this by placing a file default.cfg next to default.py and let it contain
>> this:
>> port=4712
>> password=thisseemstowork
>> The problem is, obviously, that this is a global override of the port!
>> How can I specify that server 1 running on the machine should use rcon
>> port 4711 and the other should use port 4712?
>> A possible solution I thought of was if the gameport is available within
>> python somewhere, e.g. under the "host" or "bf2" instances, then the
>> rcon port can be calculated based on that port (rcon_port = 4711 +
>> game_port - 16567, for instance). But I have been unable to locate that
>> setting.
>> Another possible solution would be to include a command in the wrapper
>> script used to start bf2 in chich a default.cfg is copied to the
>> admin-dir right before launch. That is not a good solution, IMO.
>> Any clues?
>> And while I'm at it: Would it be possible to get a list of the options
>> to start.sh with a better explanation of what they do? For instance,
>> what does the following mean?
>> +multi  -  Allow starting multiple BF2 instances
>> Additionally: start.sh +help lists many options that aren't available
>> for the Linux-server (such as +fullscreen), and it ends with the
>> following:
>> +checkForPatch
>> +ai
>> fatal error: argument parsing failed
>> Cheers,
>> Einar
> ================================================
> This e.mail is private and confidential between Multiplay (UK) Ltd. and
> the person or entity to whom it is addressed. In the event of
> misdirection, the recipient is prohibited from using, copying, printing
> or otherwise disseminating it or any information contained in it.
> In the event of misdirection, illegible or incomplete transmission
> please telephone (023) 8024 3137
> or return the E.mail to postmaster at multiplay.co.uk.

More information about the Bf1942 mailing list