AlcugsConfig

From Alcugs

Jump to: navigation, search

Contents

Alcugs Configuration Directives

Please note that the default values might have been different in older versions, I try to keep them up-to-date to the latest unet3+ revision.

Syntax

Alcugs config
  # This is a comment ; This is also a comment [this_is_a_key] this_is_a_subkey = "this is the value"   [this_is_another_key] this_is_a_tuple[0] = "one","two","three" this_is_a_tuple[1] = "four","five","six"

The last entry always overrides the previous one. For example:

Alcugs config
  port = 4664   # ... other stuff ...   port = 8393

The final port value will be 8393.

There is a generic "global" key that defines options for all servers. In addition, there is one key per server ("auth", "vault" and so on). Options made in this key overwrite the same options from the global key for this server:

Alcugs config
  [global] port = 7373 [auth] port = 7316

Then the auth server will use port 7316, and the others will use port 7373.

age

Sets the path where all the AGE files are stored.

Default value: None (must be set)
Context: Vault, Tracking and Game
Versions: All

age_filename

Sets the age filename.

Default value: None (should not be set in config file but via "-name" command line option)
Context: Game
Versions: All

age_guid

Sets the age/server guid.

Default value: None (should not be set in config file but via "-guid" command line option)
Context: Game
Versions: All

agestate.log

When enabled, the game server will keep a logfile containing information about the age state (SDL and LoadClone messages). Disabling this might increase game server performance, but it will make debugging harder or impossible.

Default value: 1
Context: Game
Versions: unet3+

agestate.log.detailed

Tells the game server to also print the detailed contents of the exchanged messages in the agestate logfile. This will decrease server performance, so enable it only for debugging purposes.

Default value: 0
Context: Game
Versions: unet3+

allow_uu_clients

When set to 0, UntilUru clients will not be allowed to join. I recommend to set this in the game section to avoid SDL and other problems which can be caused by people using different clients. You should NOT set it in the lobby section though as it will prevent everyone from logging in!

Default value: 0
Context: Lobby, Game
Versions: All

auth

Sets the auth server address. This option is usually overwritten by the bind option set in the auth section, which should be set to "localhost".

Default value: None
Context: Lobby, Game
Versions: unet3/unet3+

auth.att

Set number of failed login attempts after temporay disabling an account.

Default value: 10
Context: Auth
Versions: unet3/unet3+

auth.distime

Set the tmp time in seconds that the disabled account will stay disabled.

Default value: 300 (5 minutes)
Context: Auth
Versions: unet3/unet3+

auth.log

When enabled, the auth server keeps a logfile about the authentication processes.

Default value: 1
Context: Auth
Versions: unet3+

auth.minalevel

Set minimal access level to be able to log into the servers.

Default value: 25
Context: Auth
Versions: unet3/unet3+

auth.port

Sets the auth server port. This option is usually overwritten by the port option set in the auth section, which should be set to "2010".

Default value: None
Context: Lobby, Game
Versions: unet3/unet3+

bind

Sets the bind address for the server.

The value can be a hostname or an IP address.

Default value: 0.0.0.0
Context: All
Versions: All

broadcast

Toggles socket broadcast flag on/off.

Default value: 0
Context: All
Versions: All (had a different meaning in older versions)

cfg.dump

When enabled, the effectively used configuration (with old deprecated vars being renamed, command line options being applied and the auth, tracking and vault ports being read from their sections) is dumped to stdout on startup.

Default value: 0
Context: All
Versions: unet3+

crash.action

Sets the shell command you want to run when a server process crashes. For example, a python script that sends an e-mail to you.

system.segfault_handler option must be enabled in other to work.

Default value: None
Context: All
Versions: unet3+

daemon

Sets daemon mode (parameter: [-D])

If daemon mode is enabled, the server will start running in the background as any other system daemon.

Default value: 0
Context: All
Versions: All

db.host

Sets the host where the vault/auth database is hosted.

Default value: None
Context: Auth, Vault
Versions: All

db.log

Enable logging of the database driver (this is only useful for debugging, the server will run faster when this log is disabled).

Default value: 1
Context: Auth, Vault
Versions: unet3/unet3+

db.name

Set the databse name

Default value: None
Context: Auth, Vault
Versions: All

db.password

Set the databse password

Default value: None
Context: Auth, Vault
Versions: All

