Commit Graph
24 Commits
Author SHA1 Message Date
flowtron 54f7309423 COOP is considered wonderful (issues #297,#320,#341) 2021-06-01 17:46:58 +02:00
drian 85149fe3e5 updated documentation in server commandline file 2021-04-14 14:04:54 +02:00
drian 550cff1c78 updated documentation in server commandline file 2021-04-14 13:58:19 +02:00
ac-stef 7d1edd0fa1 cleaned up demo filename nonsense
If a filename does not contain at least mode, map and timestamp (due to
messed up format strings), the default format is used to ensure unique
filenames.

server side: added server parameters

  demo_max_number
    number of demo files to hold in RAM

  demo_save
    enable/disable writing of demos to file

  demo_path
    demo file path and filename prefix

  demo_filenameformat
    format string to assemble demo information to a filename
    %g : gamemode (int)
    %G : gamemode (chr)
    %F : gamemode (full)
    %m : minutes remaining
    %M : minutes played
    %s : seconds remaining
    %S : seconds played
    %h : IP of server
    %H : hostname of server (client only)
    %n : mapName
    %w : timestamp (formatted by demo_timestampformat)

  demo_timestampformat
    timestamp format string (see strftime() for format options)
    if the string starts with 'U', UTC is used - otherwise local time

client side:

changed demonameformat and demotimeformat to SVARs

  demonameformat
    like demo_filenameformat

  demotimeformat
    like demo_timestampformat

removed demotimelocal getdemonameformat getdemotimeformat getdemotimelocal

DOCREF demonameformat demotimeformat
DOCREF demotimelocal getdemonameformat getdemotimeformat getdemotimelocal
2017-06-27 15:15:24 +02:00
ac-stef 0b656d2380 add server-side player vita database
The server keeps track of every player ID that ever connected successfully.
This database stores the last names and IPs used by the player and the
last countries the connections came from. Some stats are counted, like
"time connected" and "total tks". Most importantly, the database stores
rights (like admin) and restrictions (like ban). All rights and
restrictions are kept as dates (or timecodes), so, for example, if your
ban date is in the future, you are banned - and if it's in the past, you
can play. The collected stats are meant to help server owners at managing
players - especially, if they want to give someone admin rights.

The database is periodically saved to a file and read from that file on
startup. The default file is config/servervita.cfg and one backup is kept
in config/servervita_bak.cfg. During server start, if the regular file
can't be loaded, the backup is tried instead.

While the server is running, it checks periodically for a file named
config/servervita_update.cfg, and if the file exists, it is renamed to
a backup filename including a timecode and read and merged into the
database. The automatic rename makes sure, that a file is only read once.
Using such updates, a server owner can easily give several people admin
rights or for example, add clan tags for a whole list of IDs. (Yes, the
database also stores a clan tag for every ID...)

The database also stores two short comments for every ID. One can only be
read by server admins, but the other one is public. The public reason, for
example, can state a reason for a ban.

One database record takes up 264 bytes of RAM. During autosave, accounts,
that have not been used for a specified time (default 12 months), will
not be written. After a server restart, those old records will be gone.

Currently, there is no process in place, to also clean up old records
from RAM. Maybe, that'll be added later...
2017-06-27 15:15:23 +02:00
ac-stef 7486317497 add changeable server parameters
A list of parameters is read from config/serverparameters.cfg once per
minute and the values written to corresponding server data structures.

If the binary is compiled in debug mode, starting a dedicated server
will write a blank config file with all possible parameters and their
descriptions, sorted and grouped into chapters.

The name of the config file can be set with the commandline parameter -A.

So far, syntax errors are not reported. Instead, it's possible to dump
all current values to a file every time something changes.
2017-06-27 15:15:22 +02:00
ac-stef 1c109bfa62 new commandline parameter to specify path for server logfiles
use -H to set path
default is logs/
2017-06-27 15:15:21 +02:00
ac-stef 63668e0dda add support for a geolocation table
including two converter scripts to use Geolite2 and Webnet77 tables
2017-06-27 15:15:21 +02:00
ac-stef c8c310886a fix parsing of commandline switches for servers
also:
 * -Y now sets the private key for the server
 * -m without argument uses default masterserver URL
 * servers run LAN-only by default (set ms URL and private key to
   register with the master)
 * use generic locale "POSIX"
2017-06-27 15:15:21 +02:00
ac-stef 2bc8936680 cleanup killmessages
* remove server-side custom killmessages (log files need to be uniform)
* clean up client-side custom killmessages
2017-05-22 20:19:15 +02:00
ac-stef eb60302e67 cleanup
- fix possible crash in conc (but it's still an ugly hack)
- fix noob usage of strcmp
- flag some memory leaks (it would be nice, if the author(s) would clean
   up the mess himself)
- fix crash in substr
- whitespace cleanup

there are plenty more memory leaks in command.cpp - for example, every
goto in cubescript does not clean up anything
2014-05-14 22:54:37 +02:00
Ronald Reagan 3ee8d9bfc0 cleanshot cares about /accuracy, minor update to servercmdline.txt for 1.2 updates. No new switches added (if needed?)
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@7505 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2013-07-07 03:18:30 +00:00
Lucas GAUTHERON 668254813c enable/disable loggamestatus
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@6369 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2011-04-27 13:11:57 +00:00
Lucas GAUTHERON aec37282f8 kill messages cfg editable in game, and separated from server config
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@6347 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2011-04-25 23:23:02 +00:00
aerkefiende e509187aef updating the command line arguments
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@6257 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2011-04-16 14:34:23 +00:00
Lucas GAUTHERON aee1d4f1f2 adding custom kill messages support
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@6215 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2011-04-06 12:21:18 +00:00
flowtron 18f456a08a DOC: demonameformat (and friends)
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@6154 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2011-03-28 20:22:51 +00:00
Rafael Barreto 42e6a39207 testing: combat pistol (with burst!)
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@5307 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-07-08 19:57:31 +00:00
Rafael Barreto 8e77756398 whois fix, linux 64 bins, and servercmdline.txt update
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@5252 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-06-29 18:01:07 +00:00
flowtron 11796bae85 typo fixes
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@5166 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-06-10 19:57:31 +00:00
ac_stef 9b80a67b2b update docs
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4544 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2009-06-28 13:00:50 +00:00
ac_stef e50c101316 describe new commandline parameters
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4464 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2009-06-03 13:52:56 +00:00
ac_stef 60bf761971 simple map revisioning system
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4357 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2009-04-26 19:16:33 +00:00
ac_stef e4fd545d79 update commandline switch documentation
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4352 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2009-04-26 16:48:02 +00:00