Server options: Difference between revisions

From Graal Bible
No edit summary
No edit summary
 
(87 intermediate revisions by 26 users not shown)
Line 1: Line 1:
=== Description ===
[[Category:Administration]]
The '''server options''' are a collection of key=value configuration options that allow you to customize the non-[[GScript|script]]able behaviour of an individual [[Playerworld]].
The '''server options''' are a collection of key=value configuration options that allow you to customize the non-[[GScript|script]]able behaviour of an individual [[Playerworld]].
== Usage ==
Options are usually set only by high [[Playerworld]] staff, preferably only the [[Playerworld]] owner, as they are very powerful and can be abused easily.


When you omit an option, its value will not be changed if the option has been used before. Therefore, it is more secure to change only the value and not whole option, should you need to change something.
When you omit an option, its value will not be changed if the option has been used before. Therefore, it is more secure to change only the value and not whole option, should you need to change something.
Line 6: Line 10:
Lines beginning with # are not parsed, and can be used for comments.
Lines beginning with # are not parsed, and can be used for comments.


Here are the known configuration options.
A full list of server options commands can be found [http://forums.graalonline.com/forums/showthread.php?t=134269912 here].
----
 
=== - Start location ===
== Known Server Options ==
startlevel=level name
 
startx=number
Please add new options if you discover them.
starty=number
 
=== Start location ===
  startlevel=level name
  startx=number
  starty=number
 
This sets the originating location for all [[Player]]s which do not have location statistics of their own saved [[Local|locally]].
 
=== Unstick me location ===
  unstickmelevel=level name
  unstickmex=number
  unstickmey=number
 
These define the position that a [[Player]] is warped to after using the [[Unstick me]] command.
 
=== Unstick Time ===
  unstickmetime=number
 
This option sets the amount of time a player has to be idle before they can use the unstick me command.
 
=== Protected Weapons ===
  protectedweapons=list of comma seperated weapon names
 
[[NPC weapon]]s that cannot be deleted by the [[Player]]. This differs from weapons with asterisk prefixed name which cannot be deleted with the Del key, but still can be deleted on the [[Clientside]] using the [[Old GScript:destroy|destroy]] command. `Protected' weapons can (unless *ified) be deleted with Del, but the NPC server will not remove them from the player's weapon list and thus the [[Serverside]] part will remain and the player obtains them again on the next connect.
 
=== Jail Levels ===
  jaillevels=level names comma separated
 
Non-[[Playerworld staff|staff]] players in these levels will not be able to leave them. A [[Serverside]] [[Old GScript:setlevel2|setlevel2]] or warping with [[RC]] is neccessary. Also, they can send [[PM]]s only to RC clients and not regular [[Client]]s.
, ,
 
=== Explosion Restriction ===
  noexplosions=true/false
 
Disables the result of [[Old GScript:putexplosion|putexplosion]], and `explosive' [[NPC weapons]].
 
=== Statistic Restriction ===
  setbodyallowed=true/false
  setheadallowed=true/false
  setbomyallowed=true/false
  setswordallowed=true/false
  setshieldallowed=true/false
 
Whether the chat commands to change the player's [[Appearance commands|appearance]] are enabled. Defaults to true.
 
=== Gralat Loss Options ===
  mindeathgralats=number
  maxdeathgralats=number
 
Defines the amount of [[Gralat]]s that the player drops on death.
 
=== Staff Gralat Restriction ===
  normaladminscanchangegralats=true/false
 
Whether normal [[RC]]s can change the gralat count of a player. `Normal' used to be defined as `below [[Adminlevel]] 4', but nowadays is probably regulated by certain high-level [[Admin right]]s.
 
=== Local 'Staff Guilds' ===
  staffguilds=comma seperated list of guild names
 
Matches to these [[Guild]] names appear in the `Staff' section of the playerlist.
 
=== `Bush' Items ===
  bushitems=true/false


This sets the originating location for all players which do not have location statistics of their own saved on the server.
Selects whether [[Bush]]es contain [[Item]]s. May not work on a [[GMap]].
----
=== - Unstick me location ===
unstickmelevel=level name
unstickmex=number
unstickmey=number


These define the position that a player is warped to after using the `unstick me' command.
=== `Baddy' Items ===
----
  baddyitems=true/false
=== - Protected Weapons ===
protectedweapons=list of comma seperated weapon names


Weapons that cannot be deleted by the player. This differs from weapons prefixed with * by that these weapons cannot be deleted with the Del key, but still can be deleted on the clientside using the destroy command. `Protected' weapons can (unless *ified) be deleted with Del, but the server will not remove them from the player's weapon list and thus the serverside will remain and the player obtains them again on the next connect.
Selects whether [[Baddy|baddies]] drop [[Item]]s once killed.
----
=== - Jail Levels ===
jaillevels=level names comma separated


Non-staff players in these levels will not be able to leave them. A serverside setlevel2 or warping with RC is neccessary. Also, they can send PMs only to RC clients and not regular clients.
=== `Healing' Swords ===
----
  healswords=true/false
=== - Explosion Restriction ===
noexplosions=true/false


Disables the result of putexplosion, and `explosive' weapons.
Selects whether is possible to have a negative [[Sword]] power and thus add [[Heart]]s to those hit by the sword.
----
=== - Statistic Restriction ===
setbodyallowed=true/false
setheadallowed=true/false
setbomyallowed=true/false
setswordallowed=true/false
setshieldallowed=true/false


Whether the chat commands to change the player's appearance are enabled. Defaults to true.
=== Non-script timeouts ===
----
  respawntime=number
=== - Gralat Loss Options ===
  horselifetime=number
mindeathgralats=number
  baddyrespawntime=number
maxdeathgralats=number


Defines the amount of gralats that the player drops on death.
Timeout in seconds for respawn times for [[Bush]]es, [[Horse]]s and [[Baddy|Baddies]]
----
=== - Staff Gralat Restriction ===
normaladminscanchangegralats=true/false


Whether normal RCs can change the gralat count of a player.
=== Server Scripting Flags ===
----
  dontaddserverflags=true/false
=== - Local 'Staff Guilds' ===
staffguilds=comma seperated list of guild names


Matches to these guild names appear in the `Staff' section of the playerlist (Graal 2.xx client only)
Selects whether [[GScript|scripts]] can add new [[Server flag]]s or only modify existing ones.
----
=== - `Bush' Items ===
bushitems=true/false


Selects whether bushes contain items. May not work on a GMAP.
=== Server Maps ===
----
  bigmap=maptext,mapimage,defaultx,defaulty
=== - `Baddy' Items ===
  minimap=maptext,mapimage,defaultx,defaulty
baddyitems=true/false


Selects whether baddies drop items once killed.
Default serverwide [[Map]]s. Syntax resembles [[Old GScript:setmap|setmap]] and [[Old GScript:setminimap|setminimap]] [[GScript]] commands.
----
=== - `Healing' Swords ===
healswords=true/false


Selects whether is possible to have a negative sword power and thus add hearts to those hit with it.
=== Warping (All Players) ===
----
  warptoforall=true/false
=== - Non-script timeouts ===
  warptoforlowadmins=true/false
respawntime=number
horselifetime=number
baddyrespawntime=number


Timeout in seconds for respawn times.
Whether all [[Player]]s can use the [[Warpto]] command, and whether [[Global]] [[Admin level]] 1 allows warpto.
----
=== - Server Scripting Flags ===
dontaddserverflags=true/false


Selects whether scripts can add new server flags or only modify existing ones.
=== Warping Activation ===
----
  warpto=false/true
=== - Server Maps ===
  ignorewarpto=true/false
bigmap=maptext,mapimage,defaultx,defaulty
minimap=maptext,mapimage,defaultx,defaulty


Default serverwide maps. Syntax resembles setmap and setminimap [[Gscript]] commands.
Allows or disallows the default [[Warpto]] command for all [[staff]], including [[Global]]s. This is normally enabled.
----
=== - Warping (All Players) ===
warptoforall=true/false


Whether all players can use the warpto command.
Note that warpto=false will show a "(warping is disabled)" error message to [[Player]], whereas ignorewarpto=true will treat [[Warpto]] commands as just normal chat text and display no error message.
----
=== - Warping (Low Admins) ===
warptoforlowadmins=true/false


Selects whether global admin level 1 allows staff to warp.
The latter is good for replacing the default [[Warpto]] command with a scripted version.
----
=== - Player filtering/Ghost Mode ===
ghostmodeenabled=true/false
ghostmodefornotstaff=true/false


Selects whether all players appear as ghost, or only non-staff players, or nobody.
=== Ghost Mode ===
----
  ghostmodeenabled=true/false
=== - Playerlist Icons ===
  ghostmodefornotstaff=true/false
playerlisticons=comma seperated list of statusses


Possible status list, players can select one of them in the playerlist. There must be a downloadable file plisticonNAME.png available in a folder specified as `file' in folder configuration.
Selects whether all [[Player]]s appear as [[Ghost]], or only non-[[Playerworld staff|staff]] players, or nobody.
----
=== - Profile Variables ===
profilevars=comma seperated list of profile variables


Selects what is to be displayed in a player's profile. The default variables are: playerkills, playerdeaths, playerfullhearts, playerrating, playerap, playerrupees, playerswordpower, canspin. Your own string variables can be added in the format `name=stringname'. If name is not specified, stringname is used.
=== Playerlist Icons ===
----
  playerlisticons=comma seperated list of statusses
=== - Starting AP ===
startap=number


How much AP players start with.
Possible status list, [[Player]]s can select one of them in the [[Players list]]. There must be a [[Downloadable]] file plisticonNAME.png available in a folder specified as `file' in [[Folder configuration]].
----
=== - Trial Account Limits ===
limitfreeplayers2=true/false


Selects whether to disable adding of bombs, arrows, and explosions for trial accounts.
=== Profile Variables ===
----
  profilevars=comma seperated list of profile variables
=== - AP System Activation ===
apsystem=true/false


Whether the AP system is enabled. If yes, there are some restrictions for players with low AP regarding hearts.
Selects what is to be displayed in a [[Player]]'s profile. The default variables are: playerkills, playerdeaths, playerfullhearts, playerrating, playerap, playerrupees, playerswordpower, canspin, largely modelled after [[Old GScript]]. Custom string variables can be added in the format `name=stringname'. If name is not specified, stringname is used.
----
=== - Global Guilds Activation ===
globalguilds=true/false


Allows or disallows guilds from the global database. This is normally enabled.
=== Trial Account Limits ===
----
  limitfreeplayers2=true/false
=== - AP Timeouts ===
aptime0=number
aptime1=number
aptime2=number
aptime3=number
aptime4=number


Time (in seconds) it takes to recharge one point of AP when the AP is currently below 20, 40, 60, 80 and 100 respectively. The defaults are 30, 90, 300, 600 and 1200.
Selects whether to disable adding of [[Bomb]]s, [[Arrow]]s, and [[Explosion]]s for [[Trial account]]s.
----
 
=== - Heart/Sword Limits ===
=== AP System Activation ===
heartlimit=number
  apsystem=true/false
swordlimit=number
 
Whether the [[AP]] system is enabled. If yes, there are some restrictions for [[Player]]s with low AP regarding hearts.
 
=== Starting AP ===
  startap=number
 
How much [[AP]] [[Player]]s are given upon first login to this [[Playerworld]].
 
=== Global Guilds Activation ===
  globalguilds=true/false
 
Allows or disallows [[Guild]] from the [[Global]] database. This is normally enabled.
 
  allowedglobalguilds=guild,guild,guild
 
This option limits what guilds can be used from the [[Global Guilds]] database. (Note: globalguilds= needs to be set to false so other guilds besides the allowed can not be used.
 
=== AP Timeouts ===
  aptime0=number
  aptime1=number
  aptime2=number
  aptime3=number
  aptime4=number
 
Time (in seconds) it takes to recharge one point of [[AP]] when the AP is currently below 20, 40, 60, 80 and 100 respectively. The defaults are 30, 90, 300, 600 and 1200.
 
=== Heart/Sword Limits ===
  heartlimit=number
  swordlimit=number


The maximum amount of fullhearts and swordpower that is allowed.
The maximum amount of fullhearts and swordpower that is allowed.
----
=== - 'putnpc' Scripting Command ===
putnpcenabled=true/false


Whether the putnpc command is enabled. (Mostly deprecated)
=== 'putnpc' Scripting Command ===
----
  putnpcenabled=true/false
=== - Translation ===
 
enabletranslations=true/false
Whether the [[Old GScript:putnpc|putnpc]] command is enabled. (Mostly [[Deprecated]])
 
=== Language Selection ===
  translatedlanguages=comma seperated list of language domains, like de,...
 
The languages of which a [[Translation system|translation]] file shall be loaded by the server. If a file exists, signs and _() text will be replaced with values from the translation file for this language. See [[Creation/Dev/Releases/Client/5.006#Translation_System|Graal v5 release notes]] for more.
 
=== Server Language ===
  serverlanguage=language domain
 
The default [[Translation system|language]] of the [[Playerworld]]. Defaults to English.
 
=== Default Language ===
  defaultlanguage=language domain
 
The default [[Translation system|language]] of the [[Playerworld]]. Defaults to English. Players see text in this language if their language is not in ''translatedlanguages''.
 
=== NPC-Server 'Sleep' ===
  sleepwhennoplayers=true/false
 
Whether the [[NPC Server]] must execute [[GScript|scripts]] even when no [[Player]] is around.
 
=== Tilesets ===
  newtilesets=true/false
  newtilesetlevels=comma seperated list of levels
 
Whether all [[level]]s will use the new [[tileset]] layout, or a match list of levels that shall. This will influence collision behavior (onwall script function, serverside [[Creation/Dev/Script/Client/TProjectile|projectile]] hit detection, etc.) on server-side only.
 
You can specify just the start of the level name if you want to include a lot of levels at once (newtilesetlevels=myquest will switch on new tileset onwall behavior on server-side for myquest1.nw, myquest2.nw etc.).
 
=== Staff ===
  staff=comma separated list of account names or community names
 
The [[Account]]s in this list will count as [[Playerworld staff]] as if their admin level was > 0. Their [[PM|mass messages]] override the option to ignore mass messages, their [[Admin rights]] will be applied, and if their [[IP address range]] matches their actual IP address, they may log in to [[RC]]. The ip-range will automatically be set to match their current ip / computer id once they login for the first time.
 
=== GMAP List ===
  gmaps=comma seperated list of gmap files, without .gmap extension
 
The  server will attempt to load these as [[GMap]]s. As this line might get rather crowded, it is possible to have multiple gmaps= lines.
 
=== Weapon Order ===
  weaponorder=comma seperated list of weapon names
 
Specifies the order in which the [[NPC weapon]] [[GScript|scripts]] will be sent to the [[Clientside|client]] upon connection. This can be used to ensure that the inventory script that disables the [[Q menu]] will be sent first, for example. First, all weapons in this list will be sent in order, then all unlisted weapons.
 
=== NPC-Control Rights ===
  npcrights=true/false
 
Whether [[NC rights]] are active. For security reasons, it is strongly recommended to set this to true.
 
=== Kill Count ===
  dontchangekills=true/false
 
Selects whether the variables 'playerkills' and 'playerdeaths' can be changed [[serverside]] via [[GScript]].
 
=== NPC-Server Nickname ===
  nickname=string
 
The [[NPC Server]] will use this as its [[Nick name]], with (Server) appended. Ignores all [[Guild]] tags.
 
=== Speedhack Tolerance ===
  speedhacktolerance=number
 
This gives the percentage of data packages that [[Clientside|clients]] may send above the expected over without being logged as [[Trainer users]]. On [[Graal Kingdoms]], the rather conservative setting of 90 is used. If you set this too low, your server will crash.
 
=== Idle Disconnect ===
  disconnectifnotmoved=true/false
 
Selects whether [[Idle]] [[Player]]s are automatically disconnected. (Possibly deprecated).
 
=== Save Levels ===
  savelevels=true/false
 
Setting this to true allows changes to the [[Tile]]s of [[Level]]s to be saved to the actual level files from [[GScript|scripting]] commands, so it is possible to persistently change the levels.
 
  savelevelsmessage=true/false
 
Specifies if saving of levels should be reported on the RC chat (by default enabled).
 
=== Only Staff ===
  onlystaff=false
 
=== Log script function calls ===
  scriptlogfunctions=write player.nick,write player.guild,call sendtonc,call sendtorc
 
This lets the npcserver log script activity into logs/scriptfunctionslog.txt. You
can get a list of available functons / actions by typing ''/listscriptlogfunctions''
on RC chat. Currently only important or exploitable things can be logged. Keep care
to delete the logs from time to time.
 
=== Log script errors to file ===
  logscripterrorstofile=true/false
 
When enabled, all script errors (e.g. missing server-side script functions) will be logged into logs/scripterrors.txt instead of RC chat.
 
=== Level Auto-Save ===
  levelsautosave=true/false
Whether or not updateboard2 changes are saved to the level file automatically (by default true). Works only if 'savelevels' is enabled as well.
 
=== Sending Player Attributes ===
  sendtoallattr=comma seperated list of attribute numbers
Specifies which player attributes (#P/player.attr[]) are to be sent to all players on the server (instead of only to people who see you).
*Set the server options sendtoallattr=1,2,3 for sending attributes 1, 2 and 3 to all players.
*When #P1/attr[1] is changing then it is also invoking the event onPlayerChanges(player,id) like when the head is changing.
 
=== Optimized NPC Storage ===
  newnpcstorage=true/false
Whether or not to use the optimized storage for NPCs placed via putnpc2.
If this option is set, NPCs with this.savelocally = true; will use the optimized NPC storage.  This is recommended for NPCs that do not need to be loaded when the server is started up or do not need to be sitting in memory all of the time.


Selects whether the translation system is enabled. If yes, signs and text in scripts in #U(text goes here) form will be saved in a text file where they can be translated into different languages. The files are to be found in the translations/ folder on RC.
=== DBNPCs Protection ===
----
  protectdbnpcs=true/false
=== - Language Selection ===
Whether or not NPCs displayed in the NPC list in RC should be protected from being destroy()ed. Default is "true". This option has been added because they were previously not protected and some servers might prefer to be able to destroy them by script. This option doesn't affect NPCs created with the script command putnpc2() which are are still destroy()able.
translatedlanguages=comma seperated list of languages, like Deutsch,...


The languages of which a translation file shall be loaded by the server. If a file exists, signs and #U() text will be replaced with values from this file.
=== Send NPC output to RCs ===
----
  sendechotorc=true/false
=== - Server Language ===
Sends output of NPCs (echo() command) to everyone instead of only to people with NPC rights.
serverlanguage=language name


The default language of the server. Defaults to English.
=== SQLite Databases ===
----
  database=dbname,dbfile[,dbname2,dbfile2[,etc.]]
=== - NPC-Server 'Sleep' ===
Allows several SQLite database files to be opened or closed with specified names and filenames for use the the requestsql2 function.
sleepwhennoplayers=true/false
Source: http://forums.graalonline.com/forums/showpost.php?p=1557272&postcount=17


Whether the NPC server must execute scripts even when no player is around.
=== Player Syncing ===
----
  syncdistancex=number
=== - Tilesets ===
  syncdistancey=number
newtilesets=true/false
  syncbydistanceinside=true/false
newtilesetlevels=comma seperated list of levels
Define the radius (in tiles) at which players are synced to the screen. This is used for GMAPs to reduce players from being drawn outside of the specified radius. By default, it is being drawn at 192x192.


Whether all levels will use the new tileset layout, or a match list of levels that shall. (Mostly deprecated)
=== Default Logging ===
----
  disablegralatlog=true/false
=== - Staff ===
Toggles whether or not the default gralat log will be used when a player picks up a gralat on the server.
staff=comma seperated list of account names


The accounts in this list will count as staff as if their admin level was > 0. Their mass messages override the option to ignore mass messages, their admin rights will be applied, and if the IP address range matches their actual IP, they may log in to RC.
=== Player Z Axis ===
----
  lockplayerz=true/false
=== - GMAP List ===
Disables player's z-axis on the server. Locks player.z to undefined and does not allow any type of alteration. Any value of z outside of |-50, 170| is considered undefined.
gmaps=comma seperated list of gmap files, without .gmap extension


The server will attempt to load these as gmaps. As this line might get rather crowded, it is possible to have multiple gmaps= lines.
=== Hideplayer ===
----
  nohidewithoutbush=true/false
=== - Weapon Order ===
Script command hideplayer(float) will no longer be working unless the player is under a bush.
weaponorder=comma seperated list of weapon names


Specifies the order in which the weapon scripts will be sent to the client upon connection. This can be used to ensure that the inventory script that disables the Q menu will be sent first for example. First, all weapons in this list will be sent in order, then all unlisted weapons.
=== Player Triggers ===
----
  sendplayertriggers=true/false
=== - NPC-Control Rights ===
Prevents triggeraction from triggering other players. By default on server triggers and mouse clicks, they are being processed by the server first, otherwise being processed by the player.
npcrights=true/false


If set to false, anybody with NC may add, edit or remove any NPC. If set to true, the RC needs folder rights to the NPCs in the NPC-Control, i.e. CLASSES/classname, WEAPONS/weaponname, NPCS/npcname to access each type of script respectively. Wildcards may be used. Note that if you use a slash in a weapon name to make a weapon appear inside a bag when used with the default Q menu, you will need seperate rights for it: rw WEAPONS/* will not let you edit a weapon called Minigames/Ballbounce, for example.
=== Item Drops ===
----
  bushitemtypes=list
=== - Kill Count ===
  deathitemtypes=list
dontchangekills=true/false
Examples for list are (greenrupee,bluerupee,goldrupee,darts,bombs,heart,etc).
These will define which items will be dropped from the specified event.  
  itemdropevents=true/false
When itemdropevents is enabled, each time an item is dropped (like heart, goldrupee, etc) it will send the event to Control-NPC as onItemDrop(level,x,y,itemname).


Selects whether the player's kill count is changed for each kill.
=== Item Spawn Percentages ===
----
  spawnrategreenrupee=number
=== - NPC-Server Nickname ===
  spawnratebluerupee=number
nickname=string
  spawnrategoldrupee=number
  spawnrateheart=number
  spawnratebombs=number
  spawnratedarts=number
  spawnrate...=number
The value of these options are from 0 to 100, being a percentage at which the specified item will drop from a bush or death.


The NPC Server will use this as its nick name, with (Server) appended. Ignores all guild tags.
=== Horses ===
----
  puthorseenabled=true/false
=== - Speedhack Tolerance ===
This option allows or pevents script command puthorse() from being executed on the server.
speedhacktolerance=number


This gives the percentage of data packages that clients may send above the expected over without being logged as trainer users. On Kingdoms, the rather conservative setting of 90 is used. "If you set this too low, your server will die."
=== RC Mass PM ===
----
  rcofftagoverridesignore=true/false
=== - Idle Disconnect ===
this option allows or prevents RC-Masses to override "ignore masses" when the Admin sending the Mass from RC is off-Staff Tag
disconnectifnotmoved=true/false


Selects whether idle players are automatically disconnected. (Possibly deprecated).
=== Putbomb Filter ===
----
  putbombenabled=true/false
=== - Save Levels ===
  bomballowedtypes=all or comma separated text of bomb power (e.g. 1,2,3)
savelevels=true/false
  bombfilterlog=true/false - logs to logs/bombfilter.txt


Setting this to true allows changes to the tiles of levels to be saved to the actual level files from scripting commands, so it is possible to persistently change the levels. Currently, this does not work with gmaps.
=== Showimg/Ani Filter ===
  showimgstypes=all or ani,img,text
  showimgsallowedganis=all or comma separated ganis (e.g. idle,walk,sit)
  showimgsallowedimages=all or comma separated images (e.g. block.png,block2.png)
  showimgsfilterlog=true - logs to logs/showimgsfilter.txt

Latest revision as of 09:56, 25 March 2015

The server options are a collection of key=value configuration options that allow you to customize the non-scriptable behaviour of an individual Playerworld.

Usage

Options are usually set only by high Playerworld staff, preferably only the Playerworld owner, as they are very powerful and can be abused easily.

When you omit an option, its value will not be changed if the option has been used before. Therefore, it is more secure to change only the value and not whole option, should you need to change something.

Lines beginning with # are not parsed, and can be used for comments.

A full list of server options commands can be found here.

Known Server Options

Please add new options if you discover them.

Start location

 startlevel=level name
 startx=number
 starty=number

This sets the originating location for all Players which do not have location statistics of their own saved locally.

Unstick me location

 unstickmelevel=level name
 unstickmex=number
 unstickmey=number

These define the position that a Player is warped to after using the Unstick me command.

Unstick Time

 unstickmetime=number

This option sets the amount of time a player has to be idle before they can use the unstick me command.

Protected Weapons

 protectedweapons=list of comma seperated weapon names

NPC weapons that cannot be deleted by the Player. This differs from weapons with asterisk prefixed name which cannot be deleted with the Del key, but still can be deleted on the Clientside using the destroy command. `Protected' weapons can (unless *ified) be deleted with Del, but the NPC server will not remove them from the player's weapon list and thus the Serverside part will remain and the player obtains them again on the next connect.

Jail Levels

 jaillevels=level names comma separated

Non-staff players in these levels will not be able to leave them. A Serverside setlevel2 or warping with RC is neccessary. Also, they can send PMs only to RC clients and not regular Clients. , ,

Explosion Restriction

 noexplosions=true/false

Disables the result of putexplosion, and `explosive' NPC weapons.

Statistic Restriction

 setbodyallowed=true/false
 setheadallowed=true/false
 setbomyallowed=true/false
 setswordallowed=true/false
 setshieldallowed=true/false

Whether the chat commands to change the player's appearance are enabled. Defaults to true.

Gralat Loss Options

 mindeathgralats=number
 maxdeathgralats=number

Defines the amount of Gralats that the player drops on death.

Staff Gralat Restriction

 normaladminscanchangegralats=true/false

Whether normal RCs can change the gralat count of a player. `Normal' used to be defined as `below Adminlevel 4', but nowadays is probably regulated by certain high-level Admin rights.

Local 'Staff Guilds'

 staffguilds=comma seperated list of guild names

Matches to these Guild names appear in the `Staff' section of the playerlist.

`Bush' Items

 bushitems=true/false

Selects whether Bushes contain Items. May not work on a GMap.

`Baddy' Items

 baddyitems=true/false

Selects whether baddies drop Items once killed.

`Healing' Swords

 healswords=true/false

Selects whether is possible to have a negative Sword power and thus add Hearts to those hit by the sword.

Non-script timeouts

 respawntime=number
 horselifetime=number
 baddyrespawntime=number

Timeout in seconds for respawn times for Bushes, Horses and Baddies

Server Scripting Flags

 dontaddserverflags=true/false

Selects whether scripts can add new Server flags or only modify existing ones.

Server Maps

 bigmap=maptext,mapimage,defaultx,defaulty
 minimap=maptext,mapimage,defaultx,defaulty

Default serverwide Maps. Syntax resembles setmap and setminimap GScript commands.

Warping (All Players)

 warptoforall=true/false
 warptoforlowadmins=true/false

Whether all Players can use the Warpto command, and whether Global Admin level 1 allows warpto.

Warping Activation

 warpto=false/true
 ignorewarpto=true/false

Allows or disallows the default Warpto command for all staff, including Globals. This is normally enabled.

Note that warpto=false will show a "(warping is disabled)" error message to Player, whereas ignorewarpto=true will treat Warpto commands as just normal chat text and display no error message.

The latter is good for replacing the default Warpto command with a scripted version.

Ghost Mode

 ghostmodeenabled=true/false
 ghostmodefornotstaff=true/false

Selects whether all Players appear as Ghost, or only non-staff players, or nobody.

Playerlist Icons

 playerlisticons=comma seperated list of statusses

Possible status list, Players can select one of them in the Players list. There must be a Downloadable file plisticonNAME.png available in a folder specified as `file' in Folder configuration.

Profile Variables

 profilevars=comma seperated list of profile variables

Selects what is to be displayed in a Player's profile. The default variables are: playerkills, playerdeaths, playerfullhearts, playerrating, playerap, playerrupees, playerswordpower, canspin, largely modelled after Old GScript. Custom string variables can be added in the format `name=stringname'. If name is not specified, stringname is used.

Trial Account Limits

 limitfreeplayers2=true/false

Selects whether to disable adding of Bombs, Arrows, and Explosions for Trial accounts.

AP System Activation

 apsystem=true/false

Whether the AP system is enabled. If yes, there are some restrictions for Players with low AP regarding hearts.

Starting AP

 startap=number

How much AP Players are given upon first login to this Playerworld.

Global Guilds Activation

 globalguilds=true/false

Allows or disallows Guild from the Global database. This is normally enabled.

 allowedglobalguilds=guild,guild,guild

This option limits what guilds can be used from the Global Guilds database. (Note: globalguilds= needs to be set to false so other guilds besides the allowed can not be used.

AP Timeouts

 aptime0=number
 aptime1=number
 aptime2=number
 aptime3=number
 aptime4=number

Time (in seconds) it takes to recharge one point of AP when the AP is currently below 20, 40, 60, 80 and 100 respectively. The defaults are 30, 90, 300, 600 and 1200.

Heart/Sword Limits

 heartlimit=number
 swordlimit=number

The maximum amount of fullhearts and swordpower that is allowed.

'putnpc' Scripting Command

 putnpcenabled=true/false

Whether the putnpc command is enabled. (Mostly Deprecated)

Language Selection

 translatedlanguages=comma seperated list of language domains, like de,...

The languages of which a translation file shall be loaded by the server. If a file exists, signs and _() text will be replaced with values from the translation file for this language. See Graal v5 release notes for more.

Server Language

 serverlanguage=language domain

The default language of the Playerworld. Defaults to English.

Default Language

 defaultlanguage=language domain

The default language of the Playerworld. Defaults to English. Players see text in this language if their language is not in translatedlanguages.

NPC-Server 'Sleep'

 sleepwhennoplayers=true/false

Whether the NPC Server must execute scripts even when no Player is around.

Tilesets

 newtilesets=true/false
 newtilesetlevels=comma seperated list of levels

Whether all levels will use the new tileset layout, or a match list of levels that shall. This will influence collision behavior (onwall script function, serverside projectile hit detection, etc.) on server-side only.

You can specify just the start of the level name if you want to include a lot of levels at once (newtilesetlevels=myquest will switch on new tileset onwall behavior on server-side for myquest1.nw, myquest2.nw etc.).

Staff

 staff=comma separated list of account names or community names

The Accounts in this list will count as Playerworld staff as if their admin level was > 0. Their mass messages override the option to ignore mass messages, their Admin rights will be applied, and if their IP address range matches their actual IP address, they may log in to RC. The ip-range will automatically be set to match their current ip / computer id once they login for the first time.

GMAP List

 gmaps=comma seperated list of gmap files, without .gmap extension

The server will attempt to load these as GMaps. As this line might get rather crowded, it is possible to have multiple gmaps= lines.

Weapon Order

 weaponorder=comma seperated list of weapon names

Specifies the order in which the NPC weapon scripts will be sent to the client upon connection. This can be used to ensure that the inventory script that disables the Q menu will be sent first, for example. First, all weapons in this list will be sent in order, then all unlisted weapons.

NPC-Control Rights

 npcrights=true/false

Whether NC rights are active. For security reasons, it is strongly recommended to set this to true.

Kill Count

 dontchangekills=true/false

Selects whether the variables 'playerkills' and 'playerdeaths' can be changed serverside via GScript.

NPC-Server Nickname

 nickname=string

The NPC Server will use this as its Nick name, with (Server) appended. Ignores all Guild tags.

Speedhack Tolerance

 speedhacktolerance=number

This gives the percentage of data packages that clients may send above the expected over without being logged as Trainer users. On Graal Kingdoms, the rather conservative setting of 90 is used. If you set this too low, your server will crash.

Idle Disconnect

 disconnectifnotmoved=true/false

Selects whether Idle Players are automatically disconnected. (Possibly deprecated).

Save Levels

 savelevels=true/false

Setting this to true allows changes to the Tiles of Levels to be saved to the actual level files from scripting commands, so it is possible to persistently change the levels.

 savelevelsmessage=true/false

Specifies if saving of levels should be reported on the RC chat (by default enabled).

Only Staff

 onlystaff=false

Log script function calls

 scriptlogfunctions=write player.nick,write player.guild,call sendtonc,call sendtorc

This lets the npcserver log script activity into logs/scriptfunctionslog.txt. You can get a list of available functons / actions by typing /listscriptlogfunctions on RC chat. Currently only important or exploitable things can be logged. Keep care to delete the logs from time to time.

Log script errors to file

 logscripterrorstofile=true/false

When enabled, all script errors (e.g. missing server-side script functions) will be logged into logs/scripterrors.txt instead of RC chat.

Level Auto-Save

 levelsautosave=true/false

Whether or not updateboard2 changes are saved to the level file automatically (by default true). Works only if 'savelevels' is enabled as well.

Sending Player Attributes

 sendtoallattr=comma seperated list of attribute numbers

Specifies which player attributes (#P/player.attr[]) are to be sent to all players on the server (instead of only to people who see you).

  • Set the server options sendtoallattr=1,2,3 for sending attributes 1, 2 and 3 to all players.
  • When #P1/attr[1] is changing then it is also invoking the event onPlayerChanges(player,id) like when the head is changing.

Optimized NPC Storage

 newnpcstorage=true/false

Whether or not to use the optimized storage for NPCs placed via putnpc2. If this option is set, NPCs with this.savelocally = true; will use the optimized NPC storage. This is recommended for NPCs that do not need to be loaded when the server is started up or do not need to be sitting in memory all of the time.

DBNPCs Protection

 protectdbnpcs=true/false

Whether or not NPCs displayed in the NPC list in RC should be protected from being destroy()ed. Default is "true". This option has been added because they were previously not protected and some servers might prefer to be able to destroy them by script. This option doesn't affect NPCs created with the script command putnpc2() which are are still destroy()able.

Send NPC output to RCs

 sendechotorc=true/false

Sends output of NPCs (echo() command) to everyone instead of only to people with NPC rights.

SQLite Databases

 database=dbname,dbfile[,dbname2,dbfile2[,etc.]]

Allows several SQLite database files to be opened or closed with specified names and filenames for use the the requestsql2 function. Source: http://forums.graalonline.com/forums/showpost.php?p=1557272&postcount=17

Player Syncing

 syncdistancex=number
 syncdistancey=number
 syncbydistanceinside=true/false

Define the radius (in tiles) at which players are synced to the screen. This is used for GMAPs to reduce players from being drawn outside of the specified radius. By default, it is being drawn at 192x192.

Default Logging

 disablegralatlog=true/false

Toggles whether or not the default gralat log will be used when a player picks up a gralat on the server.

Player Z Axis

 lockplayerz=true/false

Disables player's z-axis on the server. Locks player.z to undefined and does not allow any type of alteration. Any value of z outside of |-50, 170| is considered undefined.

Hideplayer

 nohidewithoutbush=true/false

Script command hideplayer(float) will no longer be working unless the player is under a bush.

Player Triggers

 sendplayertriggers=true/false

Prevents triggeraction from triggering other players. By default on server triggers and mouse clicks, they are being processed by the server first, otherwise being processed by the player.

Item Drops

 bushitemtypes=list
 deathitemtypes=list

Examples for list are (greenrupee,bluerupee,goldrupee,darts,bombs,heart,etc). These will define which items will be dropped from the specified event.

 itemdropevents=true/false

When itemdropevents is enabled, each time an item is dropped (like heart, goldrupee, etc) it will send the event to Control-NPC as onItemDrop(level,x,y,itemname).

Item Spawn Percentages

 spawnrategreenrupee=number
 spawnratebluerupee=number
 spawnrategoldrupee=number
 spawnrateheart=number
 spawnratebombs=number
 spawnratedarts=number
 spawnrate...=number

The value of these options are from 0 to 100, being a percentage at which the specified item will drop from a bush or death.

Horses

 puthorseenabled=true/false

This option allows or pevents script command puthorse() from being executed on the server.

RC Mass PM

 rcofftagoverridesignore=true/false

this option allows or prevents RC-Masses to override "ignore masses" when the Admin sending the Mass from RC is off-Staff Tag

Putbomb Filter

 putbombenabled=true/false
 bomballowedtypes=all or comma separated text of bomb power (e.g. 1,2,3)
 bombfilterlog=true/false - logs to logs/bombfilter.txt

Showimg/Ani Filter

 showimgstypes=all or ani,img,text
 showimgsallowedganis=all or comma separated ganis (e.g. idle,walk,sit)
 showimgsallowedimages=all or comma separated images (e.g. block.png,block2.png)
 showimgsfilterlog=true - logs to logs/showimgsfilter.txt