db.persistent

Enable persistent connection to the database (1=enabled/0=disabled)

Default value: 1
Context: Auth, Vault
Versions: unet3/unet3+

db.port

Set the Port used to connect to the database. A value of 0 means Unix sockets will be used.

Default value: 0
Context: Auth, Vault
Versions: All

db.sql.log

Logs all querys to the database log, requires db.log to be set to 1. (the vault runs very slow if this is enabled)

Default value: 0
Context: Auth, Vault
Versions: unet3/unet3+

db.timeout

If db.persistent is disabled, this is the time in seconds after which the connection is quit if no query is done.

Default value: 900
Context: Auth, Vault
Versions: unet3/unet3+

db.username

Set the databse username

Default value: None
Context: Auth, Vault
Versions: All

game.agestates

Sets the path where all the age state files are stored.

Default value: None (if not set, the old system of saving in the game log folder is used)
Context: Game
Versions: unet3+

game.bin

Sets the full path and name of the game server binary.

Default value: None (must be set)
Context: Lobby
Versions: unet3+

game.config

Sets an alternate configuration file for the game servers. When not set, game servers will use the same configuration file as the lobby server.

Default value: None
Context: Lobby
Versions: All

game.linger_time

If game.persistent is not enabled, this value controls how long the game server will stay up after the last player left. You should not set this to a value lower than 20, that might cause problems.

Default value: 120
Context: Game
Versions: unet3+

game.log

Sets the path for the logs for the spawned game servers. There will be a subdir for each age, containing a subdir for each instance, containing the game server logs.

Default value: None
Context: Lobby
Versions: All

game.persistent

If enabled, the game server will continue running indefinitely if it is alone.

Default value: 0
Context: Game
Versions: unet3/unet3+

game.serversidecommands

If enabled, the game server will have a look at chat messages and react to some messages starting with "/!".

Default value: 1
Context: Game
Versions: unet3+

game.tmp.hacks.resetting_ages

Defines which ages the state should *not* be preserved of.

Default value: "Kveer,Garden"
Context: Game
Versions: unet3+

game.tmp.hacks.noreltoshare

Workaround for crash when sharing a Relto book: Filter out the messages initiating that share

Default value: 0
Context: Game
Versions: unet3+

instance_mode

Sets the server age instantiation mode. Allowed values are:

0 - All age are public (not recommended)
1 - Only ages listed on private_ages will be private (recommended)

It's only a debugging option that should not be used on production servers.

Default value:1
Context: All
Versions: All

load_on_demand

Enables the automatic spawning of game servers when a player links to an specific age. This is also a debugging option, if load on demand is disabled you need to manually start the desired game server.

Default value:1
Context: All
Versions: All

log_files_path

Sets where the logs are stored.

Default value: "./log"
Context: All
Versions: All

log.enabled

Enables stdout and stderr log files.

Default value: 1
Context: All
Versions: unet3/unet3+

log.n_rotate

Defines how often a logfile will be rotated before it is removed. A value of "5" means that there will usually be 5 logfiles - the main one (e.g. "alcugs.log") and four old ones ("alcugs.1.log" - "alcugs.4.log").

Default value: 5
Context: All
Versions: unet3+

net.down

Specifies your internet connection downstream in bits per second. If the deprecated "bandwidth" value is set and "net.down" is not, bandwidth will be used (in bit/s, too!).

Default value: 512000 (512 kbit/s)
Context: All
Versions: unet3+

net.lan.down

Specifies your LAN connection downstream in bits per second. What is LAN and what not is defined by the private_mask and private_network values.

Default value: 100000000 (100 MBit/s)
Context: All
Versions: unet3+

net.lan.up

Specifies your LAN connection upstream in bits per second. What is LAN and what not is defined by the private_mask and private_network values.

Default value: 100000000 (100 MBit/s)
Context: All
Versions: unet3+

net.log.ack

Specifies whether the server should keep a HTML logfile about each acked and each ack packet. This is useful to analyze connection problems, but makes the server run slower.

Default value: 0
Context: All
Versions: unet3+

net.maxconnections

Sets the maximum number of connections the server will accept. A value of 0 means that so restriction is applied.

Default value: 0
Context: All
Versions: unet3+

net.noflood

