You must be logged in to post messages.
Please login or register

Pharaoh: Game Help
Moderated by VitruviusAIA, Gweilo

Hop to:    
loginhomeregisterhelprules
Bottom
Topic Subject: Dock optimation summary
posted 07-11-01 04:18 ET (US)   
I try to summarize what is known. As I understand it, the whole trouble began as the designers decided to significantly increase the number of waterbased trade routes, which seems reasonable with the omnipresent Nile (and without the fortified roman roads). On the other hand, with the limited space of banks, also needed for floodplains, reeds etc., the "docks = traderoutes+1" approach needed a change too.
Replies:
posted 07-11-01 04:40 ET (US)     1 / 23  
[edit: there is a update of this message in post #15]

1. Docks should be as near as possible to the entry point of the ships to decrease the waiting time in queues at an empty dock due to the registration behavior described in great detail by Nerdicus.

2. Docks (with their associated SYs very close) should be disconnected from the rest of the city to secure short cartpusher trips. Don't let them wander across the map for distant Storage Yards.

3. The number of opened trade routes by water should be limited (if necessary) to concentrate on the important ones. Purposely don't open minor trade routes to avoid their ships to compete for docking resources with the vital ships. Also try to trade low volume goods by land by not accepting them in all SYs in the (disconnected) dock area.

4A. Only one dock is preferable (exceptions below) because:
a. One dock (connected to SYs with tradeable goods) means waiting (necessary and unnecessary queueing, see case 1.) - more docks: even more waiting.
b. Ships usually try to visit all docks regardless wether a dock trades anything of interest to them, even if a ship has already traded to its limits (sold&bought 1200).
c. There is no efficient pathfinding: A ship enters the map, travels to the dock near the exit, trades, travels back to the dock near the entry, trades again (best case!), and hurries already to the exit ...
d. If one dock holds (short for: is connected by road with SYs which hold) the goods for a trade route and the other dock holds the goods for another trade route, half the time the "right" dock will be skipped:
.1 ship moves first to the "right" dock, trades, travels to the "wrong" dock, discovers that there is nothing to trade and is therefore quickly dispatched without queueing (case 4Ab.).
.2 ship moves first to the "wrong" dock, discovers that there is nothing to trade, skips (don't visit at all) the "right" dock and leaves complaining "no trade in this city".

4B. In spite of the points above, there are exceptions for two docks:
a. If two vital goods are traded only by water & produced/consumed on very remote locations on a (large) map and overall trade by water is low enough, the overhead for many and/or long distance traveling cartpushers can surmount the (high) inefficiency of two distant docks. (Analogy: if land traders can conduct all desired trades even when their route includes ferry crossings, why bother with building extra roads and SYs?) One additional dock is also cheaper & needs less workers than long distances bridged with road, storage yards & may be ferries.
I think configurations with well distributed areas of goods consumption/production have the obvious solution of "true" multiple docks - but with badly implemented ship routines distant dock solutions are often almost useless (Docks should allow to specify trade routes to trade with and ships should find the shortest path from entry to exit visiting only&all docks in which they are specified and with connected SYs containing goods interesting for them until they are done). The following is more one enhanced dock than multiple docks.
b. Two docks can provide more throughput than one. They should be near each other, preferably adjacent to minimize waiting & travel times (4Aa&c.). This is especially advantagous when there is no docking place close to the entrance (waiting time at empty docks, see case 1.) and a lot of trade to conduct.
.1 The two docks can share storage yards (ie. have access to the same import/export SYs). Since all goods are available to both docks, this means all ships will travel to and queue at both docks. Problem is mainly 4Aa. Maybe this way the absolute maximum a city can trade is reached (with less open trade routes).
.2 If there are even more open trade routes, especially if some of them have lost their importance (and can't be closed), trade routes can be priorized by separating (not connecting by road) the SYs of both docks. Now the SYs of each dock hold only the goods of the trade routes assigned to them leading mainly to Problem 4Ad. Priorities are established by assigning the few vital goods to one dock (less queueing) and the bulk to the other. Another methode is to distribute the trade routes even between the docks, with the exception of one crucial good also assigned to the other dock. For example, Route A trades with copper & grain, Route B trades with bricks & reeds, Route C trades with linen & barley. If copper trade should be increased, in the first case Dock 1 gets Route A (its SYs: copper & grain) and Dock 2 gets Routes B & C (its SYs: bricks, reeds, linen & barley). In the second case Dock 1 gets Route A & C (its SYs: copper, grain, linen & barley) and Dock 2 gets Route B & copper (its SYs: copper, bricks & reeds). All ships from Route A travel on every trip to both docks & try to trade copper 2 times (Priority 1). Trade with grain is tried 1 time on every trip (Priority 2, side effect). All ships from Routes B & C trade at the "right" dock every other time bricks, reeds, linen & barley (Priority 3). The crucial copper has virtually none of the problems 4Aa-d! Maybe this way the absolute maximum a city can trade is reached (with more open trade routes).

There are max. two ships from the same city on the map (ie. no third is generated, no matter how much the others are delayed). On the other hand seems one ship every other month (exact 31 days at 16 days per month or 6.2 ships per year) to be the max. generation rate no matter how quickly ships are turned around. As one ship sells/buys max. 1200 units, this results in max. 7432 units/per year import and export with one city no matter how efficient dock(s) are.

How much can be pushed through a single dock?(Brugle, Abu: ex 12500, im 4000) More?
How much trade can a city conduct?

[This message has been edited by civilis (edited 04-07-2004 @ 05:45 AM).]

posted 07-11-01 11:38 ET (US)     2 / 23  
i've noticed it's not neccesarry to disconect the dock from the rest of the system if the storage yards are close to the dock
posted 07-11-01 13:30 ET (US)     3 / 23  
civilis,

This is a nice summary of current "accepted wisdom" for docks, but with one glaring omission. Amplifying schnurbart's comment, the most important (in my opinion) factor in dock design is to make it efficient. This means ensuring that dockers never go far (to storage yards). Your point #2 addresses this, but only indirectly. I frequently disconnect the dock from the rest of the city, because it often makes design simpler, but disconnection alone is neither necessary nor sufficient for high dock efficiency.

Clearly, in many missions high dock efficiency is not really needed (and, depending on the player's personal goals, may not even be wanted). In those cases, multiple docks may be useful. But I've never accepted the "docks = traderoutes+1" idea. In all of the Caesar III or Pharaoh missions that I've seen (with less than half of the Pharaoh "family history" done), a single efficient dock should easily handle the load, although (in my ignorance) I've built 2 side-by-side docks a few times.

Here's another, less important, point. It's usually reasonable to not export low-priced goods, especially when trading by river. For example, not exporting limestone in On or either Dahshur helps avoid dock congestion with only a small potential income loss.

Regarding your last paragraph: with a map specifically designed to be "river trade friendly", I'd expect a single high efficiency dock to easily fully occupy the ships of 4 trade cities, with around 28800/year each of exports and imports. With more river trade cities, I wouldn't be surprised to see one dock handle considerably more trade, and multiple docks might handle even more. For the absolute maximum exports, it might be necessary to eliminate imports.

By the way, I intended for my Abu to export 12500/year by water, but it might have ended up selling a little less. (At the time I didn't realize the limitation on trade ships/year, but I also didn't allow for exporting more to a city than it nominally allows.)

[This message has been edited by Brugle (edited 07-11-2001 @ 01:34 PM).]

posted 07-11-01 18:51 ET (US)     4 / 23  
I have NEVER seen a ship buy 1200 units from any of my cities. They always buy at most 1100 units, then que themselves (i.e. wait for a free dock). When they dock again, they decide they can't buy anything else and leave. It can be very frustrating (and one reason I've never tried to rely on a single dock).
Another odd thing they do to me is to sit at anchor "waiting for a free dock" even though there are sometimes several free docks. They'll sit there like that for months, until a different ship docks and then leaves the dock. This seems to wake up the camping ship.
posted 07-11-01 19:05 ET (US)     5 / 23  
Ilion though it says that the ship only buys 1100 units, in fact they do buy, and pay for, 1200 units. I've found with multiple docks the problem you state of them queuing and docking again, but with single docks it doesn't occur, that is one of the reasons why I prefer to have a single dock. I'm not saying its the only way but I have played all the career missions with only one dock and I've found I was always able to import/export everything I wanted to as long as I left myself space for enough storeyards in the immediate dock area.
posted 07-11-01 19:18 ET (US)     6 / 23  
i'm forced to agree whith merapatra and brugle about docks in th larger sense. As fars a queing goes i've noticed that ships will wait in line for another ship that's rolling downriver to my absolute depair sometimes but that seems to be the reason they wait for a free dock when one seems empty. also i seem to do ok with 2 docks very close to each other. Brugles point bout about eficiancy is on the money when it comes to imports exports...ships or caravans love to drop off goods first(wouldn't you?) and sell thier own wares before buying. It seems finding the mean in all these principles is all part of the fun
posted 07-11-01 19:19 ET (US)     7 / 23  
I have seen today something uncommon but very unpleasant. A dock sends cart pushers to deliver a good (today linen) to a SY. But, for a problem of access to labour, the SY loses its workers during the CP trip. Then CPs reach the SY: they unload nothing, SY remains empty, but the ship says it has sold 400, 800 ot even 1200 linen (and money is taken)!
This is particularly unpleasant when you can import only 1500 of a very necessary good...

I think the Civilis comments are very good, and very pragmatic. I played during months with as many as 6 docks. This leads to nothing. But I do believe in the "2 close docks" efficiency. I rely on 4 commercial routes, import various goods that sometimes go far away (I forget to check that close SY is already full). I am globally delivered everything I need.

I sometimes play on the goods delivery: when I see that I would love some barley and some linen but all CP are going to the linen SY only, I change the "Import as many as" while the CPs are coming. First one delivers, others vanish.

[This message has been edited by Tryhard (edited 07-11-2001 @ 11:01 PM).]

posted 07-12-01 00:00 ET (US)     8 / 23  
I've noticed the queuing problem with one dock. For example, right now the city I'm working on is North Dashur and I'm trading with Meidum and Abu by water. Many times the Meidum ship will 'camp' by the dock while my poor dock workers have nothing to do. That ship will sit there until the ship from Abu comes, trades and leaves the dock. Then the Meidum ship captain will decide it's ok to dock and unload his cargo. Very frustrating when you start to get a little low on plain stone or need the trade to make a few debens. If anyone has any ideas on what I'm doing wrong, I'd love to hear them.


-Skari

posted 07-12-01 00:46 ET (US)     9 / 23  
skari i could not have said it better myself
posted 07-12-01 02:17 ET (US)     10 / 23  
Hi Skari,
as long as I know, you did nothing wrong: all this strategy thinking about docks comes mostly from this very problem: ships queue while a dock is free.
Sometimes I get fed up: nothing changes for months (generally when I have a problem with the cart pushers). I destroy the dock. Generally, the active ship leaves (to the next dock) and some of the queuing ships too. I build the dock back. But, very often, the queuing ship closest to the dock stays there, however I build the dock back or not. After some months, it vanishes (though right click on it shows it is not an image bug). I have seen that the two boats from its city still come anyway, as if this one did not exist anymore.

Two funny bugs in last Hetep:
-I was offered 64 sandstones, but 4 were granite
-A transport wharf (TW) had a fishing boat instead of a troops carrier (boat was fishing but never unloading). I destroyed the TW and replaced it with a fishing wharf. When it got workers, the shipwright immediately built a new fishing boat, but the other one was still there and went fishing too. This was better than Brugle's 2 cart pushers, 2 fishing vessels for one wharf. But it did not work, old fishing boat never unloaded anything...

posted 07-12-01 03:55 ET (US)     11 / 23  
Tryhard,
LOL It's too bad you weren't able to fully implement the TFWx2 (Tryhard Fishing Wharf with double capacity).

Speaking of odd behavior with transport and fishing wharfs: You can build them on "inland lakes" and the shipwright will build a ship for them.
The fishing boat immediately sinks, since it can't get to the wharf (and then the shipwright builds another). So, this isn't useful, just interesting.
However! The transport ship does not sink and is fully functional, even though it can't get to its wharf. So, on a map in which river frontage is limited (but there is non-river coastline) and I need a transport or 3, that's where I build them.

posted 07-12-01 13:37 ET (US)     12 / 23  
Skari and schnurbart,
The "queuing problem" you mentioned is explained quite well in Nerdicus's reply #22 of the Dock optimization thread.

[Fixed link that was broken in the forum merge.]

[This message has been edited by Brugle (edited 03-28-2004 @ 02:15 PM).]

posted 07-12-01 15:32 ET (US)     13 / 23  
i just read nerdicus's post in brugle's last nessage about dock queing. Besides the fact of his findings about ships, there is the other problem of the idiot cart pushers taking the longest road. wich is my reason reason for keeping one dock. Nerdicus calls the whole situation a bug but i'm not sure. I've been playing heavy games for 24 years now and one thing that i know about the developers mind, if they are any good , is they are looking for play balance. I'm sure the desighner/ developers are fully aware of how thier ships behave. I can just hear the screams now during the play test! What i mean by play balance is tht if they made ships behave more logicly they'd have given us an easyer game. If they fix that they have to tweak the rest of the game ad infinitum. I'm sure there are many that would not mind that at all. It seems to me overall the desighners purposely gave us stupid bazaar ladies and funky walkers for the same reason. As a trucker i am somewhat involved in the trade business and have had to wait hours for a so called free dock. Some guys want to get out their guns..lol..Wallmart is a prime example...if you show up early for your apointment u still have to wait for the truck
ahead of you in line even if he's at the truck stop shopping for lot lizards..lol..but i digress...have fun folks above all
posted 07-13-01 07:47 ET (US)     14 / 23  
schnurbart, LOL, I must admit I had similar thoughts about play balance...
But, please, NEVER write such things in a public forum...
In the end some managers/producers feel encouraged to skip quality management for popular request from the gamers for play balance Iunet... LOL


Thank you all, for your kind words.
As always with perfection: the last %s kill you.
I omited not only "a glaring" aspect in #2, but also the fact, that (of course) I took nearly all ideas from the posts of all the nice people who submitted them.
(I can only look so far because I'm standing on the shoulders of giants)

Especially I want to mention the very enlightning article "Docks Trading" from Merepatra on GraniteQ's website.
Thank you Brugle for your help, proofreading & linking to Nerdicus' great post.

The points 1.-3. are reworked,
some more comments, omissions, exceptions from the described rules?

posted 07-13-01 07:51 ET (US)     15 / 23  
1. Docks should be as near as possible to the entry point of the ships to decrease the waiting time in queues at an empty dock due to the registration behavior [A ship anchors in front of an empty dock ("waiting for a free dock") and waits while a ship that just entered the map (& registered) sails directly to the dock] described in great detail by Nerdicus.

2A. Docks (with their associated SYs very close) should be disconnected from the rest of the city to secure short cartpusher trips if there are distant storage yards containing goods traded by water. Don't let the CPs wander across the map for distant SYs to access these goods. The dock area can contain one or more whole industries and/or housing blocks or be connected by roads and/or ferries to everything in the city as long as there are no distant SYs inviting for time consuming CP trips.

2B. The CPs trips in the dock area itself should be short, ie. the layout of the roadsystem between dock and associated SYs should be efficient. Connect the buildings in a way that they aren't "encircled" before/after (un)loading etc. Count the tiles between the loading/unloading points - it's for example possible to let a cartpusher load from the dock and unload to a SY on the same tile.

3A. The number of opened trade routes by water should be limited (if necessary) to concentrate on the important ones. Purposely don't open minor trade routes to avoid their ships to compete for docking resources with the vital ships.

3B. Also try to trade low volume goods by land by not accepting them in all SYs in the (disconnected) dock area.

3C. It's usually reasonable to not export low-priced goods, especially when trading by river to help avoid dock congestion with only a small potential income loss.

4A. Only one dock is preferable (exceptions below) because:
a. One dock (connected to SYs with tradeable goods) means waiting (necessary and unnecessary queueing, see case 1.) - more docks: even more waiting.
b. Ships usually try to visit all docks regardless wether a dock trades anything of interest to them, even if a ship has already traded to its limits (sold&bought 1200).
c. There is no efficient pathfinding: A ship enters the map, travels to the dock near the exit, trades, travels back to the dock near the entry, trades again (best case!), and hurries already to the exit ...
d. If one dock holds (short for: is connected by road with SYs which hold) the goods for a trade route and the other dock holds the goods for another trade route, half the time the "right" dock will be skipped:
.1 ship moves first to the "right" dock, trades, travels to the "wrong" dock, discovers that there is nothing to trade and is therefore quickly dispatched without queueing (case 4Ab.).
.2 ship moves first to the "wrong" dock, discovers that there is nothing to trade, skips (don't visit at all) the "right" dock and leaves complaining "no trade in this city".

4B. In spite of the points above, there are exceptions for two docks:
a. If two vital goods are traded only by water & produced/consumed on very remote locations on a (large) map and overall trade by water is low enough, the overhead for many and/or long distance traveling cartpushers can surmount the (high) inefficiency of two distant docks. (Analogy: if land traders can conduct all desired trades even when their route includes ferry crossings, why bother with building extra roads and SYs?) One additional dock is also cheaper & needs less workers than long distances bridged with road, storage yards & may be ferries.
I think configurations with well distributed areas of goods consumption/production have the obvious solution of "true" multiple docks - but with badly implemented ship routines distant dock solutions are often almost useless (Docks should allow to specify multiple trade routes to trade with and ships should find the shortest path from entry to exit visiting only&all docks in which they are specified and with connected SYs containing goods interesting for them until they are done). The following is more one enhanced dock than multiple docks.
b. Two docks can provide more throughput than one. They should be near each other, preferably adjacent to minimize waiting & travel times (4Aa&c.). This is especially advantagous when there is no docking place close to the entrance (waiting time at empty docks, see case 1.) and a lot of trade to conduct.
.1 The two docks can share storage yards (ie. have access to the same import/export SYs). Since all goods are available to both docks, this means all ships will travel to and queue at both docks. Problem is mainly 4Aa. Maybe this way the absolute maximum a city can trade is reached (with less open trade routes).
.2 If there are even more open trade routes, especially if some of them have lost their importance (and can't be closed), trade routes can be priorized by separating (not connecting by road) the SYs of both docks. Now the SYs of each dock hold only the goods of the trade routes assigned to them leading mainly to Problem 4Ad. Priorities are established by assigning the few vital goods to one dock (less queueing) and the bulk to the other. Another methode is to distribute the trade routes even between the docks, with the exception of one crucial good also assigned to the other dock. For example, Route A trades with copper & grain, Route B trades with bricks & reeds, Route C trades with linen & barley. If copper trade should be increased, in the first case Dock 1 gets Route A (its SYs: copper & grain) and Dock 2 gets Routes B & C (its SYs: bricks, reeds, linen & barley). In the second case Dock 1 gets Route A & C (its SYs: copper, grain, linen & barley) and Dock 2 gets Route B & copper (its SYs: copper, bricks & reeds). All ships from Route A travel on every trip to both docks & try to trade copper 2 times (Priority 1). Trade with grain is tried 1 time on every trip (Priority 2, side effect). All ships from Routes B & C trade at the "right" dock every other time bricks, reeds, linen & barley (Priority 3). The crucial copper has virtually none of the problems 4Aa-d! Maybe this way the absolute maximum a city can trade is reached (with more open trade routes).

There are max. two ships from the same city on the map (ie. no third is generated, no matter how much the others are delayed). On the other hand seems one ship every other month (exact 31 days at 16 days per month or 6.2 ships per year) to be the max. generation rate no matter how quickly ships are turned around. As one ship sells/buys max. 1200 units, this results in max. 7432 units/per year import and export with one city no matter how efficient dock(s) are.

Dependant on how "river trade friendly" a map is designed, it's expected a single high efficiency dock to easily fully occupy the ships of 4 trade cities, with around 28800/year each of exports and imports. With more river trade cities, one dock might handle considerably more trade, and multiple docks might handle even more.

posted 07-13-01 08:12 ET (US)     16 / 23  
Hi Civilis

Very nice summary.

I have to admit that in my ascendance to pharaoh I usually used to build to much docks. What often happened to me was that sometimes ships got stuck (i.e. just waitinbg there and doing nothing ). So now I tend to use only one dock.

Could maybe someone post a glyph of how they think a dack area is best designed? I usually place 4-6 storage yards just opposite of the dock.

Greetings
Enano Rojo


Suits you, Sir!
Moderator of the Fast Show Forum at Talk Comedy
Du Vin, du Pain et du Boursin:
Moderator at Cheese-Land
posted 08-03-01 10:52 ET (US)     17 / 23  
In this example of a disconnected dock the CPs of the dock don't have to walk at all. The location of the outer SYs & fire/arch should be adapted to the concrete situation. Important is the location of the work access feeder and fire&arch coverage of the dock & inner SYs.
(edit 2009: As cantique pointed out, if A LOT OF IMPORT has to be managed, the outer SYs should be BSYs.)


GrassGrassWeaverRoadBreweryGrassGrassGrassGrassGrassGrassGrassGrassGrass
GrassGrassRoadGrassGrassGrassGrassGrassGrassGrassGrassGrass
GrassGrassGrassGrassRoad BlockGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrass
GrassGrassGrassGrassRoadRoadRoadRoadRoadRoadRoadRoadGrassGrassGrassGrass
GrassGrassGrassGrassRoadStorage YardStorage YardRoadStorage YardGrass
GrassStorage YardRoadRoadGrass
GrassRoadRoadGrass
GrassRoadGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrass
GrassGrassGrassGrassRoadGrassStorage YardGrassStorage YardGrassGrassGrass
GrassGrassGrassGrassRoadGrassGrassGrassGrassGrass
GrassGrassGrassGrassRoadGrassRoadGrassGrassGrass
GrassGrassGrassGrassRoadGrassCrude HutCrude HutDockGrassGrassGrassGrassGrass
GrassGrassGrassGrassRoadRoadRoadArchitect's PostGrassGrassWaterWaterWater
GrassGrassGrassGrassGrassGrassFirehouseGrassWaterWaterWaterWaterWater
GrassGrassGrassWaterWaterWaterWaterWaterWaterWaterWaterWaterWaterWaterWaterWater


The following example of a connected dock is copied from Brugles "Baki, the hard way". It's an arrangement of 5 "inner" storage yards with docker travel distances of 0, 1, 3, 3 and 5 road tiles. The "outer" SYs are mainly BSYs to distribute papyrus.

GrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassStorage YardGrassGrassGrassGrass
GrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassArchitect's PostGrassGrassGrass
GrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassRoadGrassGrassGrass
GrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassStorage YardRoadStorage Yard
WaterGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassRoad
WaterWaterGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassRoad
WaterWaterGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassGrassStorage YardRoadStorage Yard
WaterWaterWaterGrassStorage YardGrassGrassGrassGrassGrassGrassRoad
WaterWaterWaterGrassStorage YardGrassGrassGrassRoad
WaterWaterWaterWaterStorage YardStorage YardRoadStorage Yard
WaterWaterWaterWaterWaterFirehouseRoadRoad
WaterWaterWaterDockRoadRoadRoadRoadRoad
WaterWaterWaterStorage YardRoadRoad BlockRoad BlockRoad BlockRoad BlockRoad BlockRoad BlockRoadRoad BlockRoadRoad
WaterWaterWaterRoadRoadRoadRoadStorage YardRoadGardenGardenGrass
WaterWaterWaterWaterWaterGrassStorage YardRoadRoadGardenGardenGrass
WaterWaterWaterWaterWaterWaterGrassGrassGrassRoadRoadShrineShrineGrass
WaterWaterWaterWaterWaterWaterGrassGrassGrassRoadRoadRoadRoadRoadCommon ResidenceGrass
WaterWaterWaterWaterWaterWaterWaterGrassGrassGrassBreweryRoad BlockShrineShrineCommon ResidenceGrass
WaterWaterWaterWaterWaterWaterWaterWaterGrassGrassRoadBreweryGrassGrassGrass
WaterWaterWaterWaterWaterWaterWaterWaterGrassGrassGrassGrassRoadGrassGrassGrassGrassGrass

[This message has been edited by civilis (edited 01-17-2009 @ 10:01 AM).]

posted 08-14-01 02:40 ET (US)     18 / 23  
My comments & observations are based on disconnected, efficient docks within a Cleo V2.1 installation.

It seems to make no difference wether trade routes are opened before, inbetween or after building the docks.
As usual the road connecting dock & inner SYs must have access to the kingdom road. If a compact, "highly efficient" arrangement contains this error, no warning is given, the animation is the normal one, but nothing is (un)loaded. I mention this, because some reports about "desastrous" docks seem to contain mistakes in the setup including bad worker access (eg. "feeder" houses emptied by malaria look fairly normal), too small overall work force, wrong priorities of worker overseer, incorrect setting of SY orders (accept & get in flow direction), stucked CPs, CPs on too long walks, CPs busy doing other (ordered!) things, inavailable goods for exports or empty space for imports, wrong settings of trade overseer: trade route not opened, material/good not set on export/import, export/import limits reached ... (Brugle, what is missing?)

First of all observations with only one dock:
When a ship is generated and enters the map and there is/are at this time
A) 1 or 2 ships at the dock (un/loading or anchoring), then the new ship sails to the dock, anchors & waits until it's called in by the dock to be serviced and tries to trade. Note that at the time the ship reaches the dock, there may be more or less than 1 or 2 ships, as ships "in transit" (in this case on their way from the entry to the dock) are never considered in this count.
B) 3 or more ships at the dock (un/loading or anchoring), then the new ship skips the dock on this turn; no trade, no wait, the ship sails straight from the entry to the exit. At the time the ship passes the dock, there may be no ship at all. Note that a ship "in transit" (in this case from the entry to the exit) never reconsiders its destination.
C) 0 ship at the dock (un/loading or anchoring), then the new ship sails to the dock and gets immediately the call in by the dock to be serviced and tries to trade. Again ships "in transit" (in this case already nearer to the dock) are disregarded, so there may be such ships already waiting at the dock when the new ship arrives. I call this questionable behaviour "Nerdicus registration gap".
Questionable because the continous dispatch of ships is interrupted: In case A and B, when a ship is dispatched, the dock calls another (any other, no fifo) anchored ship in for service until the new ship anchors or passes by and continues after that without end ...
In case C all ships nearer to the dock than the new one have to wait (which provokes again case B, skipping). Case C could be handled by case A (with less programming effort), so I think, this behaviour is designed (they like waves of ships more than the boring continous dripping of a defect water-tap) to avoid the same distances (std dispatch time / speed) between the ships all over the map (the ships leave the map in this pattern and would also reappear).
In short: If the dock has too high load, new ships skip, lowering the load. If the dock has too low load, new ships are delayed, raising the load. Flow control.
Best is medium load (1 or 2 ships at the dock) with a continous stream of ships from the entry to the dock, anchoring and being serviced just in time before provoking a Nerdicus gap or skipping (which may be manipulated (if really necessary) by offering additional goods to delay or denying ordinary goods to speed up - heavy micro management). It may help somewhat in the beginning to not open multiple water trade routes at the same time.

The same rules apply to two or more docks and things get fairly complicated (to observe); nevertheless there are additional rules:
1) Ships try to visit all docks one time on every trip independent from the amount of goods already traded.
2) When ships are generated at the entry or leave a dock, their next destination is decided and never changed "in transit"; default is the sequence the docks are built. Eg. first dock A, then dock B. This may be out of sequence, when for example at generation time dock A holds 3 or more ships (ie. is skipped) and the ship sails to B and trades. When the ship is finished with dock B, it will decide to head to the missing dock A and try to trade (if this dock holds now less than 3 ships) or not to visit dock A on this trip (ie. skip again) if it still or again holds 3 or more ships.
3) The hammer: When a dock has dispatched a ship, it calls in another (any other, no fifo) ship from any queue of anchoring ships (regardless of the distance the selected ship has to travel). I think this is a design oversight or illegal programming shortcut. The consequences are clear: multiple docks may be disconnected or not, may be on different or the same sides of the Nile, trade the same or different materials/goods, whatever they want. Their anchorages should be as near as possible. Otherwise the ships not only have to travel longer distances, but also when the ships arrive they are out of sync: They travel to docks expected to be empty, when they arrive, the docks are overcrowded. They skip docks expected to be full, the time they would arrive, the docks would be empty. -> transit is never regarded. A positive aspect of this is, that the Nerdicus gap applies only when the common pool of anchoring ships depletes.
Assertion 1: Far away from the entry multiple well designed docks work better than a single well designed dock.
The consequences of case 1 and 2 are much milder:
- Docks should be efficient to minimize skipping.
- Docks should be build from the entry to the exit of the water trade routes as this is the default sequence of visits to minimize zigzag.
- When the ships arrive at the first dock, they tend to remain longer as at the subsequent docks where they have left less to trade. To avoid that the first dock is skipped more than others, it should be especially efficient and/or trade only a limited variety of materials/goods.
Assertion 2: "Visiting all docks" and "skipping" problems with multiple docks can be handled.

