Configuration

Overview

ScrollingMenuSign uses a config file in the plugin data directory: plugins/ScrollingMenuSign/config.yml. This is a YAML file and can be edited directly if you want. If you do edit it while the server is running, it's strongly recommended to reload your changes immediately with /sms reload - any server reload/restart or /sms setcfg command will cause unreloaded changes to be overwritten.

If config.yml doesn't exist when the plugin starts up, a default one will be written (see below for list of defaults).

Managing Config

To view or change configuration settings from within the game, you can use /sms getcfg and /sms setcfg (either from the Minecraft client or the CraftBukkit console). These can be shortened to /sms get and /sms set. Tab completion is also supported, e.g. you can type /sms get actions.<Tab> and the plugin will give you a choice of the possible config items starting with actions. .

Example:

/sms get
-------|18 lines (page 1/1)|----------
sms.actions.leftclick.normal = execute
sms.actions.leftclick.sneak = none
....
--------------------------------------

To update a setting, use /sms set <key> <value>. Example:

/sms set actions.leftclick.sneak execute

Configuration Reference

SettingTypeDescriptionDefault
actions.leftclick.normalactionaction to take if a view is left-clicked while not sneakingexecute
actions.leftclick.sneakactionaction to take if a view is left-clicked while sneakingnone
actions.rightclick.normalactionaction to take if a view is right-clicked while not sneakingscrolldown
actions.rightclick.sneakactionaction to take if a v is right-clicked while sneakingscrollup
actions.wheeldown.normalactionaction to take if mouse wheel is rotated down while targetting a sign and not sneakingnone
actions.wheeldown.sneakactionaction to take if mouse wheel is rotated down while targetting a sign and sneakingscrolldown
actions.wheelup.normalactionaction to take if mouse wheel is rotated up while targetting a sign and not sneakingnone
actions.wheelup.sneakactionaction to take if mouse wheel is rotated up while targetting a sign and sneakingscrollup
actions.spout.downspout key(Spout only) key to scroll the view downDown
actions.spout.executespout key(Spout only) key to execute the selected itemReturn
actions.spout.downspout key(Spout only) key to scroll the view upUp
autocreate_viewsbooleanif this is set to false, ScrollingMenuSign will not try to add an initial sign/map view to new menus if /sms create ... is used and the player is looking at a sign or holding a maptrue
coloured_consolebooleanif this is true, SMS command output to the console will be coloured - disable if your console doesn't have good ANSI colour support or you just don't like coloured console messagestrue
command_log_filestringif this is set to any valid filename, all commands will be logged to this file - if empty, logging will be to the Bukkit console(empty)
elevation.grant_opbooleanif true, temporarily give op status to players while executing elevated commands; you should not need to set this to true under normal circumstances; only if you need to work with plugins with poor or missing superperms supportfalse
elevation.nodesstring listlist of permission nodes to temporarily give to players while executing elevated commands - see List Values for more informationblank for a new install, or initialised from whatever permission nodes the old &SMS (elevation_user) user had for upgrades from 0.7.x or older
inv_view.default_iconstringthe material name for the default icon shown in the inventory viewstone
item_justifystringjustification of all menu items - can be either left, right, or centerleft
item_prefix.selectedstringstring to prefix the selected line (line 3 on signs, line 1 on maps)'> '
item_prefix.notselectedstringstring to prefix the non-selected lines (lines 2 & 4 on signs, all lines except line 1 on maps)' ' (2 spaces)
log_commandsbooleanwhen true, all commands that run from a menu are logged along with the player who ran them - see also command_log_filefalse
log_levelstringthe log verbosity level; use "fine", "finer" or "finest" for increasingly verbose log messages in the server loginfo
maps.backgroundintegerDefault background fill colour for new map views; see http://minecraft.gamepedia.com/Map_Item_Format for a full list of colour values.9
maps.fontstringJava font name for the default map view font (use /sms font to list all font names)SansSerif
maps.fontsizestringfont size for the default map view font9
maps.show_tooltipsbooleanif true, draw a tooltip on the map for any selected menu item with a tooltip defined.true
maps.transfer.from_signbooleanallow transfer of sign views to map views by hitting an active sign view with a map.true
maps.transfer.to_signbooleanallow transfer of map views to sign views by hitting a sign with an active map view.true
max_title_linesintegerthe maximum number of lines that a menu title may occupy on views - this can be overridden in individual views with the max_title_lines view attribute1
no_explosionsbooleanwhen to true, any explosions (TNT/creeper) that would destroy a view will leave the view untouched (see also Sign Protection below)false
no_physicsbooleanwhen to true, any physics events (e.g. the block a menu sign is attached to being destroyed) are cancelled, potentially leaving a floating sign (see also Sign Protection below)false
no_destroy_signsbooleanwhen true, signs will be indestructible by normal means (see also Sign Protection below)true
pager.linesintegerThe page size of the output pager for large blocks of text (e.g. /sms list output). When 0, paging is disabled (the mouse wheel can be used to scroll back when the chat window is open)0
resource_base_urlstringthe base URL under which any resources (image files etc.) loaded by ScrollingMenuSign can be found - currently used for background images in map views and texture images for Spout views(empty)
scroll_typestringthe default for how scrollable views scroll when there are more items than the view can show - the default "scroll" keeps the selection cursor in one place and scrolls the view around it, while "page" allows the selection cursor to move and flips the view to the next/previous page when necessaryscroll
spout.double_clickbooleanwhen true, entries in the Spout view list widget popup must be double-clicked to execute - if false, a single-click is sufficientfalse
spout.list_alphafloatdefault alpha (transparency) for Spout views which don't set their own alpha attribute0.5
spout.list_backgroundhex colordefault background colour for Spout views which don't set their own background attributeccc072 (a beige colour, similar to maps)
spout.show_command_textbooleanwhen true, menu items in the Spout view list widget will also show the command to be run (only to players with the scrollingmenusign.commands.show permission)false
submenus.title_prefixstringThis is prepended to the menu title if the menu show by this view is a submenu'->'
submenus.back_item.labelstringItem label for the faked submenu item to go back to the previous menu.'&l<-BACK'
submenus.back_item.materialstringItem material (icon) for the faked submenu item to go back to the previous menu.wooden_door

