X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?a=blobdiff_plain;f=yarrg%2Fweb%2Fdocs;h=10caaee8b7b659b283f84fe98ba65f7dff24575b;hb=6c9a152ce924835192b2877fbba36071b5e69032;hp=2abe504ecf7587e8c7899ad327ae98364670a4a3;hpb=87b0d92e050701753d558e49aaae1d433b546170;p=ypp-sc-tools.db-test.git diff --git a/yarrg/web/docs b/yarrg/web/docs index 2abe504..10caaee 100755 --- a/yarrg/web/docs +++ b/yarrg/web/docs @@ -33,16 +33,7 @@ -Website documentation - YARRG - - -YARRG - - Yet Another Revenue Research Gatherer -| -introduction -| -documentation - +<& docshead &>

Looking up data in YARRG

YARRG (Yet Another Revenue Research Gatherer) is a third-party tool @@ -56,9 +47,14 @@ from YARRG. It offers a variety of enquiry options.

-This website documentation page contains information about the -database website which you may not be able to divine from the online -user interface. +Hopefully you will be able to work it without too much help, but this +documentation page contains information about the database website +which you may not be able to divine from the online user interface. + +

+ +If this page is all too complicated for you, you may prefer to read +the introduction instead.

Bookmarkable URLs

@@ -69,8 +65,8 @@ URL.

-(An exception to this is if you select the `Update' option from the -`Trades for route' lookup; the list of (de)selected stalls is too long +(An exception to this is if you select the "Update" option from the +"Trades for route" lookup; the list of (de)selected stalls is too long to fit in a URL.)

Dynamic confirmation of meaning of text entry boxes

@@ -78,7 +74,7 @@ to fit in a URL.) If you have Javascript enabled, the various text entry boxes will be annotated with a brief explanation of the system's interpretation of your current entry string. To get the actual results updated, you -must still hit `Go' or `Update'. +must still hit "Go" or "Update".

Trades for route

@@ -87,7 +83,7 @@ potentially profitable trades. If the route is suitable for the trade route optimiser, it will generate a complete voyage plan, telling you which goods to buy and sell where at which stalls and prices. -

+

If you specify only one island or one archipelago, the site shows only arbitrage trades. If you want single-hop trades within an @@ -96,10 +92,10 @@ archipelago, you must enter the archipelago name twice.

After getting the results, you can untick various trades individually, -and select `Update' to get a new plan. The unticked trades will be +and select "Update" to get a new plan. The unticked trades will be excluded from the voyage plan (if any) and also from the totals. -

Vessel capacity

+

Vessel capacity

If you don't specify a vessel or a vessel capacity, the trading plan will not take into account the fact that your voyage will be on a ship @@ -108,13 +104,41 @@ which trades excessively cumbersome goods (eg. hemp, wood, iron).

-So you should specify your vessel capacity. Currently you must -specify the actual mass and volume, as two numbers each with units. -The system understands the units t (tonnes), kg, l and kl -(kilolitres). There should be a space between the two limits, and no -space before the unit. +So you should specify your vessel capacity. You can enter things +like: +

+
sloop +
The capacity of a sloop, leaving no allowance for rum and shot +
wb - 1% +
The capacity of a war brig minus 1% +
13t 20kl +
13 tonnes (13,000kg), 20 kilolitres (20,000l) +
sloop - 10 small 40 rum +
The capacity of a sloop which remains after + 10 small shot and 40 rum are loaded +
2t plus 500kg minus 200kg +
2300kg, with no limit on volume +
+Evaluation is strictly from left to right. + +

+ +More formally: +

+ capacity-string := [ first-term term* ]
+ term := ('+' | '-' | 'plus' | 'minus') (value+ | number'%')
+ value := mass | volume
+        | integer commodity-name-or-abbreviation
+ mass := number ('t' | 'kg')
+ volume := number ('kl' | 'l')
+ first-term := mass | volume | mass volume | volume mass
+             | ship-name-or-abbreviation
+
+ +If the first term specifies only one of mass or volume, all the +subsequent terms may only adjust that same value. -

Estimated loss per league

+

Expected losses

In theory if you were guaranteed to have a trouble-free voyage it would be worth trading goods at very low margins. However, in @@ -132,24 +156,140 @@ to do.

