X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?a=blobdiff_plain;f=yarrg%2Fweb%2Froutetrade;h=59b02674f1034bb82c983f803afa44e54600075b;hb=54f130dd25e32cfeb3e52b11b50fffc2f93d18ad;hp=21f4711cebfe0498d72f70ec7a2e66b7b25c49b0;hpb=7f235a4d62c9e1c0d042a65542ff49fb121429cc;p=ypp-sc-tools.web-test.git diff --git a/yarrg/web/routetrade b/yarrg/web/routetrade index 21f4711..59b0267 100644 --- a/yarrg/web/routetrade +++ b/yarrg/web/routetrade @@ -49,6 +49,7 @@ $quri my $loss_per_league= defined $routeparams->{LossPerLeaguePct} ? $routeparams->{LossPerLeaguePct}*0.01 : 1e-7; my $loss_per_delay_slot= 1e-8; +my $max_gems= 24; my $minprofit= $routeparams->{MinProfit} || 0; @@ -147,6 +148,7 @@ my $stmt= " commods.ordval ordval, commods.posinclass posinclass, commods.commodclassid commodclassid, + commods.flags flags, dist dist, buy.price - sell.price unitprofit FROM commods @@ -526,6 +528,14 @@ foreach my $ci (0..($#islandids-1)) { $applylimit->('mass', sub { $_[0]{'unitmass'} *1e-3 }); $applylimit->('volume', sub { $_[0]{'unitvolume'}*1e-3 }); $applylimit->('capital', sub { $_[0]{'org_price'} }); + + my @gem_subflows= grep { $_->{Flow}{flags} =~ m/g/ } @rel_subflows; + if (@gem_subflows) { + $cplex .= " + ". sprintf("%-10s","gems_$ci:")." ". + join(" + ", map { $_->{Var} } @gem_subflows). " <= $max_gems"; + } + $cplex.= "\n"; }