This should stop flood attacks. A flood attack is when a evil client sends too many packets per second, forcing the server to enter in an overloaded state where it has too many pending packets to process.

Default value: 1
Context: All
Versions: unet3/unet3+

net.timeout

Specifies how many seconds a connection can be idle before it is terminated. For connections to Uru clients, this will be overwritten after the player authenticated.

Default value: 300 (5 minutes)
Context: All
Versions: unet3/unet3+

net.timeout.loading

Specifies how many seconds the connection to an Uru client which just loads an age can be idle before it is terminated. This will be overwritten after the player finished loading. If you encounter disconnects while linking to big ages, you could try increasing it - but I strongly suggest not to go above 180 seconds as this timeout also defines the time it takes the server to know the client crashed or left!

Default value: 90
Context: Game
Versions: unet3+

net.timer

Sets the netcore idle loop time in seconds (Suggested the default value)

Default value: 5 (seconds)
Context: All
Versions: unet3+

net.up

Specifies your internet connection upstream in bits per second. If the deprecated "bandwidth" value is set and "net.up" is not, bandwidth will be used (in bit/s, too!).

Default value: 128000 (128 kbit/s)
Context: All
Versions: unet3+

port

set the port where this server is going to listen. If you set this in the game section, it will be ignored since the game server port is defined by the lobby starting it.

Default value:0
Context: All
Versions: All

private_ages

Sets a coma separated list of ages that will have private instantiation. Each player will have his own instance of that age. Personal must be always a private age to avoid several nasty bugs, it's also strongly recommended to set AvatarCutomization as a private age. Nexus can be public, but not recmomended if you have a lot of players. BahroCave must also be private or you may see some weird things when two players appear on two different pedestals.

This is only regarded if instance_mode is set correctly.

Default value: "AvatarCustomization,Personal,Nexus,BahroCave,BahroCave02,LiveBahroCaves,DniCityX2Finale,Cleft,Kadish,Gira,Garrison,Garden,Teledahn,Ercana,Minkata,Jalak"
Context: Tracking, Vault, Game
Versions: All

private_mask

The network mask of the below network address.

The value must be a valid 4 number doted address.

Default value: 255.255.255.0
Context: All
Versions: All

private_network

If your server has two different IP addresses, or is behind a NAT, you need to specify the address of your local network. This address is used to determine when a connection is inside or outside of your local network, and depending of the decision the server will announce a different connection speed.

The value must be a valid 4 number doted address.

Default value: 172.26.0.0
Context: All
Versions: All

public_address

The address that will be announced to the clients to connect to your game servers. This is your public IP address, the one used to access your server. If you have a dynamic ip address, it is suggested to set a domain address such as the ones offered by No-IP or DynDNS

The value can be a hostname, or an ip address.

Default value: bind address
Context: All
Versions: All

read_config

Read another configuration file for more options, you can for example split the configuration file in several tiny files.
Remember the override rule.

sdl

Sets the path where all the SDL files are stored.

Default value: None (must be set)
Context: Game
Versions: All

spawn.start

Sets the firts port of the port range where the lobby server will be allowed to spawn game servers.

Default value: 5001
Context: Lobby, Game
Versions: All (broken on some old versions)

spawn.stop

Sets the last port of the port range where the lobby server will be allowed to spawn game servers.

Default value: 6000
Context: Lobby, Game
Versions: All (broken on some old versions)

These options are useful if you want to run several shards on the same IP address, or if you need to share the same IP with plasma. The only problem is that there isn't yet any client that allows you to connect to a lobby server running on a port different to the 5000.

stop

If this value is set the server will not start up.

Default value: 0
Context: All
Versions: unet3/unet3+

system.segfault_handler

If this value is set, the server will install a handler for the evil signal SIGSEGV aka "segmentation fault", and also know as the worst enemy that Almlys (and every other developer) has.

This handler is used to generate crash reports.

Default value: 1
Context: All
Versions: unet3+

track.html

Enables the player list output in HTML format.

Default value: 0
Context: Tracking
Versions: unet3/unet3+

track.html.path

Sets the path for the track.html file.

Default value: None (must be set for the page to work)
Context: Tracking
Versions: unet3/unet3+

track.htmldbg

Enables the player list output in HTML format with debug information (like the list of running game servers and the GUID the player is in).

Default value: 0
Context: Tracking
Versions: unet3/unet3+