-Trades whose margin is less than the expected loss are never selected. -For example, if you select 1% loss per league, and plan a voyage of 5 -leagues, then any trade with a margin of less than 5.15% would be -completely excluded (5.15% not 5% because the loss works like compound -interest). Theoretically very profitable trades which are close to -the expected break-even point because of the distance can also be -rejected by the optimiser in favour of shorter distance trades with -theoretically smaller margins. +Trades whose margin is less than the expected loss are never included +in the suggested plan. For example, if you select 1% loss per league, +and plan a voyage of 5 leagues, then any trade with a margin of less +than 5.15% would be completely excluded (5.15% not 5% because the loss +works like compound interest). Theoretically very profitable trades +which are close to the expected break-even point because of the +distance can also be rejected by the optimiser in favour of shorter +distance trades with theoretically smaller margins, if it's not +possible to do both.

-As a guide: you may expect to lose between 0.1% and 1% per league. -0.1% would correspond, for example, to losing one fight to brigands -every ten 10-league voyages. +As a guide: you may expect to lose between 0.01% and 1% per league. +For example 0.1% would correspond to losing one fight to brigands (who +take 10% if they win) for every 100 leagues sailed.

You can enter the value in the box either as a percentage, or as a -fraction 1/divisor, eg 1/200 is the same as 0.5%. +fraction 1/divisor, eg 1/2000 is the same as 0.05%; in each +case it is taken as the loss for each league of the voyage. + +

Minimum trade value

+ +Often there are many low-volume, low-value trades. It can be rather +labour-intensive to buy and sell a dozen different commodities, half +of which are only making a few poe each. + +

+ +The "minimum trade value" specifies a minimum profit that you would +like to get from each (commodity, collect island, deliver island) +triplet. Trades which don't meet this minimum will start out unticked in +the "Relevant trades" table and will not be included in the voyage +trading plan. + +

+ +If you want to change your threshold, you have to select "Apply", +which will automatically tick and untick all of the tickboxes for in +"Relevant trades", as appropriate. This will undo any customisation +of the set of trades you have already done by manually ticking and +unticking individual trades. + +

+ +The value is an absolute poe amount, typically 5 or 10, representing +the minimum profit to make it worthwhile (from a time and effort point +of view) clicking in the YPP client to collect and deliver a +commodity. Setting a higher threshold will make each island visit +faster, by excluding trivial transactions, and so reduce the chance +that market conditions change adversely during your voyage. + +

Caution about stalls' poe reserves

+ +If you select Also be cautious about stalls' poe reserves, +YARRG will calculate a minimum amount of poe that each stall has on +hand (by looking at all the offers that stall is making), and never +plan for you to sell goods at that stall for more than the available +poe. + +

+ +Goods planned to be bought at the stall (which might boost the stall's +poe reserves) are not considered, to avoid having to calculate the +stall's cash reserves at various different times. + +

Available capital

+ +If you don't specify the amount of capital you have available to +invest in the voyage, the trading plan will assume that your capital +is unlimited. If you specify an amount in PoE here, the trading plan +will never require you to spend more than that amount on commodities. + +

+ +The trading plan does not take into account accumulated profits from +each leg of the journey when applying the available capital +constraint. For example, if you specify a journey from A to B to C +and a capital limit of 10000 PoE, the trading plan will not tell you +to buy 1000 peas at A for 10 PoE each, sail them to B and sell all of +them for 20 PoE each, and then buy 2000 beans at B for 10 PoE each and +sail them to C to sell for 20 PoE each even if such a trade would in +fact be possible. In practice this is unlikely to be a problem! + +

Locating commodities in the YPP client UI

+ +In the Voyage Trading Plan, YARRG indicates after the commodity name +where in the YPP commodity UI each commodity can be found. First +comes the initial letter of the category: +% my $dbh= dbw_connect('Midnight'); +% my $getclasses= $dbh->prepare( +% "SELECT commodclass FROM commodclasses ORDER BY commodclass"); +% $getclasses->execute(); +<% + join '; ', map { $_->[0] =~ m/^./ or die; "$&$'" } + @{ $getclasses->fetchall_arrayref() } +%>. +

+ +Then, if applicable, follows a number from 0 to +9 indicating roughly where the commodity is in the +list of commodities of the same class. The number indicates which +tenth of the list is: 0 for the first (top) tenth, +1 for the 2nd, and so on, up to 9 +for the final tenth. + +

+For example, +

+ +
Fine pink cloth   +
C 2
+
+
+indicates that Fine pink cloth can be found under Cloth, +between 20% and 30% of the way down through the types of Cloth. +If you mouseover that in a suitably equipped browser you should see the +text: +
+Fine pink cloth is under Cloth, commodity 14 of 55 +
+

+ +The position indicator digit isn't shown for very small +categories. + +The exact location of the commodity in the actual game +client may vary because YARRG only considers the list of all possible +commodities, not the list of actual offers at the island in question. + +Also, not all commodities are always completely categorised or +ordered; we are working to add the additional data + <& footer &>