DtlTraders/config: Difference between revisions

From Citizens Wiki
No edit summary
 
(19 intermediate revisions by the same user not shown)
Line 1: Line 1:
Here you got the default config file and a description. <br /><br /><b>!NOTE!</b> Any other config nodes appearing in the <i>config</i> are at this moment not used.<br />
To be sure that everyone of you will understand the configuration file I have decided to explain each config option here, I will try to give you examples how it will affect the way you can use this plugin, and how helpful it can be if your using more advanced features.  


== General config ==
== Default config file ==
 
<pre>
debug: critical
#locale settings
locale:
  #the choosen localization to load
  load: en
  #should the locale updated autmaticaly, (not implemented)
  auto-update: false
#logging settings
logging:
  #should transactions be logged? (false/FILE/SQL/WEB) , (not used at this moment)
  log: false
  #the foramt how transactions should be logged to FILE, (not used at this moment)
  log-format: ''
#statistics
statistics:
  #enable or disable statistics (not implemented)
  enabled: false
  #metrics should be enabled? (not implemented)
  metrics: false
#trader types related settings
trader:
  #sets if left clicking the Trader should damage him, if set to false the trader wont be damaged and the click will be handled as ManagerMode toogling
  #when the player meets the requirements (permissions, and right-click = false)
  #it this setting is set to true, manager modes is toggled only when sneaking
  allow-damage: false
  #item used to toggle between modes (air counts for anything)
  #transaction related settings
  transaction:
    #sets if buying and selling should be done after clicking on a item twice in a row
    double-click: false
  #manager mode related settings
  managing:
    #the starting stock when opening a trader (buy/sell)
    start-stock: sell
    #right click toggling (instead of left click, which is default from 3.0+)
    #Attention: When PvP is disabled in the world, and the NPC is Player-Type, left click may not work!
    #if r.click toggling is enabled the item needs to be other than AIR. If not set to an item "stick" item will be used.
    right-click: false
    item: 'air'
    #special blocks used when setting prices and limits, format => 'item_id value'
    special-blocks:
    - dirt 0.01
    - wood 0.1
    - log 10
    - cobblestone 100
    - stone 10000
  #stock related settings
  stock:
    #default starting stock (if this stock is set and not empty!, this does not apply for player traders)
    start-stock: 'sell'
    #default stock size in rows, min 1, max 6 (applied on creation)
    size: 6
    #default stock name format, how should be the traders stock named by default, {npc} tag for npc name
    format: '{npc}^r''s shop'
  #wallet related settings
  wallet:
    #default wallet type for traders (if set to infinite player traders will use "owner" type instead)
    type: 'infinite'
    #initial wallet money on creation (does not apply for player traders)
    money: 0.0
  #pattern related settings
  pattern:
    #default patterns applied to each market and server trader uppon creation (array setting)
    defaults: []
    #the file where patterns are saved
    file: 'patterns.yml'
  #book item related settings
  books:
    #the file where book datas are stored
    file: 'books.yml'
    #how should be books stored? (file)
    store: 'file'
  #player trader related settings
  player:
    #limits of player traders per player
    limit: 1
    #default stock size for player traders, if set overrides the stock.size setting
    size: 2
    #default stock name format, how should be the traders stock named by default, {npc} tag for npc name, and {player} for the traders owner
    #if set overrides the stock.format setting
    format: '{npc}^r''s shop, {player}''s company'
  #ui related settings
  ui:
    #item that will "link" to sell stock
    sell: wool:1
    #item that will "link" to buy stock
    buy: wool:2
    #item that will "link" back to a basic stock
    back: wool:14
    #item that will "link" to price managing
    price: wool:15
    #item that will "link" to limit managing
    limit: wool:3
    #item that will "unlock" the stock for eiding
    lock: wool:4
    #item that will "lock" the stock (saving all changes)
    unlock: wool:5
#denizen support related settings
denizen: []
</pre>
 
== Debug ==
Plugins sometimes got a debug logger, this feature allows you and me easier bug tracking, if a bug shows up, changing this node to a lower priority value, will show more information about the plugin actions and behavior. The dtlTraders debugger got '''six''' logging levels, <span style="color:red">'''critical'''</span>, <span style="color:orange">'''high'''</span>, <span style="color:gold">'''normal'''</span>, '''low''', '''info''', '''none'''.
 
 
Setting the level to '''none''' will totally mute the logger, so no error will be shown when anything goes wrong (unless its really serious).
 
The <span style="color:red">'''critical'''</span> level setting shows only errors that totally break the plugin actions, so they are really rare and should be reported to the plugin dev.
 