Any contrary observations, opinions?
All comments, critics, suggestions, reports of errors and/or omissions appreciated.

posted 03-28-04 14:47 ET (US)     19 / 23  
For some reason, I didn't thoroughly read civilis's last reply (#18) when it was posted, and therefore missed his observation B). Recently, I observed that behavior myself, realized how important it was, checked the relevant threads, and saw that it had been described over 2.5 years ago. I'll restate the observation and discuss its importance.

But first, let me mention that the description in civilis's post is not completely accurate, in that it initially ignores "dock reservations" and then later tries to fit in consequences of "dock reservations". A more accurate description would combine civilis's algorithm with Nerdicus's algorithm that is described in reply #22 of the Dock optimization thread. Another point is that many people (including me) have observed ships going to only 1 out of 2 docks when there aren't ships waiting at the skipped dock--I have no explanation for this behavior, other than to suggest that the algorithm for multiple docks is more complicated than civilis or Nerdicus assumed (or that there is a fairly common bug with multiple docks).

I'll restate civilis's observation like this: when a ship is trading at a dock and 2 other ships occupy the usual "waiting" spots, another ship will not start heading for that dock. This means that if each dock in a city has 3 ships in the usual locations, then a new trade ship that appears will simply sail home. (People playing without Cleopatra are unlikely to see a new trade ship sail home, since all trade ships exit at the ship entry point. With Cleopatra, trade ships exit at the ship exit point, which may be close to or far from the entry point.)

This makes dock efficiency even more important. In Cleopatra, I ran my Baki and my On (which each has 4 open water trade routes and 1 fairly efficient dock that is close to the ship entry point) for over a year each, and all trade ships went to the dock. I was lucky, since if the timing had been slightly different then some ships would have skipped the dock, but the fast ship turn-around clearly helped to avoid the problem.

This also makes selecting water trade routes important. In Baki, a 5th water trade route (Itjtawy) might have been useful if the city had been designed differently, and a 6th (Tyre) could have been opened "just for fun", but opening more water trade routes would have significantly increased the probability of ships skipping the dock.

Finally, in some situations that have several water trade routes where it is important to trade close to the maximum with every ship that comes from one of the cities, multiple docks (that are highly efficient, connected, and close together) will be useful. Even though multiple docks will probably increase the time that a ship spends on the map, making sure that every ship trades may be more important. (Multiple docks are especially useful when docks are not efficient, but we already knew that.)

[This message has been edited by Brugle (edited 03-28-2004 @ 02:58 PM).]

posted 04-07-04 07:42 ET (US)     20 / 23  
Hi Brugle,
doesn't it say "Ends well is All well"?

Of course I knew the great works of Merepatra & Nerdicus regarding disconnected/multiple docks 2.5 years ago ...
... but unfortunatelly some instant knowledge somehow dissipated from my brain somehow.

You write, my post 'initially ignores "dock reservations"' ...

I can't figure out, what you mean -- isn't it that what I call "Nerdicus registration gap" in case C). ???