track.htmldbg.path

Sets the path for the track.htmldbg file.

Default value: None (must be set for the page to work)
Context: Tracking
Versions: unet3/unet3+

track.xml

Enables the UruVision compatible xml output.

Default value: 0
Context: Tracking
Versions: unet3/unet3+

track.xml.path

Sets the path for the track.xml file.

Default value: None (must be set for the page to work)
Context: Tracking
Versions: unet3/unet3+

tracking

Sets the tracking server address. This option is usually overwritten by the bind option set in the tracking section, which should be set to "localhost".

Default value: None
Context: Lobby, Game
Versions: unet3/unet3+

tracking.log

When enabled, the tracking server keeps a logfile about players going offline and online as well game server being requested, spawned and going down.

Default value: 1
Context: Tracking
Versions: unet3+

tracking.port

Sets the tracking server port. This option is usually overwritten by the port option set in the tracking section, which should be set to "2010".

Default value: None
Context: Lobby, Game
Versions: unet3/unet3+

vault

Sets the vault server address. This option is usually overwritten by the bind option set in the vault section, which should be set to "localhost".

Default value: None
Context: Lobby, Game
Versions: unet3/unet3+

vault.clean

Performs a clean-up on the vault database (removes invalid and unreachable nodes). This can only be set via command line ("-clean"), and the server will immediately exit after having done the clean-up.

Default value: 0
Context: Vault
Versions: unet3+

vault.clean.ages

If this is set to 1, a vault clean-up will also removed ages which are no longer referenced anywhere. While this will remove a lot of ages from deleted players, I can't assure it won't delete some global instances, too, so please use it with care!

Default value: 0
Context: Vault
Versions: unet3+

vault.hood.desc

Sets the default hood description.

Default value: "This is a hood on an Alcugs server"
Context: Vault
Versions: All

vault.hood.name

Sets the default hood name.

Default value: "Alcugs hood"
Context: Vault
Versions: All

vault.maxplayers

Specifies the maximum number of avatars a normal user can have. Accounts with an access level of 7 or lower (CCR) can have an infinite amount of players.

Default value: 5
Context: Vault
Versions: unet3/unet3+

vault.port

Sets the vault server port. This option is usually overwritten by the port option set in the vault section, which should be set to "2010".

Default value: None
Context: Lobby, Game
Versions: unet3/unet3+

vault.html.log

When enabled, the vault-subsystem will keep an HTML logfile containing incoming and outgoing vault messages. Disabling it will increase server performance, but make debugging vault problems almost impossible. I recommend to enable it and set vault.html.log.short to 0.

Default value: 1
Context: Lobby, Game, Vault
Versions: unet3/unet3+

vault.html.log.short

If vault.html.log is enabled, this variable controls whether the vault log should be kept short by leaving out some details (which will save about 75% of the needed disk space and drastically increase server performance) or whether everything should be logged and the binaty part of the nodes should be dumped to disk.

Default value: 1
Context: Lobby, Game, Vault
Versions: unet3/unet3+

vault.tmp.hacks.linkrules

Workaround for non-working linking rules for Myst, Ahnonay and Kveer.

Default value: 0
Context: Vault
Versions: unet3/unet3+

vault.wipe.msg

Sets the content of the global KI message which will be created when a enw vault is initialized (this doesn't change anything for already existing vaults).

Default value:
Shorah b'shehmtee, this Shard is running the Alcugs server software.
Thanks for your support!
Welcome to the new adventure, feel free to explore Er'cana or any other age. Be careful if you see new books, some explorers have found some Kortee'nea and other ancient technology in a secret room in Kirel DRC neighborhood, and they are starting to learn the art of writting.
Context: All
Versions: unet3/unet3+

vault.wipe.msg.title

Sets the title of the global KI message which will be created when a enw vault is initialized (this doesn't change anything for already existing vaults).

Default value:"Shorah b'shehmtee"
Context: All
Versions: unet3/unet3+

verbose_level

Sets the logging/verbose level (you can also set it as parameter [-v n])
Allowed values:
3-> print all messages to the stdout (default)
2-> print only informative and error messages
1-> print only error messages
0-> total silence, perfect for daemon mode

Default value: 3
Context: All
Versions: All

website

Sets the displayed website, when the user logs into your shard.

Default value: None
Context: All
Versions: All

Personal tools