The <span style="color:orange">'''high'''</span> level setting show errors that disturbed an action the plugin was performing, but did not changed the actions result.
 
The <span style="color:gold">'''normal'''</span> level setting shows all things that can cause more serious problems.
 
The '''low''' and '''info''' levels shows almost any information under the hood, these levels should not be used by server admins, nless you need information about the plugin behavior, the amount of data that will be sent by the logger will make the console unreadable.


    trader:
      locale:
        file: locale.eng
      manager-mode-toggle: 280
      inventory-navigation:
        sell-tab: '35:5'
        buy-tab: '35:3'
        manage-price: '35:15'
        manage-buy-limit: '35:12'
        manage-global-limit: '35:11'
        manage-player-limit: '35:12'
        return: 35
        amounts-return: '35:14'
    bank:
      tab-size: 3
      default-withdraw-fee: 0.0
      default-deposit-fee: 0.0
      default-max-tabs: 9
      tab-prices:
        tab2: 100.0
        tab3: 200.0
        tab4: 500.0
        tab5: 1000.0
        tab6: 2000.0
        tab7: 5000.0
        tab8: 10000.0
        tab9: 50000.0
      player-accounts:
        file: player_accounts.yml
    money-bank:
      exchange-item: 388
      item-value: 10.0 
       
=== Locale configuration (same for bankers and traders) ===


This will be moved out of the <code style="padding:2px">trader</code> section.
Additionally there are custom logging levels, but are used only for specific cases.  


changes the file name and path for the locale file.
=== Level relations ===
{| class="wikitable" style="" border="1"
|-
! Level
! Shows
|-
| None, [false, disabled]
| Nothing
|-
| <span style="color:red">Critical</span>
| <span style="color:red">Critical</span>
|-
| <span style="color:orange">High</span>
| <span style="color:orange">High</span>, <span style="color:red">Critical</span>
|-
| <span style="color:gold">Normal</span>
| <span style="color:gold">Normal</span>, <span style="color:orange">High</span>, <span style="color:red">Critical</span>
|-
| Low
| Low, <span style="color:gold">Normal</span>, <span style="color:orange">High</span>, <span style="color:red">Critical</span>
|-
| Info
| Info, Low, <span style="color:gold">Normal</span>, <span style="color:orange">High</span>, <span style="color:red">Critical</span>
|-
| Custom
| Custom
|}


<pre> trader.locale.file: locale.eng
== Locale section ==
trader.locale.path </pre>


=== Trader configuration ===
This section allows you to choose what language you want to use for this plugin and if it should auto update it if a new version was found.  
Configuration used by <b>player</b>, <b>server</b> and <b>enchant</b> traders.


==== Wand item ====
    load: en
config node will be renamed to <b>manager-wand</b> and moved out of the <code style="padding:2px">trader</code> section.


Allows to change the item which is used to toggle a trader into <i>manager-mode</i> or to open the <b>Player bankers</b> tab settings inventory. Default _**stick**_
This node is used to choose the language you want to use, it first looks for a file with the name '''locale.<target>.yml''' in the '''locales''' folder, where the '''<target>''' part is the value you set in the '''load''' node, so for this example it would be '''locale.en.yml'''


<pre> manager-mode-toggle: 280 </pre>


==== Navigation settings ====
It it is not present, it will try to look for that locale file in the plugins resources, if it fails to find it a second time a '''critical''' error is thrown, and the plugin will not work as it should.


Allows to change the traders menu navigation items, in both trader modes. Default: different _**wool colors**_.


Changes the items used to switch through the <i>sell</i> and <i>buy</i> tab.
<pre>
sell-tab: '35:5'
buy-tab: '35:3'
</pre>


Changes the item used to toggle on the <i>price management</i>.
    auto-update: false
<pre> manage-price: '35:15'</pre>
 
<span style="color:darkcyan;font-weight:bold">Info:</span> This node is not used!


Changes the item used to toggle the <i>buy</i> limit management. <i>(<b>player trader</b>)</i>
Setting the '''auto-update''' to '''true''' allows to manage locale updates, if a update is found ''(the locale version is higher)'' for the locale you are using, it will automatically replace all lines to the newest version.
<pre> manage-buy-limit: '35:12'</pre>


Changes the items used to toggle <i>global</i> and <i>player</i> limits. (<b>server trader</b>).
== Trader section ==
<pre>
manage-global-limit: '35:11
manage-player-limit: '35:12
</pre>