---

Maybe I'm missing@the moment some major aspects & it's the best you make the synthesis of "civilis's algorithm with Nerdicus's algorithm", as I would have now to 'reload' a lot of the latter.

posted 04-07-04 18:30 ET (US)     21 / 23  
Hi civilis,

I expressed my thoughts badly, and apologize. I'll try to explain.

"Dock reservations" are the cause of "Nerdicus registration gaps". Your post discusses the consequences, but a reader who didn't know about "dock reservations" wouldn't know why "Nerdicus registration gaps" occur or which ships would be affected. For example, say a ship enters the map when no other ships are present and then another ship enters the map before the first ship gets to the dock. Reading your post, each ship (when it enters the map) is your case C), so a reader might (incorrectly) think that the first ship (which is "in transit" when the second ship enters the map) would wait for the second ship to dock.

Also, "Nerdicus registration gaps" can also occur with your case A). If a ship enters the map just as a trade ship is leaving the dock where other ships are waiting, then it may "reserve" the dock, causing the waiting ships to wait even longer. This doesn't occur often (since the timing has to be "just right"), but I've seen it happen several times. Thinking about "dock reservations" reveals that this is a possibility.

To me, these examples show that it is much easier to understand ship behavior by explaining one aspect of that behavior in terms of "dock reservations" rather than simply describing "Nerdicus registration gaps". That's the logic behind my poor choice of words.

