Server options

From Graal Bible

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


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

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

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

Unstick Time


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


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

Statistic Restriction


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

Gralat Loss Options


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

Staff Gralat Restriction


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


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

`Baddy' Items


Selects whether baddies drop Items once killed.

`Healing' Swords


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

Non-script timeouts


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

Server Scripting Flags


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

Server Maps


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

Warping (All Players)


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

Warping Activation


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


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


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

AP System Activation


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

Starting AP


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

Global Guilds Activation


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


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


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


The maximum amount of fullhearts and swordpower that is allowed.

'putnpc' Scripting Command


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'


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


 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=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.


 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


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

Kill Count


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

NPC-Server Nickname


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

Speedhack Tolerance


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


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

Save Levels


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.


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

Only Staff


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


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


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


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


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


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

SQLite Databases


Allows several SQLite database files to be opened or closed with specified names and filenames for use the the requestsql2 function. Source:

Player Syncing


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


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

Player Z Axis


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.



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

Player Triggers


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


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


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


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.



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

RC Mass PM


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

 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