Changes the item used to go back from an <i>specific management</i> to the <i>stock management</i>. Like from <i>price management</i>.
All settings in this section affects the behavior of all traders on the server, so changing any setting here will affect every trader in game, however some settings will only affect new created traders.  
<pre>
return: 35
</pre>


Changes the item shown up when you want to go back from amount selection window.
<pre>
amounts-return: '35:14'
</pre>


<hr/>


=== Banker configuration ===
    allow-damage: false
Configuration used by <b>player</b> and <b>guild</b> banks.


==== Tab size ====
Allows you to change the behavior when '''left-clicking''' ''(damaging)'' a trader. When set to '''false''' it will disable any damage done to the trader, moreover it will check the player if he has permissions to toggle '''manager mode''', unless the '''right-click''' setting is set to '''true'''.  
Allows to change the <i>"inventory size"</i> of the bank account. Values are valid from <b>1</b> up to <b>5</b>.  
<pre> bank.tab-size: 3 </pre>


==== Available tabs ====
If you set this setting to '''true''' you can damage a trader ''(if other citizen settings allow this too)'' and toggling '''manager mode''' is only possible when '''sneaking'''.
You can set how many tabs may a user buy. This is a global property, so you can change this amount for each player in the <b>player_accounts.yml</b> file. Commands will be added in future.


<pre> default-max-tabs: 9</pre>


==== Fees ====
=== Transactions ===
You can set fees for <i>withdrawing</i> or <i>depositing</i> items in a bank tab.
<div><div style="color:red;display:table-cell">Note:</div> Fees are counted for each item, so adding two stacks of 1 dirt into a bank will cause to pay the fee 2 times!</div>
<pre>
default-withdraw-fee: 0.0
default-deposit-fee: 0.0
</pre>


==== Tab prices ====
    double-click: false
Allows to set prices for each tab within the <b>player banker</b>. If there is an amount set to <i>tab1</i> a player can open a <i>account</i> only when he has got the required money.
<pre>
tab-prices:  
  tab1: 0.0
  tab2: 100.0
  tab3: 200.0
  tab4: 500.0
  tab5: 1000.0
  tab6: 2000.0
  tab7: 5000.0
  tab8: 10000.0
  tab9: 50000.0
</pre>


Changes the click behavior when buying or selling, by default if set to '''false''' you sell and buy items clicking once on them, if set to '''true''' you will need to '''double-click''' the item to perform any action.


==== Bank accounts files ====
Accounts for players will be saved by default in <b>player_accounts.yml</b>, and for guilds/factions/etc. in the <b>guild_accounts.yml</b> file. You can change the file names and path for both of these files.
<pre>
player-accounts:
  file: player_accounts.yml
  path: ''
guild-accounts:
  file: guild_accounts.yml
  path: ''
</pre>


=== Money bankers ===
=== More coming soon! ===


This kind of banker is different than all others, it hasn't got a <i>manager-mode</i> or <i>settings-mode</i> but it's more like an exchange between the players money and a item you set in the config, with a exchange value. So lets say you set an <b>emerland</b> for the price of <b>10.0</b>$. Now when you and add <b>10 emerlands</b> to this bank, you will get <b>100</b>$.
== denizen section ==
<pre>
    money-bank:
      exchange-item: 388
      item-value: 10.0
</pre>

Latest revision as of 01:36, 6 February 2014

To be sure that everyone of you will understand the configuration file I have decided to explain each config option here, I will try to give you examples how it will affect the way you can use this plugin, and how helpful it can be if your using more advanced features.

Default config file

debug: critical
#locale settings
locale:
  #the choosen localization to load
  load: en
  #should the locale updated autmaticaly, (not implemented)
  auto-update: false
#logging settings
logging:
  #should transactions be logged? (false/FILE/SQL/WEB) , (not used at this moment)
  log: false
  #the foramt how transactions should be logged to FILE, (not used at this moment)
  log-format: ''
#statistics
statistics: 
  #enable or disable statistics (not implemented)
  enabled: false
  #metrics should be enabled? (not implemented)
  metrics: false