(This discussion reminds me of how evolution by natural selection can be understood more easily by thinking in terms of genes instead of organisms. Of course, there are many problems which become much easier to solve when thought about in a different way.)

posted 04-13-04 10:14 ET (US)     22 / 23  
Hi Brugle,
thank you for pointing out some very unprecise constructions. Of course the gap IS not the registration/reservation: The gap IS CAUSED BY the registration (phenotype/genotype). I truely want to apologize for expressing my findings so rotten above, and my only excuse is that I wanted to keep post #18 small (besides the aspect that I should have studied the english language with more energy a lot of years ago). Sorry.

In this post should be an introducing note, that *many* water trade routes are described [necessary to generate enough (over)load for the dock(s)] and the ships entry isn't too close to their exit (requires Cleopatra) or at least those points are not close to the dock(s).
Also, in general, no starting conditions are discussed, ie. the docks described are fully operational, the water trade routes are already open long enough and active, no water trade problems occured recently etc. This means only the "on wing condition" under those premises above is described, ie. in effect there are always more than 3 ships "in transit".

Case C) should be rephrased like this:
[When a ship is generated and enters the map and there is/are at this time]
C) 0 ship at the dock (un/loading or anchoring), then the new ship **reserves the dock and** sails to the dock and gets **there, as a result of the reservation,** immediately the call in by the dock to be serviced and tries to trade. Again ships "in transit" (in this case already nearer to the dock) are disregarded **and not serviced because of the reservation**, so there ##may be##**are** such ships already waiting at the dock when the new ship arrives. I call **the result of** this questionable behaviour "Nerdicus registration gap". Questionable because the continous dispatch of ships is interrupted [...]

