2,158
edits
mNo edit summary |
|||
(8 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
{{As Of Patch|2.0.200.89}} | {{As Of Patch|2.0.200.89}} | ||
Merchants are NPCs that sell their goods and restock on a semi random basis. The first one the player will see will be {{favilink|Tam}}. For | Merchants are NPCs that sell their goods and restock on a semi random basis. The first one the player will see (if the player chooses to start in {{favilink|Joppa}}) will be {{favilink|Tam}}. For other villages with procedurally generated [[village merchant]]s, they will be {{qud text|&Wyellow}} and have a bonus +3 to [[Ego]]. | ||
[[ | |||
== Restocking == | == Restocking == | ||
Merchants do not keep their wares: they | Merchants do not keep their wares: they rotate their stock around every 5 to 8 in game days(for more detailed math, view [[#In-depth Restocking Formula]]). When a merchant restocks, their trading inventory is refreshed and new items will repopulate the inventory. These items will generally be of similar tier and type as the initial stock. | ||
For how the trading system works, check [[Commerce]]. | |||
== Legendary Merchants == | == Legendary Merchants == | ||
== In-depth | Merchants have a chance of spawning Legendary Merchants, loyal to the [[Merchants' Guild]]. They live in their own lairs, and are always guarded by two random hired guards. All stock will contain the Maker's Mark of the Merchant, which is a random [[Modding: Code page 437|Code page 437]] character from 1-254 (in decimal) excluding all alphanumerics, &, ^, and white space.{{Code Reference | namespace = XRL.World.ZoneBuilders | class = HeroMaker | method = MakeHero}} | ||
== In-depth Restocking Formula == | |||
Merchants restock randomly according to their Chance and Restock Frequency. LastRestockTick is the last ingameTick that they have refreshed their wares. Currently, Chance is specified as 71, and RestockFrequency is 5 ingame days, or 6,000 ticks. It calls [[Modding:Random Functions|<code>Stat.Random()</code>]] to find a random integer between half the restock frequency and the restock frequency:{{Code Reference | class = GenericInventoryRestocker}} | |||
When the merchant is first created, LastRestock tick is set to | |||
<math>\text{LastRestockTick} = \text{TickOnCreation} + \text{Random}( \frac{RestockFrequency}{2}, RestockFrequency)</math> | |||
which substitutes to | |||
<math>\text{LastRestockTick} = \text{TickOnCreation} + \text{Random}(3000, 6000)</math> | |||
Every EndTurn, this is called: | |||
If the current in game turn count-LastRestockTick is greater than RestockFrequency, LastRestockTick is set to equal the current GameTick. | |||
<math>\text{num1} = \text{InGameTurn} - \text{LastRestockTick} \ge 6000</math> <math>\rightarrow</math> | |||
<math>\text{RestockCheck} = \frac { \text{71}}{6000} \times \text{num1} </math> | |||
<math>\rightarrow</math> | |||
If <math>\text{RestockCheck} \ge 100</math> or <math>\text{RestockCheck} \ge \text{Random}(1,100)</math>, | |||
the merchant will restock. This means that about 8450-8451 turns (a little more over an ingame week) after the last restock must pass in order to guarantee a restock. The earliest that a merchant can restock is 6,000 turns, with a 71% chance of restocking, or 9,000 turns at a 100% restock if this is the first time the merchant restocks. | |||
If a merchant is holding a quest item, they will not destroy the quest item during restock. any other item that contains the tag <code>norestock</code> will also not be restocked. Merchants that are following the player do not restock, and if the player is also a merchant via [[Domination]], they will not restock. | |||
== Trade Prices == | |||
Trade prices in {{gamename}} are variable, and depend on a number of factors, including the player's [[Modifier|Ego modifier]] and their [[reputation]] with the merchant. | |||
For more details about trade prices, refer to the [[commerce]] page. | |||
==References== | |||
<references/> | |||
{{Mechanics Navbox}} | |||
[[Category:Mechanics]] | [[Category:Mechanics]] | ||
edits