#trader types related settings
trader:
  #sets if left clicking the Trader should damage him, if set to false the trader wont be damaged and the click will be handled as ManagerMode toogling
  #when the player meets the requirements (permissions, and right-click = false)
  #it this setting is set to true, manager modes is toggled only when sneaking 
  allow-damage: false
  #item used to toggle between modes (air counts for anything)
  #transaction related settings
  transaction:
    #sets if buying and selling should be done after clicking on a item twice in a row
    double-click: false
  #manager mode related settings
  managing:
    #the starting stock when opening a trader (buy/sell)
    start-stock: sell
    #right click toggling (instead of left click, which is default from 3.0+) 
    #Attention: When PvP is disabled in the world, and the NPC is Player-Type, left click may not work!
    #if r.click toggling is enabled the item needs to be other than AIR. If not set to an item "stick" item will be used.
    right-click: false
    item: 'air'
    #special blocks used when setting prices and limits, format => 'item_id value'
    special-blocks:
    - dirt 0.01
    - wood 0.1
    - log 10
    - cobblestone 100
    - stone 10000
  #stock related settings
  stock:
    #default starting stock (if this stock is set and not empty!, this does not apply for player traders)
    start-stock: 'sell'
    #default stock size in rows, min 1, max 6 (applied on creation)
    size: 6
    #default stock name format, how should be the traders stock named by default, {npc} tag for npc name
    format: '{npc}^r''s shop'
  #wallet related settings
  wallet:
    #default wallet type for traders (if set to infinite player traders will use "owner" type instead)
    type: 'infinite'
    #initial wallet money on creation (does not apply for player traders)
    money: 0.0
  #pattern related settings
  pattern:
    #default patterns applied to each market and server trader uppon creation (array setting)
    defaults: []
    #the file where patterns are saved
    file: 'patterns.yml'
  #book item related settings
  books:
    #the file where book datas are stored
    file: 'books.yml'
    #how should be books stored? (file)
    store: 'file'
  #player trader related settings
  player:
    #limits of player traders per player
    limit: 1
    #default stock size for player traders, if set overrides the stock.size setting
    size: 2
    #default stock name format, how should be the traders stock named by default, {npc} tag for npc name, and {player} for the traders owner
    #if set overrides the stock.format setting
    format: '{npc}^r''s shop, {player}''s company'
  #ui related settings
  ui:
    #item that will "link" to sell stock
    sell: wool:1
    #item that will "link" to buy stock
    buy: wool:2
    #item that will "link" back to a basic stock
    back: wool:14
    #item that will "link" to price managing
    price: wool:15
    #item that will "link" to limit managing
    limit: wool:3
    #item that will "unlock" the stock for eiding
    lock: wool:4
    #item that will "lock" the stock (saving all changes)
    unlock: wool:5
#denizen support related settings
denizen: []

Debug

Plugins sometimes got a debug logger, this feature allows you and me easier bug tracking, if a bug shows up, changing this node to a lower priority value, will show more information about the plugin actions and behavior. The dtlTraders debugger got six logging levels, critical, high, normal, low, info, none.


Setting the level to none will totally mute the logger, so no error will be shown when anything goes wrong (unless its really serious).

The critical level setting shows only errors that totally break the plugin actions, so they are really rare and should be reported to the plugin dev.

The high level setting show errors that disturbed an action the plugin was performing, but did not changed the actions result.

The normal level setting shows all things that can cause more serious problems.

The low and info levels shows almost any information under the hood, these levels should not be used by server admins, nless you need information about the plugin behavior, the amount of data that will be sent by the logger will make the console unreadable.


Additionally there are custom logging levels, but are used only for specific cases.

Level relations

Level Shows
None, [false, disabled] Nothing
Critical Critical
High High, Critical
Normal Normal, High, Critical
Low Low, Normal, High, Critical
Info Info, Low, Normal, High, Critical
Custom Custom

Locale section

This section allows you to choose what language you want to use for this plugin and if it should auto update it if a new version was found.

   load: en

This node is used to choose the language you want to use, it first looks for a file with the name locale.<target>.yml in the locales folder, where the <target> part is the value you set in the load node, so for this example it would be locale.en.yml


It it is not present, it will try to look for that locale file in the plugins resources, if it fails to find it a second time a critical error is thrown, and the plugin will not work as it should.


   auto-update: false

Info: This node is not used!

Setting the auto-update to true allows to manage locale updates, if a update is found (the locale version is higher) for the locale you are using, it will automatically replace all lines to the newest version.

Trader section

All settings in this section affects the behavior of all traders on the server, so changing any setting here will affect every trader in game, however some settings will only affect new created traders.



   allow-damage: false

Allows you to change the behavior when left-clicking (damaging) a trader. When set to false it will disable any damage done to the trader, moreover it will check the player if he has permissions to toggle manager mode, unless the right-click setting is set to true.

If you set this setting to true you can damage a trader (if other citizen settings allow this too) and toggling manager mode is only possible when sneaking.


Transactions

   double-click: false

Changes the click behavior when buying or selling, by default if set to false you sell and buy items clicking once on them, if set to true you will need to double-click the item to perform any action.


More coming soon!

denizen section