Your other example I would like to insert as (exception) case D):
[When a ship is generated and enters the map and there is/are at this time]
D) just a ship leaving the dock where 1 or 2(more?) ships are anchoring and before any one of the anchoring ships can "reserve" the dock, then the new ship may "reserve" the dock instead of any one of the anchoring ships, causing the waiting ships to wait even longer: the "Nerdicus registration gap" of serviced ships described in case C).

posted 04-25-04 09:24 ET (US)     23 / 23  
"Nerdicus registration gap" is short for "gap in the continous sequence of ships dispatched by a dock, caused by the dock registration/reservation aspect of ship behaviour, described in great detail by Nerdicus in his 'Dock optimization' thread, which in short means, that in a dock always a ship is registered, which is currently or next to be served by this dock (including pointer to the generic NIL_SHIP) as well as that there is always a ship, which has reserved a dock for its service and thus excluding all other ships from service by this dock".

Brugle, in respect to you post #19, I want to add, that I agree with ALL but one small aspect of your statements; especially I'd like to emphasize the importance of limiting the number of open trade routes, when having problems with water trade: To let the least necessary water trade routes unopened, is the most elegant way of avoiding trouble, if the dock(s) start to become overloaded. Nevertheless two (efficient) docks can handle the trade from 10 or more trade routes. So dock efficiency is the key to big scale water trade: "An efficient dock doesn't allow its dockers to go very far."
Unfortunately the game supports not the ability for the player to close a trade route, which seems not to be useful, like a trade route can be opened: A new start with a new concept of trade routes must be exercised (If anybody wants to create a tool, which closes trade routes, I can provide the necessary information).

