The International Simutrans Forum

Community => Simutrans Gaming Discussion => Topic started by: DCF on August 16, 2009, 03:23:06 PM

Title: Experiment by a newbie - one source, two consumers contracted (long read)
Post by: DCF on August 16, 2009, 03:23:06 PM
I'll keep introductions short as this is a long read  ;D

I've discovered SimuTrans a few weeks ago and love the complexity of the game and the freedom the player has while creating, well, anything.. As a new player, I do lots and lots of experiments to understand the consequence of certain actions in SimuTrans and the following post is about an experiment that adresses one of the things that bugs me the most so far: contracts between source and consumer and the way goods are transported between them.

As an experienced lurker, sporadic poster and non-native speaker (or writer?), this will probably be a one post wonder - so probably no long-winded and eloquent replies from myself. So enjoy the read!

I've read the wiki's, the starter guide, the reference manual and most of the simutrans-tips.com but have not found anything particulary helpful on the following problems (but I might be blind).
If any of this has been discussed (thoroughly) in another thread, I've missed it..



The experiment

102.0 with pak128

rules:
- one fish trawler, one train
- 100% load for both
- continuous loops
- start when:
(1) Fishery storage is full towards Cannery and
(2) then Food Factory is connected to the transport line.

(http://img8.imageshack.us/img8/3852/simscr01.png) (http://img8.imageshack.us/img8/3852/simscr01.png)
Measure point 1 - (starting point)
   - Both factories (food and cannery) contracted to Fishery
   - Both factories virtually equal distance to Fishery (bird's flight, not transport route)
   - Food factory is one square closer to Fishery when counting squares from the top left corners of all buildings (the 'build square')
   - Only Cannery is connected

Measure point 2 - simscr02 (http://img8.imageshack.us/img8/7233/simscr02.png) - (connect food factory)
   - Food Factory connected to line by adding platform, start of trawler (and train)
   - Observation: on the first three trips the trawler only takes goods onboard for the Cannery while the storage in the Fishery lists the following amounts towards the Food Factory (0 tonnes on the first trip, 13 tonnes on the second trip, 102 (!) tonnes on the third trip)

Measure point 3 - simscr03 (http://img188.imageshack.us/img188/7574/simscr03.png) - (first transport of fish, fourth trawler trip)
   - The first fish for the Food Factory has been loaded onto the fish trawler. 17 tonnes of the available 102 tonnes, while all available fish towards the Cannery has been taken aboard (73 tonnes)
   - It has taken 16 hours and 20 min* for the first load onboard the fish trawler towards the Food Factory to occur..
   - The train DOES take the first possible 17 tonnes load towards the Food Factory and leaves 30 tonnes towards the Cannery at the platform..
   - First load to arrive at the Food Factory after 20 hours and 50 min*, almost a month..

* note: these times COULD (not should, since the same situation can occur ingame) be offset by one trip of the trawler since it could not possibly take fish onboard towards the food factory on its first trip. One trip of the trawler takes 5 hours and 20 min.

Measure point 4 - simscr04 (http://img188.imageshack.us/img188/1694/simscr04.png)  - (fifth trawler trip)
   - Suddenly the trawler takes all available fish towards the Food Factory onboard, 85 tonnes vs. 5 of 70 tonnes available towards the Cannery
   - On arrival of the trawler, the train takes 49 of 49 available tonnes towards the Cannery and 35 of 61 available tonnes towards the Food Factory

Measure point 5 - no screenshot - (long term observations)
   - after three months : Food Factory fish stocks 379, Cannery fish stocks 713
   - after one year       : Food Factory fish stocks 992, Cannery fish stocks 1528
   - Observation: the Fishery cannot keep up with the trawler so it has to wait at the Fishery untill fully loaded. It takes all new fish on board immediately and the Fishery stocks are empty so it produces 10 tonnes of fish FOR THE FIRST CONTRACTEE IN ITS LIST: the Cannery. These 10 tonnes of fish are loaded onto the trawler and the process repeats. Now NO NEW FISH IS PRODUCED FOR THE SECOND CONTRACTEE.
   - Sadly, at this point the simulation ground to a halt as the Fishery did no longer produce anything... bug/glitch after a year of fast-forwarding I guess...
        [EDIT: As Severous pointed out, the fish stocks were full at both factories - so no bugs/glitches, just sleepiness on my part.]

My conclusions and thoughts

While in this small scale experiment the time for the first goods to arrive at the second connected destination (Food Factory) was almost a month, it might take exponentially longer on a larger scale and a more complex network (Imagine a 256x256 map with the fishery in the top left corner, the dock in the lower left corner and the factories somewhere inland to the right with rail crossings and stops all the way there).
Also, the problems get progressively worse when goods have to make multiple stops along the way. Any place where the goods are collected, the strange disparity regarding how many goods are picked up for each consumer might occur again.

A player might think to offset the intial delay when adding a consumer to the line by making 'conveyor belt lines' where the next transport is always waiting to be filled at all stops. That player would run into the following problems:
- First, the source WILL be depleted in this setup after which it will only produce for the first contratee
- Second, these lines will be so full of transports that they become useless to other traffic OR cannot be hindered by other traffic because the conveyor belt will fail (in my opinion this would take out most fun of the game; making complex networks with shared traffic lines)

On the downside, NOT having a conveyor belt line when connecting two consumers to one source will probably (up to a point of certainty) result in a shortage of goods at ONE OF the consumers at the end of the line due to the disparity in pickup amount for end consumers.


Sooooo, contracts... Why not make all goods available to all possible consumers of that good? (no crossconnect_factories=1 because this would behave in the exact same way as the example) I'll give a short (and certainly incomplete) list of pro's and con's.

The losses:
- Transports could no longer take a certain amount of one type of goods from their pickup stop to deliver at multiple consumers of that good along the way if they have multiple stops for those consumers (UNLESS there would be a MAX DROPOFF choice at stops when creating lines)
- In the real world, a producer probably has contracts with consumers.

The gains:
- The player would have more choice when building his network (any source/consumer pair connects)
- The player would have a more clear understanding of what is happening with all goods (just certain amounts of goods, not certain amounts of goods that NEED to go to certain places). Where they go is dependant of the player's transport network.
- Efficiency of the transport of goods is dependant on the network instead of arbitrary amounts of goods produced / transported.
- It would open up the possibility to make true storage stops/stations where goods of a certain type(s) are collected to be sent along later to the consumers. When there is a stockpile, a new consumer can be sought.
- In the real world, a producer might have contracts but might decide to sell his goods to the first consumer he meets ('time is money').


And, last but not least, some general thoughts of a new player.
In this very simple experimental setup, the number of observations I had to make before I could come to any kind of conclusion demonstrates the somewhat untransparent nature of the game. While complexity is fine, untransparentness will cost potential players. A game manual that explains the underlying methods the game uses in these situations would help BUT - that said - a game manual alone might not be enough to take away the frustrations caused by the given example if a player cannot ACTUALLY SOLVE the situation.



That's it! I Hope this was food for thought and didn't bore you good people to death  ;)
DCF
Title: Re: Experiment by a newbie - one source, two consumers contracted (long read)
Post by: Severous on August 16, 2009, 05:14:16 PM
Hello DCF

That's some first post.  How long did it take to put it together?  Must have been quite a while.

My thought is the fishery stopped producing fish destined for the cannery because the cannery was full of fish. The cannery effectively stopped demanding fish.

Ive never played with those industries in any game but I assume the cannery needs Steel and Fish (or Steel and Meat) in order to produce canned food.  As no Steel was supplied the fish stocks at the cannery went over 1500 so no new fish supplies were 'caught' for the cannery. All catches were for the Food Factory (any already in transit for the cannery were ok).

Does that fit with your experiment?

Ive had incomplete industry chains often. Had your experiment been in my game I would have delivered fish to the cannery as slowly as possible and made sure the 1500 storage limit was not exceeded. Fish for the cannery would have been deliberately piled up somewhere en-route until the industry chain could be completed.

PS..Welcome.
Title: Re: Experiment by a newbie - one source, two consumers contracted (long read)
Post by: DCF on August 16, 2009, 06:37:09 PM
Severous, that´s a great observation - of course the fish stocks were full at both factories.. I must have dozed off towards the end there ;) So, no bug and I'll edit to reflect that for the new readers.
The Cannery needs Fish, Meat and Steel - The Food Factory needs Fish, Meat and Flour.. So both filled up and production stopped at the Fishery while I was happily fast-forwarding another year.

Nonetheless - and this might be why my attention slipped towards the end - the experiment was mostly designed to see (1) the flow of goods when a single source starts supplying to a second consumer/contractee after having a working chain in place for the first consumer/contractee and (2) the quantities loaded by subsequent transports in that phase. I think some of the problems found are still valid but I'll have to run a new experiment to see the long-term effects because it might be that the quantities loaded by each transport would get more balanced over time..

Probably no new experiment tonight, though  :P

Because indeed, it did take some time to put together - but that's allright. I write a lot of stuff down to get a more clear view of all factors involved anyway when I start to feel I don't understand part of the game because it can get very complex at times..