Valid actions for configuration keys under actions.* are:

  • none - as name suggests, do nothing
  • execute - execute the currently selected menu item
  • scrollup - scroll the menu up
  • scrolldown - scroll the menu down

Prefix strings for item_prefix.* can include colour codes, but be aware that this will further reduce the number of displayable characters on a menu item.

Sign Protection

Having menu signs destroyed can be an irritation, so ScrollingMenuSign offers a couple of configuration items to mitigate this.

no_physics
If this is true, then any physics events relating to a menu sign will be cancelled. To see the effect of this, create a sign and add it to a menu. Then destroy the wall the sign is attached to (or the floor it's on if it's a floor sign). With no_physics set to true, the sign will be left floating in mid-air, with the menu still usable. With no_physics set to false, the sign will "pop off", and be quietly removed from the menu it belonged to.
no_explosions
If this is true, then any explosions (creeper or TNT) that would have broken a view block (sign or redstone view) will leave that block intact (surrounding blocks can still be destroyed, though). Damage to entities from the explosion will not be cancelled (so no standing beside signs to avoid death by creeper!). If set to false, the sign may be destroyed, but will not be removed from its menu. In this case, running /sms list will show missing signs (such locations will be suffixed with [NO SIGN]). You can then either rebuild and replace the sign in the right location, or cleanly remove the sign with /sms break -loc <x,y,z,world> - this is best done from the console, where the location can be cut & pasted.
no_destroy_signs
If this is true, it will be impossible to destroy any menu signs by normal means. This is mainly for the benefit of creative mode in Minecraft 1.8+, where a single click destroys blocks - it's annoying to accidentally destroy a menu sign you're trying to use. To destroy such a sign, first use /sms break on it to remove it from its menu, and then destroy it as normal. (This does not - and cannot - protect against "special" means, such as the super pickaxe in WorldEdit).

List Values

Some keys in the configuration hold list values. These can store multiple items. E.g. elevation.nodes stores a list of permission nodes to add to a user when running elevated commands.

To add an item to a node, just use /sms setcfg <key> <value> as normal. E.g.

/sms setcfg elevation.nodes abc.def
elevation.nodes is now set to "[general.give.any, general.give, abc.def, general.time.set]"

"abc.def" was added to the existing list.

To remove an item, put a '-' in front of the list:

/sms setcfg elevation.nodes - abc.def
elevation.nodes is now set to "[general.give.any, general.give, general.time.set]"

To set the item to a new list, put an '=' in front of the list:

/sms setcfg elevation.nodes = abc.def ghi.jkl
elevation.nodes is now set to "[abc.def, ghi.jkl]"

You can clear the list entirely with /sms setcfg elevation.nodes =

/sms setcfg elevation.nodes =
elevation.nodes is now set to "[]"

Comments

Posts Quoted:
Reply
Clear All Quotes