DtlTraders/patterns

From Citizens Wiki

Overview

Every pattern is saved in the patterns.yml file located in the plugin's main folder. (plugins/DtlCitizensTrader)
You can change the directory in the configuration file.


There are 3 types of patterns:

- Pricing patterns
Sets item prices and pricing tiers.

- Item patterns
Will add certain items to the trader's stock.

By using item patterns you can also set two items in the same slot and each can have a different function. An example of this can be found below.

- Market traders
A special pattern used by market traders. It has a different construction so care has to be taken to set it up properly.


Basics

An example of a basic pricing pattern:

default:

prices: all: multiplier: 1.0 35: 1.5 '35:2': 2.0 sell: 1: 0.33 2: 0.66 3: 0.99 buy: multiplier: 0.9 1: 0.33 2: 0.66 3: 0.99

In the all section you can set item price for both buying and selling. To change the item's value depending on the transaction type you can use the sell and buy sections.

The multiplier is used to quickly change prices. By using this setting you can adjust prices on the server scale just by setting a single number. You could for example lower the value of any offered item by setting multiplier to 0.9 - every price would then be reduced by 10%. When no multiplier is set the value defaults to 1.0.

Multipliers set in the sell or buy sections have higher priority than those set in the all section. In the above example 0.9 set in the buy block overrides 1.0 set in the all section.

When dealing with blocks that use additional data value such as colored wool keep in mind that you can, for example, set the price of any wool by using 35: <price>. Changing that line to '35:0': <price> would only apply to white wool. Moreover if you set the general price for wool (35: <price1>) and then assign a different price to the white wool ('35:0': <price2>) then the more specific assignment has priority. In this case every wool block would cost <price1> with the exception of white wool which would be set to <price2>.

Tiers

Tiers allow you to define multiple patterns and apply them automatically depending on the user's permissions. Each tier can have a different multiplier and/or item prices. Tiers cannot be set for item patterns!

For example creating two tiers - tier1 with sell multiplier set to 0.9, and tier2 with sell multiplier set to 0.8 will have the following effect:


  • players without any permission would see all prices by default with default multipliers
  • players with the permission dtl.trader.tiers.tier1 will have overridden only those prices you got in tier 1
  • players with the permission dtl.trader.tiers.tier2 will have overridden only those prices you got in tier 2
  • players with both permissions will have overridden first all prices from tier 1 and the from tier 2
  • multipliers are always overridden, so when the default multiplier is set to 1.2 and non is set for a tier the multiplier will be set to 1.0 because it's default always for each tier/pattern


Tiers are defined after the pattern and have exactly the same structure.

default: prices: all: multiplier: 1.0 35: 1.5 '35:2': 2.0 sell: 1: 0.33 2: 0.66 3: 0.99 buy: multiplier: 0.9 1: 0.33 2: 0.66 3: 0.99 tier1: all: multiplier: 0.9 sell: 2: 0.11 buy: multiplier: 1.1

Item patterns

Item patterns are used to set up really fast and easily traders, they might be mixed with pricing patterns allowing to create a really nice system, also working now on setting multiple patterns to one trader, so you can set prices within one pattern and items for many traders within another :)

Item syntax

This sound horrible, I know, but it's best way to explain it in two words :D

Every item within a pattern is build up by some keywords and flags you may use, many options you can't achieve with a basic trader setup are here allowed, but you need to be carefully.

Keywords

Item setting

Keyword

Description

Example

Item amounts

a

description...

durability

d

description...

Price

p

description...

Slot

s

description...

enchants

e

description...

Global limits

gl

description...

Player limits

pl

description...

stored enchants

se

description...

Name

n

description...

Stack price

sp

description...

More coming soon!

/div>

Navigation

DtlTraders
Configuration Commands | Permissions
Usage
Types

span> multiplier: br /> Sets the item's price. When adding items to the trader window, the plugin will try to find an item definition in the patterns file and apply any settings found. Any change in the patterns file will affect this item after reloading/restarting the plugin. /span> div style="display:table;width:100%"> /tt> span> buy: p style="margin:0px">