In the following I discuss the connection of docks only from a efficiency point of view. Also the focus lies on a big city with many trade routes exchanging a lot of (different) materials/goods ...

Often dock areas should be disconnected from the rest of the city - what is somehow unaesthetical, but as implemented, the quickest CP transport mode [GET] is NOT via road, but using shortcuts abroad.
Another benefit of segmenting the whole road system into several smaller road systems is, that the CPs using the normal transport mechanisms can't leave them - thus avoiding especially the dock CPs crossing the whole map eg. for fetching papyrus from a SY, which is part of a production designed to support a rich housing block there, while ignoring a nearby SY, which is part of a production designed to export papyrus via the dock.
On the other hand, if there is only one SY holding a particular material/good from the docks point of view and this SY can be filled easily with the normal transport mechanisms, it clearly shouldn't be disconnected, because normally the GET-capacity of the inner SYs of a disconnected dock is very limited & shouldn't be wasted.

Wether multiple docks shall be dis/connected with each other depends on several things. Most important is what (ie. how many SYs are holding how many different materials/goods) a dock can "see" via connected roads. The more (different) materials/goods are seen, the (significantly!) longer lasts the decision to which SYs the dockers shall go and the longer (at least potentially) are resulting walks. And the ships want to visit the other dock(s) anyway; in connected case they don't remember, that they have just considered those same SYs&contents already from the other dock, they even ignore that they may be completely done with trading.
I recommend, that multiple docks should only be connected with each other in special cases, eg. a doubledock with two docks sitting side by side and sharing their associated SYs (what comparably strong limits the number of SYs, but also reduces the problem above).
For quick behaviour, I think, usually two docks should be disconnected from each other (more info about a working example of two docks, which can easily be dis/connected in surf10yr.txt, which is part of #200 in the scenario download section).

Quote:

All industries which use imported raw materials are disconnected from the docks; all other industry is connected.
When operating normally, the both docks are disconnected from each other at the ferry across the river, ie. the dockCPs take into consideration only the materials/goods stored on their own side of the river and undertake therefore only relative short walks leading to quickly dispatched ships.
Sometimes (eg. when the docks threaten to run out of anchoring & waiting ships, what would provoke in turn the dreaded "Nerdicus registration gap": The dock waits for the arrival of the next ship entering the map ignoring all ships already on their way to the dock) it is useful to be able to reduce considerably the speed of the docks. This can be done by laying down the connecting roadtile beneath the southern ferry. Now the dockCPs take into consideration also the materials/goods stored on the other side of the river (which takes more time) & undertake also long walks to the other side (which takes a lot more time) leading to snailly dispatched ships.


Finally, multiple docks are not only useful for making sure that every ship trades, but also in situations when the raw throughput of water trade has to be increased beyond that what one single (efficient) dock can perform.

[This message has been edited by civilis (edited 04-25-2004 @ 10:41 AM).]

Caesar IV Heaven » Forums » Pharaoh: Game Help » Dock optimation summary
Top
You must be logged in to post messages.
Please login or register
Hop to: