Character Vault
Any Concept / Any System
Your System Come To Life
Roll20 for Android
Streamlined for your Tablet
Roll20 for iPad
Streamlined for your Tablet

Personal tools

Script:Dice in the Vineyard

From Roll20 Wiki

Revision as of 14:29, 17 June 2020 by Andreas J. (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
API ScriptAuthor: manveti
Version: 0.1
Last Modified: 2015-04-09
Code: DiceInTheVineyard
Dependencies: None
Conflicts: None

Dice in the Vineyard is a dice tracker for Dogs in the Vineyard. It creates poker-chip-styled tokens for each roll and stacks them on the tabletop in areas set aside for each character. During play, players can spend roll tokens, roll in additional tokens, and request chip counts for any character in play.

It is recommended that this script be used in conjunction with the CommandShell module, which will improve output formatting and command discovery.

Using Dice in the Vineyard

Before using Dice in the Vineyard, it is recommended that image URLs be set for each chip value. These can be set in the script in the DEFAULT_URLS dictionary or within the game via the setimage subcommand (described below). For best results, use a PNG with transparency, so that chips will stack appropriately. You may wish to set the CHIP_HEIGHT parameter, which defines the height, in pixels, of the side of the chip (i.e. additional chips will be placed this many pixels above the chip beneath them in order to create a stacking effect). Any chip without a specific image set will use GENERIC_URL and will use a status icon to display its value.

Each character to be tracked must have space allocated on the tabletop for its chips. This can be accomplished via the add subcommand, which will allocate an area starting at the specified square and extending six squares right and four squares down (this can be altered by changing the values of BOX_WIDTH and BOX_HEIGHT, but should always be at least two wide and a multiple of two tall, and should have a total area of at least 24 squares). A 2x2 area in the top left will be reserved for the character token and for chip tokens to be played; ten 1x2 areas will be used for stacking chips of each value 1-10.


!ditv <subcommand> [parameters]


→ ditv subcommand


→ help


→ add string integer integer optional color


→ remove string


→ clear string


→ roll string string


→ count string


→ setimage string string


→ images

optional color

→ ε

optional color

Parameter Values
subcommand The !ditv command provides the following subcommands:
  • help: Display a help message detailing the various commands
  • add: Allocate an area on the tabletop for a character
  • remove: Remove a character and all its chips, and free its space on the tabletop
  • clear: Remove all of a character's chips
  • roll: Roll dice and add the results to a character's chips
  • count: Display a count of a character's chips in global chat
  • setimage: Set the image URL for a specified chip value
  • images: Display a table of all chip images, including the default image which will be substituted in for any chip without a defined image
parameters Some subcommands require additional parameters:
  • add: Requires the new character's name and X and Y coordinates. Coordinates are given in squares, starting at 0 in the top left. This subcommand also accepts an optional COLOR argument, which will be used to border the character's area (default is #FFFF00). If provided, it must be an HTML-style RGB string (e.g. "#60A0FF").
  • remove: Requires the name of the character to be removed.
  • clear: Requires the name of the character whose chips are to be cleared.
  • roll: Requires the name of the character who will receive the chips and a dice specification. The dice specification must consist of one or more groups of like-sized dice (XdY) separated by whitespace or "+".
  • count: Requires the name of the character whose chips are to be counted.
  • setimage: Requires the chip value whose image is to be set. If a URL is passed in as a second argument, it will be used; otherwise, the currently selected token's image will be used.


v0.1 (2015-04-09)

  • Initial release