X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?p=ypp-sc-tools.db-live.git;a=blobdiff_plain;f=yarrg%2Fweb%2Fdocs;h=9feaa6b651d02f6d60aa068ee3e004eb19f5cd81;hp=18a1d1ab99166bc9a3efe7abb9dbb9c90431f571;hb=6302552bfa5844eddb7c26386c9995733f0a5174;hpb=3231df828b8d032a38a32a3a16e82a53c647a033 diff --git a/yarrg/web/docs b/yarrg/web/docs index 18a1d1a..9feaa6b 100755 --- a/yarrg/web/docs +++ b/yarrg/web/docs @@ -1,101 +1,205 @@ -%# This is part of the YARRG website. YARRG is a tool and website -%# for assisting players of Yohoho Puzzle Pirates. -%# -%# Copyright (C) 2009 Ian Jackson -%# Copyright (C) 2009 Clare Boothby -%# -%# YARRG's client code etc. is covered by the ordinary GNU GPL (v3 or later). -%# The YARRG website is covered by the GNU Affero GPL v3 or later, which -%# basically means that every installation of the website will let you -%# download the source. -%# -%# This program is free software: you can redistribute it and/or modify -%# it under the terms of the GNU Affero General Public License as -%# published by the Free Software Foundation, either version 3 of the -%# License, or (at your option) any later version. -%# -%# This program is distributed in the hope that it will be useful, -%# but WITHOUT ANY WARRANTY; without even the implied warranty of -%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -%# GNU Affero General Public License for more details. -%# -%# You should have received a copy of the GNU Affero General Public License -%# along with this program. If not, see . -%# -%# Yohoho and Puzzle Pirates are probably trademarks of Three Rings and -%# are used without permission. This program is not endorsed or -%# sponsored by Three Rings. -%# -%# -%# This Mason component generates the documentation. -%# -YARRG (Yet Another Revenue Research Gatherer) +<%doc> + + This is part of the YARRG website. YARRG is a tool and website + for assisting players of Yohoho Puzzle Pirates. + + Copyright (C) 2009 Ian Jackson + Copyright (C) 2009 Clare Boothby + + YARRG's client code etc. is covered by the ordinary GNU GPL (v3 or later). + The YARRG website is covered by the GNU Affero GPL v3 or later, which + basically means that every installation of the website will let you + download the source. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + + Yohoho and Puzzle Pirates are probably trademarks of Three Rings and + are used without permission. This program is not endorsed or + sponsored by Three Rings. + + + This Mason component generates the documentation. + + + +Website documentation - YARRG -<& webcopyright &> -

Introduction to YARRG

-YARRG (Yet Another Revenue Research Gatherer) is inspired by PCTB. +YARRG - + Yet Another Revenue Research Gatherer +| +introduction +| +documentation +| +development -

Results

+

Looking up data in YARRG

-The lookup page gives access to the uploaded data. +YARRG (Yet Another Revenue Research Gatherer) is a third-party tool +for helping find profitable trades and trade routes in Yohoho Puzzle +Pirates. See the Introduction for more details. -

Obtaining the client

-The current official version of YARRG for use as a client can browsed here: - http://www.chiark.greenend.org.uk/~ijackson/ypp-sc-tools/master/ +

+ +The Market prices database is the main output +from YARRG. It offers a variety of enquiry options.

-See particularly the -YARRG README. + +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. + +

Bookmarkable URLs

+ +Mostly, you can bookmark the specific pages and queries. Select the +ocean, query page, and other combinations of options, as you wish, and +perhaps fill in the actual data fields too, and bookmark the resulting +URL.

-To install the client, install the `git' version control system -and the other dependencies listed in the `Installation requirements' -section of the README and then run: -

-git-clone http://www.chiark.greenend.org.uk/~ijackson/ypp-sc-tools/master/.git ypp-sc-tools
-cd ypp-sc-tools
-cd yarrg
-make
-
-this will download the code into the directory ypp-sc-tools, -and build the software. + +(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

+ +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'. + +

Trades for route

+ +Given a list of islands (or archipelagoes), provides a list of +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 +archipelago, you must enter the archipelago name twice.

-When new versions are released, you can: + +After getting the results, you can untick various trades individually, +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

+ +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 +with a limited size. This will probably result in a plan +which trades excessively cumbersome goods (eg. hemp, wood, iron). + +

+ +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:

-cd .../ypp-sc-tools
-git-pull
+ 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
 
-to fetch the new version. -

Free Software (aka Open Source)

+If the first term specifies only one of mass or volume, all the +subsequent terms may only adjust that same value. + +

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 +practice problems can arise: you may be attacked and lose your stock, +or market conditions may change between your collection and delivery +of the goods. + +

-YARRG is Free Software - you may share and modify it. See the -licences for details. +We model this by pretending that you expect to lose a fixed proportion +of your stock each league you sail. This expected loss does not +appear in the trade tables (although the distance does), but it does +affect the way the voyage trading plan optimiser chooses which trades +to do.

-Not only the client but also the webserver code is Free. The website -code can be found in the same tree as above, in the web -directory. +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.

-But in case we have made changes but not yet pushed them -(perhaps because we haven't done a release), and to make it easy for -anyone else who runs a copy of the website to provide everyone with -the source for their version, you can download an up-to-date -tarball of the -actually-running website code. +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.

-If you would like to run a (perhaps modified) copy of the YARRG -website it would be very easy for us to send you copies of updates -submitted by users of the official YARRG client, in the format -expected by the code you'll be running. Please just ask us. +You can enter the value in the box either as a percentage, or as a +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. + +

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! -<& footer, isdocs => 1 &> +<& footer &>